Hi,

I'm running Firebird 2.5.1. Clients are written in Delphi, connect using 
FIBPlus.
All SELECT statements are running under transactions with 
parameters:READ_COMMITTED | REC_VERSION | NOWAIT | READ_ONLY.
All UPDATES/DELETES/INSERTS are running under transactions with 
parameters:READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE.
Transaction are committed using Commit or Commit_Retaining.

1. Occasionally I'm getting Deadlock error on SELECT statements. Is there a way 
to specify different transaction parameters or any other way to avoid deadlocks?
Is the record still being held locked after COMMIT_RETAINING?

2. I'm using trace service logs. 
-It appears that a new log file starts when current log file reaches certain 
size. Is there a way to reduce the maximum size of a log file?
-Is there a way to log failed statements as well? If I try to insert a record 
and that insert fails because of FK constraint, that statement does not get 
logged.
-For some transactions I cannot find START_TRANSACTION log record. Only 
COMMIT_RETAINING records. How can I find out if transaction is still active or 
not.
-Is there more detailed documentation on what information can be recorded in 
the Trace Service log?

3. Does FB become completely unresponsive during garbage collection or only 
'unlucky' request gets delayed?

Thanks in advance,

Alexander Liberov 


Reply via email to