1.1--- a/lisp/ffi/rocksdb/merge.lisp Sun Aug 18 20:34:26 2024 -0400
1.2+++ b/lisp/ffi/rocksdb/merge.lisp Sun Aug 18 21:37:07 2024 -0400
1.3@@ -34,6 +34,26 @@
1.4 ;;; Code:
1.5 (in-package :rocksdb)
1.6
1.7+(defvar *rocksdb-partial-merge-lambda-list*
1.8+ '((key (array unsigned-char))
1.9+ (klen size-t)
1.10+ (ops (array (array unsigned-char)))
1.11+ (ops-length (* size-t))
1.12+ (num-ops size-t)
1.13+ (success (array unsigned-char))
1.14+ (new-vlen (* size-t))))
1.15+
1.16+(defvar *rocksdb-full-merge-lambda-list*
1.17+ '((key (array unsigned-char))
1.18+ (klen size-t)
1.19+ (existing-val (array unsigned-char))
1.20+ (existing-vlen size-t)
1.21+ (ops (array (array unsigned-char)))
1.22+ (ops-length (* size-t))
1.23+ (num-ops size-t)
1.24+ (success (array unsigned-char))
1.25+ (new-vlen (* size-t))))
1.26+
1.27 #|
1.28 Gives the client a way to express the read -> modify -> write semantics
1.29 key: (IN) The key that's associated with this merge operation.