Subject RE: [IBO] Re: forceClosed of tIBOTransaction
Author Svein Erling Tysvær

>Hi Jason--

>  

>Thank-you for the reply.

>A suggestion, sure.... I was more hoping there was a way to do it now ;)

>Something like "ForceClosedOnIdle"

>That way, once the transaction has gone idle, the timer for 'forceclosed' starts.

>Again, what i'm trying to do is, close 'orphaned' transactions because the session that had that transaction open has died/crashed/lost contact/someone shut off that computer/etc.

 

Hi Kelly!

 

There’s one logical problem with your request: IBO works on the client and in the vast majority of cases it is the client that crashes or gets shut down, not the server. Something that has crashed, cannot clean up after itself, so the check for dead connections/transactions will have to be done on the server.

 

If you are using TCP/IP, there’s typically a two hour timeout for connections that get lost. This is configurable through SO_KEEPALIVE. Since I’m not administrating any server and have never done this, I will leave it up to you to google how to do it (or others to answer on this list). Terminating things through Firebird itself, the closest to your request that I can think of will be to query the system tables and cancel things from there, look at http://www.firebirdfaq.org/faq192/.

 

HTH,

Set