Both commit_flush_count and commit_flush_timeout are temporary database options. This means that you must set these options each time you start a database. They persist as long as the database continues to run. They are only required when you set COMMIT_FLUSH=grouped as part of a connection string.
An important consideration for setting the commit flush options is how much the delay to flush committed transactions poses a risk to the recoverability of your data. There is a slight chance that a transaction may be lost—even though it has been committed. If a serious hardware failure or a crash occurs after a commit but before the transaction is flushed to storage, the transaction is rolled back on recovery.
However, a longer delay can increase UltraLite's performance. Therefore choose an appropriate count or timeout threshold with care.