Subject | Re: [firebird-support] Re: Awaiting Garbage Collector |
---|---|
Author | Carlos H. Cantu |
Post date | 2015-03-23T12:31:17Z |
This is how Versioning/MVCC works.
PS: Probably the reason for Sinnatica showing increasing numbers, even when you have just one transaction open in your app, is because Sinnatica needs to start a new transaction every time it needs to refresh its statistics.
[]s
Carlos
Firebird Performance in Detail - http://videos.firebirddevelopersday.com
www.firebirdnews.org - www.FireBase.com.br
Regarding the Awaiting GC issue I've done another test: 1- Connect to the database in a test environment, isolated from the rest of users from production environment. with IBExpert or another database manager. Only one connection. 2- Monitor tha database with Sinatica Monitor to get number of active transactions, attachments and statements. At this moment only 1 connection is showed in Sinatica. 2 statements that are querys to system tables, I supose form IBExpert connection, 0 awaiting GC and 1 awaiting Sweep. 3- Run a query SELECT * FROM CALENDAR WHERE EVENT_ID=132465 which only returns a record. I did not COMMIT that. 4- Now SINATICA shows how AWAITING GC is increasing by 1 or 2 every second. In a minute it shows more than 100 Awaiting GC. 5- COMMIT and now SINATICA shows AWAITING GC is again 0. I did the same thing with EMS SQL MANAGER and the result is the same. Leaving an interesting transaction on a single record table generates a big amount of garbage. Is that normal? |