Установлена ОС Mandriva 2009 x64, 9Гб оперативки, винты 160Гб.
До этого стоял *FirebirdSS-2.5.0.25946-ReleaseCandidate3.amd64* конструкция
отваливает все залипшие коннекты из текущей БД, а далее и в цикле из всех
архивов. Работало безупречно:
>>>
in AUTONOMOUS TRANSACTION
do delete from MON$ATTACHMENTS where
MON$ATTACHMENTS.MON$ATTACHMENT_ID<>CURRENT_CONNECTION;
--
for
select a_path from DYN_PATH_NAME_ARCH(null, 199901, 201110)
into :PATH
do begin
IN AUTONOMOUS TRANSACTION
DO BEGIN
EXECUTE STATEMENT ('delete from MON$ATTACHMENTS'
||' where MON$ATTACHMENTS.MON$ATTACHMENT_ID<>CURRENT_CONNECTION')
ON EXTERNAL :PATH AS USER 'SYSDBA' PASSWORD :PASS;
END
end
>>>
После установки *FirebirdSS-2.5.1.26351-0.amd64*, такая конструкция валит
сервер наглухо. Приложения выполняющее этот запрос висит не реагируя. Не
помогает service firebird restart, а также stop/start. Зависшего процесса не
замечено. В логе firebird.log лишь несколько строк об ошибках с номерами и
стопа, запуска, перезапуска:
/ INET/inet_error: read errno = 104
/opt/firebird/bin/fbguard: /opt/firebird/bin/fbserver terminated
abnormally
(-1)
/opt/firebird/bin/fbguard: guardian starting /opt/firebird/bin/fbserver
INET/inet_error: bind errno = 98
/opt/firebird/bin/fbguard: /opt/firebird/bin/fbserver terminated due to
startup error (2)
INET/inet_error: read errno = 9
INET/inet_error: read errno = 104
/, и т.п.
Сама ось не висит. Только после перезагрузки оси роботоспособность
восстанавливается. Как вы понимаете это крайняя мера и не допустима. Это уже
второй раз так случается и прослеживается закономерность.
Вопрос к разработчикам что происходит. Если конструкция с
"MON$ATTACHMENTS.MON$ATTACHMENT_ID" больше не работает, то подскажите как
теперь без последствий отключать непослушные коннекты?
--
View this message in context:
http://firebird.1100200.n4.nabble.com/delete-from-MON-ATTACHMENTS-where-MON-ATTACHMENTS-MON-ATTACHMENT-ID-CURRENT-CONNECTION-tp4145993p4145993.html
Sent from the firebird-russian mailing list archive at Nabble.com.