Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 17 » SQL Anywhere Server - Database Administration » Database configuration » Database options » Alphabetical list of database options

subsume_row_locks option

Controls when the database server acquires individual row locks for a table.

Allowed values

On, Off



  PUBLIC role For current user For other users
Allowed to set permanently? Yes, with SET ANY PUBLIC OPTION Yes Yes, with SET ANY PUBLIC OPTION
Allowed to set temporarily? Yes, with SET ANY PUBLIC OPTION Yes (current connection only) No

If the subsume_row_locks option is On (the default) then whenever a table t is locked exclusively with LOCK TABLE t IN EXCLUSIVE MODE, the database server no longer acquires individual row locks for t.

This can result in a significant performance improvement if extensive updates are made to t in a single transaction, especially if t is large relative to cache size. It also allows for atomic update operations that are larger than the lock table can currently handle (approximately 2-4 million rows).

When this option is On, keyset cursors over a table locked in this fashion return row changed warnings for every row in the cursor, if any row in the database has been modified. The database server could turn an updatable cursor with an ORDER BY into a keyset cursor as a result.