Record locking semantics

Kratos,

Aerospike’s locking / latching is per-record - ie, per key-value pair. A standard UDF must hold the read-write lock while executing, but other UDFs ( on other records ) run in parallel. For a stream udf ( aggregation ), when each record has the UDF executing on it, it holds a read lock. The read locks are slightly lighter weight than the write latch. The write latch is used during the period where replication to other nodes in the cluster is applied, as most people run Aerospike’s default mode of synchronous replication.