Read-only transactions in SuperServer could not write Header and TIP pages 
immediately after edit
-------------------------------------------------------------------------------------------------

                 Key: CORE-5434
                 URL: http://tracker.firebirdsql.org/browse/CORE-5434
             Project: Firebird Core
          Issue Type: Improvement
          Components: Engine
            Reporter: Vlad Khorsun


Currently engine writes contents of Header and TIP pages to disk immediately 
after any change (for ex. transaction start increments value of "Next 
transaction" counter, commit changes transaction state etc).
I.e. Header and TIP pages are written to disk not waiting for commit (flush).
This was done by at least two major reasons:
a) safety
b) in CS (and SC) page locks for Header and TIP pages is released immediately 
after use to avoid AST overhead

In the case of many light read-only transactions these writes makes almost 100% 
of whole transaction time.

Since read-only transactions does not change data it is safe to update on disk 
contents of Header and TIP pages 
somewhat later, for example when write transaction started (or committed) or 
when whole page cache is flushed
at database shutdown.

Note, reason (b) doesn't affect SuperServer.

So, improvement is that read-only transaction will not force write of 
Header\TIP page content to disk immediately after change 
(in SS mode, of course). In the case of many light read-only transactions it 
gives significant performance gain.

PS to address this issue in CS mode there is more complex solution, probably it 
will be implemented in v4 a bit later


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to