> ALTER PACKAGE blah COMPILE;
(wait about 10 minutes)
> ORA-04021: timeout occurred while waiting to lock object
Rozumiem, dlaczego pojawia się błąd przekroczenia limitu czasu (pakiet jest używany).Czy domyślny limit czasu blokady Oracle obiektu może zostać zmieniony?
Czy ktoś wie, czy istnieje sposób na zmianę domyślnego interwału oczekiwania na 10 minut? Czy można to skonfigurować na poziomie bazy danych/sesji/instrukcji?
Dzięki
Dzięki. Szkoda, że nie ma 10g. – cagcowboy
to faktycznie nie działa dla mnie .. czy próbowałeś tego? Zrobiłem 'alter session set ddl_lock_timeout = 5;' następnie 'alter package xxx compile;' ale nadal czekałem kilka minut – ShoeLace
@ShoeLace Myślę, że zmieni to zachowanie tylko wtedy, gdy czekasz na DML, na przykład próbując upuścić tabelę podczas gdy ktoś ma niezapowiedzianą transakcję na wierszach tej tabeli (gdzie domyślnym zachowaniem jest natychmiastowe zgłoszenie błędu). Prawdopodobnie nie będzie działać podczas wymiany aktualnie używanego pakietu (domyślnym zachowaniem jest oczekiwanie, aż pakiet nie będzie już używany). –