company logo

Network and process locking

Technically, locking depends on the server mode for the process. When a process is using a database exclusively, Locking becomes part of the process. When the database is shared with other processes, locking is based on SAMBA shared file support, which allows locking file positions in a network (file lock).

When running a single thread application accessing the database exclusively, file locks are ignored in order to improve performance.

Exclusive database processes running in client/server mode or in multiple thread mode as the ODABA server are using an process internal locking mechanism locking database entries in the cache, which is faster than the file locking mechanism.

In order to activate internal locks, an instance cache is required. The instance cache might be activated by setting the [CACHE] option (e.g. in the configuration or ini-file) or by setting the Application::shareDatabase() property.