db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mike Matrigali (JIRA)" <derby-...@db.apache.org>
Subject [jira] Created: (DERBY-1887) improve performance of single user long transactions.
Date Tue, 26 Sep 2006 06:53:50 GMT
improve performance of single user long transactions.

                 Key: DERBY-1887
                 URL: http://issues.apache.org/jira/browse/DERBY-1887
             Project: Derby
          Issue Type: Improvement
    Affects Versions:
            Reporter: Mike Matrigali

The default logging option for Derby is to write a log page using the user thread, and wait
for it to hit disk before allowing the user thread to continue.  For transactions that span
multiple log pages these syncs are not necessary (only need to sync when the user commits).
 A common case for this is a single user in the system inserting blob/clob columns which in
derby need to log the entire contents of the blob/clob.  

Current Java provides a few options:
1) we could dynamically switch to the async writes with a sync at the end.  This would require
closing and opening the log file to change the syncing mode.
2) we could push the log writer io to a different thread than the user thread.
there may be others.

Note that this is mostly a single user problem, as when multiple users are involved other
threads can continue operating while whatever user thread has been chosen waits for the sync.
 This includes adding more log data to the inmemory log buffer.

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


View raw message