Determines when committed transactions are flushed to storage after a commit call. If no calls to commit are made by the UltraLite application, no flush can occur.
COMMIT_FLUSH={ immediate | grouped | on_checkpoint }
immediate
This connection parameter defines which transactions are recovered following a hardware failure or crash. You can group logical autocommit operations as a single recovery point.
By grouping these operations, you can improve UltraLite performance, but at the expense of data recoverability. There is a slight chance that a transaction may be lost—even though it has been committed—if a hardware failure or crash occurs after a commit, but before the transaction is flushed to storage.
The following parameters are supported:
immediate Committed transactions are flushed to storage immediately upon a commit call before the commit operation completes.
grouped Committed transactions are flushed to storage on a commit call, but only after a threshold you configure has been reached. You can configure either a transaction count threshold with the commit_flush_count database option or a time-based threshold with the commit_flush_timeout database option.
If set, both the commit_flush_count and the commit_flush_timeout options act as possible triggers for the commit flush; the first threshold that is met triggers the flush. When the flush occurs, UltraLite sets the counter and the timer back to 0. Then, both the counter and timer are monitored, until one of these thresholds is reached again.
on_checkpoint Committed transactions are flushed to storage on a checkpoint operation. You can perform a checkpoint with any of the following:
Send feedback about this page via email or DocCommentXchange | Copyright © 2008, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.0 |