<question>Why is jackcess so slow for large updates?</question>
<answer>
<p>
- While there is much room for improvement in update speed, one factor
- is whether or not all writes are automatically forced to disk. By
- default, "autoSync" is enabled, which keeps the database file in a
- more consistent state, but can be very slow for large updates.
- Disabling "autoSync" can dramatically increase update speed, but
- exceptions during update can leave the file in an unusable state.
- So, modifying this option essentially trades off speed for
- recoverability.
+ In general, the focus of Jackcess is functionality, not speed.
+ However, one major speed factor is whether or not all writes are
+ automatically forced to disk. By default, "autoSync" is enabled,
+ which keeps the database file in a more consistent state, but can be
+ very slow for large updates. Disabling "autoSync" can dramatically
+ increase update speed, but exceptions during update can leave the
+ file in an unusable state (when disabled, you can call <a href="apidocs/com/healthmarketscience/jackcess/Database.html#flush()">Database.flush()</a> manually to force updates to disk). Modifying this option essentially
+ trades off speed for recoverability.
+ </p>
+ <p>
+ Additionally, <a href ="apidocs/com/healthmarketscience/jackcess/Table.html#addRows(java.util.List)">adding rows in batches</a> instead of one at a time can
+ increase insert speed.
+ </p>
+ <p>
+ Finally, always make sure you are using the <a href="https://sourceforge.net/projects/jackcess/files/latest/download">latest release</a>, as speed
+ improvements are happening periodically.
</p>
</answer>
</faq>