Падает Firebird (Abnormal Termination)
Добавлено: 22 мар 2006, 19:42
Помогите разобраться в следующей ситуации.
Есть тестовая программа на Java, работающая с тестовой базой данных.
База данных состоит из одной таблицы (TEST_TABLE). В таблице два поля: TST_ID (integer) и TST_TEXT(varchar[255]). В таблице одна запись.
Программа в цикле делает следующее:
1. select * from TEST_TABLE и проход по всем записям (1 шт.);
2. добавляет одну новую запись;
3. изменяет текст в добавленной записи;
4. удаляет эту запись.
Число повторов цикла 10 000. После каждого 100-го прохода - commit (AutoCommit = false).
Проблема.
На проходе № 4094 (не больше не меньше !) возникает исключительная ситуация с сообщением:
org.firebirdsql.jdbc.FBSQLException: GDS Exception. 335544327. invalid request handle
Программа проверялась на Windows 2000, Firebird 2.0 Beta 2 (не помню Classic или Super Server) и Alt Linux Master 2.4, Firebird 1.5.3.4870 SuperServer. В обоих случаях использовался JayBird 2.0.1, jre 1.5.06
Ситуация в обоих случаях ПОЛНОСТЬЮ идентична - исключение на 4094-м проходе.
В некоторых случаях (не понятно в каких) под Windows программа отрабатывала до конца, но при повторных запусках (до 5-ти раз) все возвращалась на круги своя.
Строка подключения к БД по умолчанию: оdbc:firebirdsql:localhost:test.fdb
test.fdb - алиас.
Другую строку подключения можно передать в качестве параметра.
Буду благодарен за любые комментарии.
Программу с исходным текстом и скриптом для создания БД можно взять тут: http://192.168.1.203/firebird_test/FirebirdTest.zip.
(Компилировал программу в Netbeans 5.0)
Есть тестовая программа на Java, работающая с тестовой базой данных.
База данных состоит из одной таблицы (TEST_TABLE). В таблице два поля: TST_ID (integer) и TST_TEXT(varchar[255]). В таблице одна запись.
Программа в цикле делает следующее:
1. select * from TEST_TABLE и проход по всем записям (1 шт.);
2. добавляет одну новую запись;
3. изменяет текст в добавленной записи;
4. удаляет эту запись.
Число повторов цикла 10 000. После каждого 100-го прохода - commit (AutoCommit = false).
Проблема.
На проходе № 4094 (не больше не меньше !) возникает исключительная ситуация с сообщением:
org.firebirdsql.jdbc.FBSQLException: GDS Exception. 335544327. invalid request handle
Программа проверялась на Windows 2000, Firebird 2.0 Beta 2 (не помню Classic или Super Server) и Alt Linux Master 2.4, Firebird 1.5.3.4870 SuperServer. В обоих случаях использовался JayBird 2.0.1, jre 1.5.06
Ситуация в обоих случаях ПОЛНОСТЬЮ идентична - исключение на 4094-м проходе.
В некоторых случаях (не понятно в каких) под Windows программа отрабатывала до конца, но при повторных запусках (до 5-ти раз) все возвращалась на круги своя.
Строка подключения к БД по умолчанию: оdbc:firebirdsql:localhost:test.fdb
test.fdb - алиас.
Другую строку подключения можно передать в качестве параметра.
Буду благодарен за любые комментарии.
Программу с исходным текстом и скриптом для создания БД можно взять тут: http://192.168.1.203/firebird_test/FirebirdTest.zip.
(Компилировал программу в Netbeans 5.0)