Problem with an exception at the precipice of connection

Discussion of open issues, suggestions and bugs regarding PgDAC (PostgreSQL Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
Lord_Voodoo
Posts: 3
Joined: Thu 09 Sep 2010 10:06

Problem with an exception at the precipice of connection

Post by Lord_Voodoo » Thu 09 Sep 2010 10:09

ОС: XP SP2 x86
версия PgDAC: 1.20.0.13

Пару раз сталкивался с загадочным падением проги, решил отловить баг:
запустил прогу, она подняла соединение... зашел в админскую консоль и принудительно оборвал соединение... в программе возникается исключение "terminating connection due to administrator command", что был получен сигнал об обрыве сообщения, за ним следуют два подряд "Socket error on write. WSAGetLastError return 10053($2745)", ну а потом уже EAccessVioletion, который уже и убивает приложение... пробовал использовать событие OnError, но что-то ума не приложу, как там рулить... исключение явно исходит из внутренностей пакета компонентов, причем вообще отказывается отлавливаться... никто не сталкивался с такой проблемой?
и еще - если бы только такое издевательство приводило к падению проги, я бы может смирился, но вчера обнаружил, что программа умирает не только из-за такого обрыва соединения. сервер глюканул - у него умерли за минуту все сетевые сервисы и прога точно также благополучно умерла, что посоветуте?
Last edited by Lord_Voodoo on Thu 09 Sep 2010 15:54, edited 1 time in total.

Lord_Voodoo
Posts: 3
Joined: Thu 09 Sep 2010 10:06

Post by Lord_Voodoo » Thu 09 Sep 2010 15:53

Attempt of translation:
Pair of one times ran into the enigmatic falling of the program, decided to catch bag: program started, it heaved up connection... called at an admin console and forcedly tore off connection... there is an exception of "Terminating connection due to administrator command" in the program, that a signal was got about the precipice of report, after him follow two in succession "Socket error on write. Wsagetlasterror return 10053($2745)", well and then already Eaccessvioletion, which already and kills an application... tried to use the event of Onerror, but something will not attach a mind, how there to taxi... an exception obviously comes from the entrails of package of components, thus in general renounces to be intercepted... did nobody run into such problem? and yet - only if such mockery resulted in falling of program, I can reconciled oneself to, but discovered yesterday, that the program died not only from such precipice of connection. server fall down - for him all network services and program died for a minute exactly also well ...

Lord_Voodoo
Posts: 3
Joined: Thu 09 Sep 2010 10:06

Post by Lord_Voodoo » Fri 10 Sep 2010 06:32

Решение простое: не использовать Connection->Schema, а запоминать в строковой переменной это значение... ну или try catch для обращения к этому свойству...


Decision is a simple: don't use Connection->schema... memorize in a string variable it is a value... or try catch for to get this property...

AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Post by AlexP » Fri 10 Sep 2010 09:20

Hello,

It is good to see that this problem was solved. If any other questions come up, please contact me.

Post Reply