|Subject||delete from mon$attachments|
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
select * from mon$attachments
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
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,