Hi--
 

 I've got a problem.
 

 I've got a FB 2.5.2 64-bit install.  i believe it's installed as 'super 
server'  (it's using \Firebird_2_5\bin\fbserver.exe' running as a service)
 

 there are always several instances of my application running, connected to the 
same DB using that FB.
 

 every now and then a computer drops it's connection or the computer crashes or 
something.  no big deal.  however, on rare occasions, there was a transaction 
active waiting for a commit on the crashed computer.
 

 that often causes 'dead lock on no wait transaction' errors when another query 
tries to open.
 

 OK, so...i can restart the firebird database engine to clear it.
 

 BUT i'm trying to figure out how to 'delete' the transaction, statement, 
attachment, etc. from the appropriate Firebird table so i don't have to restart 
the FB engine.
 

 

 in the results for select * from mon$transactions, i see the transaction left 
open and active with attachment ID 
 

 in this case, let's say the transaction that is active it's ID is 98974.  it's 
for attachment_id = 1889
 

 if i
 

 select * from mon$attachments
 where
 mon$attachment_id='1889'
 

 and i see the "old" crashed computer's connection, it's date from a few days 
ago, etc.
 

 however if i 
 

 delete from mon$attachments
 where
 mon$attachment_id='1889'
 

 and execute that SQL?  i get 'successful' (ie. no errors)
 

 BUT i select * from mon$attachments again and it's still there?
 

 can i perform a "delete from mon$transactions"?
 

 hmmm this is odd, during my writing of this email?  i just tried the select 
from mon$attachments and it was gone?
 

 perhaps it takes some time for FB to delete the attachment?  is that the case? 
 (as in, 10 minutes?)
 

 can I delete from mon$transactions?
 

 can i delete from mon$attachments?
 

 thanks in advance,
 kelly
 

Reply via email to