Data Locks

Essbase issues write (exclusive) locks for blocks that are created, updated, or deleted, and issues read (shared) locks for blocks that should be accessed but not modified. By issuing the appropriate locks, Essbase ensures that data changed by one operation cannot be corrupted by a concurrent update.

This section discusses locks on data blocks, not locks on database artifacts. For information about locking and unlocking outlines and other artifacts, see Locking and Unlocking Artifacts.

Table 156 explains the lock types:

Table 156. Basic Lock Types

Lock

Description

Write (exclusive) lock

Prevents any other transaction from accessing the locked data block. Used for all data block updates, including spreadsheet lock and send operations.

Read (shared) lock

Allows other transactions read-only access to the data block but prevents other transactions from modifying the data block.

Table 157 shows the locks that Essbase issues for various types of operations.

Table 157. Locking by Higher-Level Functions

Type of Operation

Lock Issued

Spreadsheet retrieve

Read (shared) lock on each data block.

Retrieve and lock

Write (exclusive) lock on all affected blocks. A subsequent send command commits the data.

Calculate derived block

Write lock on the block being calculated.

As a block is calculated, all blocks containing the block’s children acquire read locks.

Data load

Write lock

Restructure

Write lock

How Essbase handles locking depends on whether committed or uncommitted access is enabled.