How does JDataStore deal with Concurrency issues?

Abstract: How does JDataStore deal with Concurrency issues?

JDataStore currently uses just table locks not row locks. Note the following though:

  • Read only transactions can be used that do not acquire locks at all. This can be activated by calling java.sql.Connection.setReadOnly(true).
  • JDataStore 3.5 introduced a new lock SQL statement that allows you to lock several tables. It automatically sorts the tables by name to avoid deadlock.
  • If you commit after the select, the ResultSet can still be accessed without acquiring any locks.
  • JDataStore "write" transaction throughput is best with short duration transactions.