|
|
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
Попробую спросить здесь. Ситуация: утром включается сервер. На сервере стартует IB XE3 x64 (WI-V11.0.2.540) и моя служба. У службы стоит зависимость от Interbase. Служба по старту создает отдельный поток для слушания событий БД. В момент подключения к базе отгребаю ошибку Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. После перезапуска моей службы - ошибки нет. После перезапуска всего сервера ошибки нет (это самое непонятное). Все коннекты проходят через критическую секцию. Кроме Sleep перед коннектом кто-нибудь может, что-нибудь посоветовать? С уважением, Vasilisk ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2014, 16:04 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
У Interbase зависимость от TCP/IP прописана? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2014, 22:11 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovУ Interbase зависимость от TCP/IP прописана?Нет. Вот так прямо из-за этого валиться в AV на клиенте? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2014, 23:26 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_Вот так прямо из-за этого валиться в AV на клиенте?Ну проверить-то эту версию можно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2014, 23:41 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovНу проверить-то эту версию можно?Можно, конечно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2014, 23:50 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, При остановленной службе tcpip получаю такую ошибку Код: sql 1. 2. 3. так, что предположение было неверным ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2014, 19:56 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_Служба по старту создает отдельный поток для слушания событий БД. В момент подключения к базе отгребаю ошибку - коннект к базе происходит в основном потоке, или "отдельном"? - асинхронные события в компонентах и так доп. тредом обрабатываются, что дает ряд проблем. - сервис будет постоянно висеть "на связи с базой", и постоянно что то слушать? Нехорошо это. Лучше бы ты сделал коннект-работа-дисконнект, не чаще раза в минуту. "Роботы", которые висят на коннекте, являются самой частой причиной длительных транзакций, препятствующих сборке мусора. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2014, 20:33 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_так, что предположение было невернымЯ, вообще-то, предлагал установить зависимости для службы Interbase. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2014, 21:40 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
kdvконнект к базе происходит в основном потоке, или "отдельном"?В отдельном. Все коннекты к базе происходят через критическую секцию kdvасинхронные события в компонентах и так доп. тредом обрабатываютсяКласс по работе с событиями я полностью переписал. Почему я вызываю обработчик не в том потоке, где вызывается callback я не помню, но какие-то основания были. И весьма веские. kdvсервис будет постоянно висеть "на связи с базой", и постоянно что то слушать?Да kdv"Роботы", которые висят на коннекте, являются самой частой причиной длительных транзакций, препятствующих сборке мусора.Во-первых он висит на read транзакции, а во-вторых - как он может мешать сборке мусора, если он не обращается ни к каким данным, а просто слушает события? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2014, 22:54 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_а во-вторых - как он может мешать сборке мусора, если он не обращается ни к каким данным, а просто слушает события? "мешать сборке мусора" может простая транзакция, которая долго длится и не обращается ни каким данным. к read read_committed это не относится, разумеется. Но сама идея что "транзакция мешает ... обращаясь к данным" - похожа на новый миф :-) пошел оффтоп, но я бы посоветовал "в роботе" без надобности транзакций не стартовать, никаких, и особенно проверить, что они действительно не стартуют, потому что в компонентах это может быть скрыто. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2014, 23:21 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
kdvНо сама идея что "транзакция мешает ... обращаясь к данным" - похожа на новый миф :-)Значит я таки криво прочитал доку. kdvя бы посоветовал "в роботе" без надобности транзакций не стартоватьТак и есть. В нем только эта транзакциия и это соединение "вечные". Остальные коннекты стартуют по мере надобности. Но вопрос не о том. Тут идея появилась, а, что если взять исходники fbclient и посмотреть, что там происходить в isc_attach_database и какая проблема может быть в isc__start_thread? Или FB и IB уже сильно разбежались и это бесперспективно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2014, 23:30 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_Или FB и IB уже сильно разбежались и это бесперспективно? Именно так. В FB столько фиксилось как раз в районе событий, что ожидать совпадения исходников можно только в одном случае: они тупо передирают наше дерево. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2014, 23:37 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_Служба по старту создает отдельный поток для слушания событий БД. Ищи гонки потоков, приводящие к обращению к методам ещё не созданной TIBDatabase. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2014, 23:50 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_ , Проверять наличие службы IB не пробовал? Sleep c какой задержкой помогает? И попробуй подключаться без event-ов. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2014, 00:16 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovВ FB столько фиксилось как раз в районе событийУ меня до событий дело не доходит. Отваливается сам коннект. Dimitry SibiryakovИщи гонки потоков, приводящие к обращению к методам ещё не созданной TIBDatabase.Текущий алгоритм работы 1. По старту сервиса, стартуем новый поток 2. В созданном потоке создаем TIBDatabase 3. Указываем имя базы 4. Подключаемся к базе 5. Запускаем слушание событий. Проблема у меня в 4 пункте Гаджимурадов РустамПроверять наличие службы IB не пробовал?Не понял. В смысле проверять запущена ли она? Так зависимость же стоит Гаджимурадов РустамSleep c какой задержкой помогает?Sleep еще не пробовал. Из-за того, что ошибка нестабильна. Завтра запущу тест с циклической перезагрузкой сервера и там уже буду экспериментировать Гаджимурадов РустамИ попробуй подключаться без event-ов.У меня вначале коннект, потом event'ы. Коннект не проходит. Никакие event'ы не запускаются ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2014, 00:29 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
Да забей ты на потоки и на транзакции, не в них дело. _Vasilisk_> Не понял. В смысле проверять запущена ли она? Так зависимость же стоит Ну мало ли что там не так со службами, сетевой подсистемой, задержками и пр. Просто проверь, есть ли сервер в процессах. > У меня вначале коннект, потом event'ы. Коннект не проходит. > Никакие event'ы не запускаются Да, это я стормозил, подписка не сразу. Сорри. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2014, 01:19 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_3. Указываем имя базы Протокол какой? Локальный у IB работает хреновенько... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2014, 01:38 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovПротокол какой?TCP ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2014, 02:58 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_IB XE3 x64 (WI-V11.0.2.540) я вот что подумал - это ведь Update 2, причем билд должен быть не 540, а 541 и есть еще Update 3 - 11.03.665 Update 4 - 11.0.4.817 может, стоит просто сделать апдейт? правда, в resolved defects я ничего такого не вижу http://docs.embarcadero.com/products/interbase/IBXE3Update4/Readme.html#new00E ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2014, 03:17 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
Решил ничего не делать, а вначале добиться стабильного повторения ошибки. Написал две службы (х32 и х64), которые по старту коннектятся к серверу, пишут информацию в лог и завершаются. Поставил циклическую перезагрузку всего сервера и стал ждать. Было произведено 25 перезагрузок, за это время ошибка появилась только один раз. Но - появилась она только в рабочей службе. Тестовые отработали без ошибок. А теперь логи Тестовая служба Код: sql 1. 2. 3. 4. 5. 6. Рабочая служба Код: sql 1. 2. 3. Как видно из логов - тестовая служба запустилась раньше и смогла подключиться к серверу. А еще меня напрягает, что попытка соединения происходила целых 6 секунд Отличия - тестовая служба напрямую работает с TIBDataBase, а рабочая создает СОМ-объект и уже в этом объекте идет работа с TIBDataBase. Сейчас перепишу тест на использование моего СОМ-объекта. По крайней мере предположение о зависимости интербейза от службы tcpip отпало окончательно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2014, 16:47 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_рабочая создает СОМ-объект и уже в этом объекте идет работа с TIBDataBase. Ну ты, блин, извращенец... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2014, 18:51 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovНу ты, блин, извращенец...Аналог трехзвенки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2014, 19:22 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_Аналог трехзвенкиИ что этот "аналог" упрощает??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2014, 19:49 |
|
||
|
isc_attach_database access violation
|
|||
|---|---|---|---|
|
#18+
Что-то больно мудрёно: СОМ-объект в отдельном потоке... наивно навскидку: с coinitialze все в поряде? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2014, 03:45 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38681378&tid=1563495]: |
0ms |
get settings: |
7ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
188ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 523ms |

| 0 / 0 |
