ORA-04021
Timeout esperando lock de objeto (library cache)
O que significa
DDL/compilação esperou pin/lock de um objeto em uso contínuo (pacote executando, sessão presa) e desistiu.
Ação imediata
Descubra quem segura o objeto antes de reexecutar o DDL.
Como diagnosticar somente leitura — seguro de executar
DBA_DDL_LOCKS / V$ACCESS pelo objeto; sessões executando o pacote: V$SESSION+V$SQL.
Correção definitiva
Janela para o DDL, matar sessões presas, ou EBR (edition-based) para deploy sem parada.
Como prevenir
Deploys de PL/SQL fora do pico; timeout maior via DDL_LOCK_TIMEOUT quando fizer sentido.