Using byte-range locking
By default, the database server uses whole lock-all locks when it needs to lock a smart large object. Lock-all locks are an all or nothing lock; that is, they lock the entire smart large object.
When the database server obtains an exclusive lock, no other user can access the data of the smart large object as long as the lock is held.
If this locking is too restrictive for the concurrency requirements of your application, you can use byte-range locking instead of lock-all locking. With byte-range locking, you can specify the range of bytes to lock in the smart-large-object data. If other users access other portions of the data, they can still acquire their own byte-range lock.
To use byte-range locking: