changeset 599: | fea71448569b |
parent: | c7f9bfc9570f |
child: | 111d0cfc5da1 |
author: | Richard Westhaver <ellis@rwest.io> |
date: | Fri, 16 Aug 2024 18:06:48 -0400 |
permissions: | -rw-r--r-- |
description: | more rocksdb gruntwork |
87 | 1 | (in-package :rocksdb) |
93 | 2 | |
87 | 3 | ;;; DB |
4 | (def-with-errptr rocksdb-open (* rocksdb) |
|
5 | (opt (* rocksdb-options)) |
|
6 | (name c-string)) |
|
7 | ||
8 | (define-alien-routine rocksdb-close void |
|
9 | (db (* rocksdb))) |
|
10 | ||
11 | (define-alien-routine rocksdb-cancel-all-background-work void |
|
12 | (db (* rocksdb)) |
|
13 | (wait boolean)) |
|
14 | ||
273
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
15 | (define-alien-routine rocksdb-disable-manual-compaction void |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
16 | (db (* rocksdb))) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
17 | |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
18 | (define-alien-routine rocksdb-enable-manual-compaction void |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
19 | (db (* rocksdb))) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
20 | |
87 | 21 | (def-with-errptr rocksdb-put |
110
cae8da4b1415
rocksdb macrofication, fixes for RDB (C Strings will be the death of me), removed PWN - quicklisp package conflict, smh.
ellis <ellis@rwest.io>
parents:
101
diff
changeset
|
22 | void |
cae8da4b1415
rocksdb macrofication, fixes for RDB (C Strings will be the death of me), removed PWN - quicklisp package conflict, smh.
ellis <ellis@rwest.io>
parents:
101
diff
changeset
|
23 | (db (* rocksdb)) |
cae8da4b1415
rocksdb macrofication, fixes for RDB (C Strings will be the death of me), removed PWN - quicklisp package conflict, smh.
ellis <ellis@rwest.io>
parents:
101
diff
changeset
|
24 | (options (* rocksdb-writeoptions)) |
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
25 | (key (* unsigned-char)) |
110
cae8da4b1415
rocksdb macrofication, fixes for RDB (C Strings will be the death of me), removed PWN - quicklisp package conflict, smh.
ellis <ellis@rwest.io>
parents:
101
diff
changeset
|
26 | (keylen size-t) |
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
27 | (val (* unsigned-char)) |
110
cae8da4b1415
rocksdb macrofication, fixes for RDB (C Strings will be the death of me), removed PWN - quicklisp package conflict, smh.
ellis <ellis@rwest.io>
parents:
101
diff
changeset
|
28 | (vallen size-t)) |
87 | 29 | |
599 | 30 | (def-with-errptr rocksdb-write void |
31 | (db (* rocksdb)) |
|
32 | (opts (* rocksdb-writeoptions)) |
|
33 | (batch (* rocksdb-writebatch))) |
|
34 | ||
87 | 35 | (def-with-errptr rocksdb-get |
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
36 | (* unsigned-char) |
87 | 37 | (db (* rocksdb)) |
38 | (options (* rocksdb-readoptions)) |
|
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
39 | (key (* unsigned-char)) |
87 | 40 | (keylen size-t) |
41 | (vallen (* size-t))) |
|
42 | ||
269 | 43 | (def-with-errptr rocksdb-get-with-ts c-string |
44 | (db (* rocksdb)) |
|
45 | (opts (* rocksdb-readoptions)) |
|
46 | (key c-string) |
|
47 | (keylen size-t) |
|
48 | (vallen (* size-t)) |
|
49 | (ts (* c-string)) |
|
50 | (tslen (* size-t))) |
|
51 | ||
87 | 52 | (def-with-errptr rocksdb-delete |
53 | void |
|
54 | (db (* rocksdb)) |
|
55 | (options (* rocksdb-writeoptions)) |
|
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
56 | (key (* unsigned-char)) |
87 | 57 | (keylen size-t)) |
58 | ||
59 | (def-with-errptr rocksdb-merge |
|
60 | void |
|
61 | (db (* rocksdb)) |
|
62 | (opt (* rocksdb-writeoptions)) |
|
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
63 | (key (* unsigned-char)) |
87 | 64 | (keylen size-t) |
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
65 | (val (* unsigned-char)) |
87 | 66 | (vallen size-t)) |
67 | ||
68 | (def-with-errptr rocksdb-merge-cf |
|
69 | void |
|
70 | (db (* rocksdb)) |
|
71 | (opt (* rocksdb-writeoptions)) |
|
72 | (cf (* rocksdb-column-family-handle)) |
|
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
73 | (key (* unsigned-char)) |
87 | 74 | (keylen size-t) |
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
75 | (val (* unsigned-char)) |
87 | 76 | (vallen size-t)) |
77 | ||
78 | (def-with-errptr rocksdb-write |
|
79 | void |
|
80 | (db (* rocksdb)) |
|
81 | (opt (* rocksdb-writeoptions)) |
|
82 | (batch (* rocksdb-writebatch))) |
|
83 | ||
84 | (def-with-errptr rocksdb-get-cf |
|
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
85 | (* unsigned-char) |
87 | 86 | (db (* rocksdb)) |
87 | (opt (* rocksdb-readoptions)) |
|
88 | (cf (* rocksdb-column-family-handle)) |
|
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
89 | (key (* unsigned-char)) |
87 | 90 | (keylen size-t) |
91 | (vallen (* size-t))) |
|
92 | ||
269 | 93 | (def-with-errptr rocksdb-get-cf-with-ts c-string |
94 | (db (* rocksdb)) |
|
95 | (opts (* rocksdb-readoptions)) |
|
96 | (cf (* rocksdb-column-family-handle)) |
|
97 | (key c-string) |
|
98 | (keylen size-t) |
|
99 | (vallen (* size-t)) |
|
100 | (ts (* c-string)) |
|
101 | (tslen (* size-t))) |
|
102 | ||
599 | 103 | (define-alien-routine rocksdb-get-db-identity c-string (db (* rocksdb)) (idlen (* size-t))) |
104 | ||
113
afcb1f02bb66
removed obj/uri. may add back new impl later. new file obj/db.lisp and RDB stuff - (sst)
ellis <ellis@rwest.io>
parents:
112
diff
changeset
|
105 | ;; NOTE 2023-12-19: only the VOID-returning functions in the multi- |
afcb1f02bb66
removed obj/uri. may add back new impl later. new file obj/db.lisp and RDB stuff - (sst)
ellis <ellis@rwest.io>
parents:
112
diff
changeset
|
106 | ;; family perform parallel IO: |
afcb1f02bb66
removed obj/uri. may add back new impl later. new file obj/db.lisp and RDB stuff - (sst)
ellis <ellis@rwest.io>
parents:
112
diff
changeset
|
107 | ;; https://github.com/facebook/rocksdb/wiki/MultiGet-Performance |
87 | 108 | (define-alien-routine rocksdb-multi-get void |
109 | (db (* rocksdb)) |
|
110 | (opt (* rocksdb-readoptions)) |
|
111 | (num-keys size-t) |
|
112 | (keys-list (array c-string)) |
|
113 | (keys-list-sizes (array size-t)) |
|
114 | (values-list (array c-string)) |
|
115 | (values-list-sizes (array size-t)) |
|
116 | (errs (array rocksdb-errptr))) |
|
117 | ||
269 | 118 | (define-alien-routine rocksdb-multi-get-with-ts void |
119 | (db (* rocksdb)) |
|
120 | (opt (* rocksdb-readoptions)) |
|
121 | (num-keys size-t) |
|
122 | (keys-list (array c-string)) |
|
123 | (keys-list-sizes (array size-t)) |
|
124 | (values-list (array c-string)) |
|
125 | (values-list-sizes (array size-t)) |
|
126 | (ts-list (array c-string)) |
|
127 | (ts-list-sizes (array size-t)) |
|
128 | (errs (array rocksdb-errptr))) |
|
129 | ||
87 | 130 | (define-alien-routine rocksdb-multi-get-cf void |
131 | (db (* rocksdb)) |
|
132 | (opt (* rocksdb-readoptions)) |
|
133 | (cfs (array rocksdb-column-family-handle)) |
|
134 | (num-keys size-t) |
|
135 | (keys-list (array c-string)) |
|
136 | (keys-list-sizes (array size-t)) |
|
137 | (values-list (array c-string)) |
|
138 | (values-list-sizes (array size-t)) |
|
139 | (errs (array rocksdb-errptr))) |
|
140 | ||
269 | 141 | (define-alien-routine rocksdb-multi-get-cf-with-ts void |
142 | (db (* rocksdb)) |
|
143 | (opt (* rocksdb-readoptions)) |
|
144 | (cfs (array rocksdb-column-family-handle)) |
|
145 | (num-keys size-t) |
|
146 | (keys-list (array c-string)) |
|
147 | (keys-list-sizes (array size-t)) |
|
148 | (values-list (array c-string)) |
|
149 | (values-list-sizes (array size-t)) |
|
150 | (ts-list (array c-string)) |
|
151 | (ts-list-sizes (array size-t)) |
|
152 | (errs (array rocksdb-errptr))) |
|
110
cae8da4b1415
rocksdb macrofication, fixes for RDB (C Strings will be the death of me), removed PWN - quicklisp package conflict, smh.
ellis <ellis@rwest.io>
parents:
101
diff
changeset
|
153 | |
599 | 154 | (define-alien-routine rocksdb-batched-multi-get-cf void |
155 | (db (* rocksdb)) |
|
156 | (opts (* rocksdb-readoptions)) |
|
157 | (cf (* rocksdb-column-family-handle)) |
|
158 | (nkeys size-t) |
|
159 | (keys (array c-string)) |
|
160 | (key-sizes (array size-t)) |
|
161 | (values (array (* rocksdb-pinnableslice))) |
|
162 | (errs (array (* rocksdb-errptr))) |
|
163 | (sorted-input boolean)) |
|
164 | ||
165 | (define-alien-routine rocksdb-key-may-exist unsigned-char |
|
166 | (db (* rocksdb)) |
|
167 | (opts (* rocksdb-readoptions)) |
|
168 | (key c-string) |
|
169 | (key-len size-t) |
|
170 | (value (* c-string)) |
|
171 | (val-len (* size-t)) |
|
172 | (timestamp c-string) |
|
173 | (timestamp-len size-t) |
|
174 | (value-found (* unsigned-char))) |
|
175 | ||
176 | (define-alien-routine rocksdb-key-may-exist-cf unsigned-char |
|
177 | (db (* rocksdb)) |
|
178 | (opts (* rocksdb-readoptions)) |
|
179 | (cf (* rocksdb-column-family-handle)) |
|
180 | (key c-string) |
|
181 | (key-len size-t) |
|
182 | (value (* c-string)) |
|
183 | (val-len (* size-t)) |
|
184 | (timestamp c-string) |
|
185 | (timestamp-len size-t) |
|
186 | (value-found (* unsigned-char))) |
|
187 | |
|
269 | 188 | (define-alien-routine rocksdb-cache-create-lru (* rocksdb-cache) (capacity size-t)) |
87 | 189 | |
190 | (def-with-errptr rocksdb-flush void |
|
191 | (db (* rocksdb)) |
|
192 | (options (* rocksdb-flushoptions))) |
|
193 | ||
101
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
194 | (def-with-errptr rocksdb-flush-cf void |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
195 | (db (* rocksdb)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
196 | (opts (* rocksdb-flushoptions)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
197 | (cf (* rocksdb-column-family-handle)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
198 | (num-cf int)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
199 | |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
200 | (def-with-errptr rocksdb-flush-cfs void |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
201 | (db (* rocksdb)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
202 | (opts (* rocksdb-flushoptions)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
203 | (cf (* (* rocksdb-column-family-handle))) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
204 | (num-cf int)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
205 | |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
206 | (def-with-errptr rocksdb-flush-wal void |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
207 | (db (* rocksdb)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
208 | (sync unsigned-char)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
209 | |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
210 | (define-alien-routine rocksdb-delete-file void |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
211 | (db (* rocksdb)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
212 | (name c-string)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
213 | |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
214 | (define-alien-routine rocksdb-livefile (* rocksdb-livefiles) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
215 | (db (* rocksdb)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
216 | (name c-string)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
217 | |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
218 | ;; return NULL if prop name is unknown, else return pointer to |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
219 | ;; malloc-ed null-term value. |
269 | 220 | (define-alien-routine rocksdb-property-value c-string |
101
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
221 | (db (* rocksdb)) |
271
4a1a21ff46ee
metadata,props,merge-ops
Richard Westhaver <ellis@rwest.io>
parents:
269
diff
changeset
|
222 | (propname c-string)) |
101
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
223 | |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
224 | ;; return 0 on success, else -1 |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
225 | (define-alien-routine rocksdb-property-int int |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
226 | (db (* rocksdb)) |
271
4a1a21ff46ee
metadata,props,merge-ops
Richard Westhaver <ellis@rwest.io>
parents:
269
diff
changeset
|
227 | (propname c-string)) |
101
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
228 | |
269 | 229 | (define-alien-routine rocksdb-property-value-cf c-string |
101
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
230 | (db (* rocksdb)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
231 | (cf (* rocksdb-column-family-handle)) |
271
4a1a21ff46ee
metadata,props,merge-ops
Richard Westhaver <ellis@rwest.io>
parents:
269
diff
changeset
|
232 | (propname c-string)) |
101
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
233 | |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
234 | (define-alien-routine rocksdb-property-int-cf int |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
235 | (db (* rocksdb)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
236 | (cf (* rocksdb-column-family-handle)) |
271
4a1a21ff46ee
metadata,props,merge-ops
Richard Westhaver <ellis@rwest.io>
parents:
269
diff
changeset
|
237 | (propname c-string)) |
110
cae8da4b1415
rocksdb macrofication, fixes for RDB (C Strings will be the death of me), removed PWN - quicklisp package conflict, smh.
ellis <ellis@rwest.io>
parents:
101
diff
changeset
|
238 | |
87 | 239 | ;;; CF |
240 | (def-with-errptr rocksdb-create-column-family |
|
241 | (* rocksdb-column-family-handle) |
|
242 | (db (* rocksdb)) |
|
243 | (column-family-options (* rocksdb-options)) |
|
244 | (column-family-name c-string)) |
|
245 | ||
246 | (def-with-errptr rocksdb-create-column-families |
|
247 | (array rocksdb-column-family-handle) |
|
248 | (db (* rocksdb)) |
|
249 | (column-family-options (* rocksdb-options)) |
|
250 | (num-column-familes int) |
|
251 | (column-family-names (array c-string)) |
|
252 | (lencfs (* size-t))) |
|
253 | ||
254 | (define-alien-routine rocksdb-create-column-families-destroy void |
|
255 | (list (array rocksdb-column-family-handle))) |
|
256 | ||
599 | 257 | (def-with-errptr rocksdb-create-column-family-with-ttl (* rocksdb-column-family-handle) |
258 | (db (* rocksdb)) |
|
259 | (cf-opts (* rocksdb-options)) |
|
260 | (cf-name c-string) |
|
261 | (ttl int)) |
|
262 | ||
87 | 263 | (define-alien-routine rocksdb-column-family-handle-destroy void |
272
0a5e37693fdf
db protocol stuff, prep for tao, tests, with-temp-db
Richard Westhaver <ellis@rwest.io>
parents:
271
diff
changeset
|
264 | (cf (* rocksdb-column-family-handle))) |
87 | 265 | |
266 | (define-alien-routine rocksdb-column-family-handle-get-id unsigned-int |
|
272
0a5e37693fdf
db protocol stuff, prep for tao, tests, with-temp-db
Richard Westhaver <ellis@rwest.io>
parents:
271
diff
changeset
|
267 | (cf (* rocksdb-column-family-handle))) |
87 | 268 | |
269 | (define-alien-routine rocksdb-column-family-handle-get-name c-string |
|
270 | (handle (* rocksdb-column-family-handle)) |
|
271 | (name-len (* size-t))) |
|
272 | ||
273 | (def-with-errptr rocksdb-drop-column-family |
|
274 | void |
|
275 | (db (* rocksdb)) |
|
276 | (handle (* rocksdb-column-family-handle))) |
|
277 | ||
599 | 278 | (define-alien-routine rocksdb-get-default-column-family-handle (* rocksdb-column-family-handle) |
279 | (db (* rocksdb))) |
|
87 | 280 | |
281 | (def-with-errptr rocksdb-list-column-families |
|
282 | (array c-string) |
|
283 | (opt (* rocksdb-options)) |
|
284 | (name c-string) |
|
285 | (lencf (* size-t))) |
|
286 | ||
287 | (define-alien-routine rocksdb-list-column-families-destroy void |
|
288 | (list (array c-string)) |
|
289 | (len size-t)) |
|
290 | ||
291 | (def-with-errptr rocksdb-put-cf |
|
292 | void |
|
293 | (db (* rocksdb)) |
|
294 | (opt (* rocksdb-writeoptions)) |
|
295 | (cf (* rocksdb-column-family-handle)) |
|
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
296 | (key (* unsigned-char)) |
87 | 297 | (keylen size-t) |
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
298 | (val (* unsigned-char)) |
87 | 299 | (vallen size-t)) |
300 | ||
599 | 301 | (def-with-errptr rocksdb-put-with-ts void |
302 | (db (* rocksdb)) |
|
303 | (opt (* rocksdb-writeoptions)) |
|
304 | (key (* unsigned-char)) |
|
305 | (keylen size-t) |
|
306 | (ts c-string) |
|
307 | (tslen size-t) |
|
308 | (val (* unsigned-char)) |
|
309 | (vallen size-t)) |
|
310 | ||
311 | (def-with-errptr rocksdb-put-cf-with-ts void |
|
312 | (db (* rocksdb)) |
|
313 | (opt (* rocksdb-writeoptions)) |
|
314 | (cf (* rocksdb-column-family-handle)) |
|
315 | (key (* unsigned-char)) |
|
316 | (keylen size-t) |
|
317 | (ts c-string) |
|
318 | (tslen size-t) |
|
319 | (val (* unsigned-char)) |
|
320 | (vallen size-t)) |
|
321 | ||
87 | 322 | (def-with-errptr rocksdb-delete-cf |
323 | void |
|
324 | (db (* rocksdb)) |
|
325 | (options (* rocksdb-writeoptions)) |
|
326 | (cf (* rocksdb-column-family-handle)) |
|
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
327 | (key (* unsigned-char)) |
87 | 328 | (keylen size-t)) |
329 | ||
599 | 330 | (def-with-errptr rocksdb-delete-with-ts |
331 | void |
|
332 | (db (* rocksdb)) |
|
333 | (options (* rocksdb-writeoptions)) |
|
334 | (key (* unsigned-char)) |
|
335 | (ts c-string) |
|
336 | (tslen size-t) |
|
337 | (keylen size-t)) |
|
338 | ||
339 | (def-with-errptr rocksdb-delete-cf-with-ts |
|
340 | void |
|
341 | (db (* rocksdb)) |
|
342 | (options (* rocksdb-writeoptions)) |
|
343 | (cf (* rocksdb-column-family-handle)) |
|
344 | (key (* unsigned-char)) |
|
345 | (ts c-string) |
|
346 | (tslen size-t) |
|
347 | (keylen size-t)) |
|
348 | ||
349 | (def-with-errptr rocksdb-singledelete void |
|
350 | (db (* rocksdb)) |
|
351 | (opts (* rocksdb-writeoptions)) |
|
352 | (key c-string) |
|
353 | (keylen size-t)) |
|
354 | ||
355 | (def-with-errptr rocksdb-singledelete-with-ts void |
|
356 | (db (* rocksdb)) |
|
357 | (opts (* rocksdb-writeoptions)) |
|
358 | (key c-string) |
|
359 | (keylen size-t) |
|
360 | (ts c-string) |
|
361 | (tslen size-t)) |
|
362 | ||
363 | (def-with-errptr rocksdb-singledelete-cf-with-ts void |
|
364 | (db (* rocksdb)) |
|
365 | (opts (* rocksdb-writeoptions)) |
|
366 | (cf (* rocksdb-column-family-handle)) |
|
367 | (key c-string) |
|
368 | (keylen size-t) |
|
369 | (ts c-string) |
|
370 | (tslen size-t)) |
|
371 | ||
372 | (def-with-errptr rocksdb-singledelete-cf void |
|
373 | (db (* rocksdb)) |
|
374 | (opts (* rocksdb-writeoptions)) |
|
375 | (cf (* rocksdb-column-family-handle)) |
|
376 | (key c-string) |
|
377 | (keylen size-t)) |
|
378 | ||
379 | (def-with-errptr rocksdb-increase-full-history-ts-low void |
|
380 | (db (* rocksdb)) |
|
381 | (cf (* rocksdb-column-family-handle)) |
|
382 | (ts-low c-string) |
|
383 | (ts-lowlen size-t)) |
|
384 | ||
385 | (def-with-errptr rocksdb-get-full-history-ts-low c-string |
|
386 | (db (* rocksdb)) |
|
387 | (cf (* rocksdb-column-family-handle)) |
|
388 | (ts-lowlen (* size-t))) |
|
389 | ||
87 | 390 | (def-with-errptr rocksdb-delete-range-cf |
391 | void |
|
392 | (db (* rocksdb)) |
|
393 | (options (* rocksdb-writeoptions)) |
|
394 | (cf (* rocksdb-column-family-handle)) |
|
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
395 | (start-key (* unsigned-char)) |
87 | 396 | (start-key-len size-t) |
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
397 | (end-key (* unsigned-char)) |
87 | 398 | (end-key-len size-t)) |
399 | ||
101
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
400 | (def-with-errptr rocksdb-disable-file-deletions void |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
401 | (db (* rocksdb))) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
402 | |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
403 | (def-with-errptr rocksdb-enable-file-deletions void |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
404 | (db (* rocksdb))) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
405 | |
87 | 406 | (def-with-errptr rocksdb-destroy-db void |
407 | (opts (* rocksdb-options)) |
|
101
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
408 | (name c-string)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
409 | |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
410 | (def-with-errptr rocksdb-repair-db void |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
411 | (opts (* rocksdb-options)) |
53be9cb1511b
maybe fixed alien macro issues with rocksdb
ellis <ellis@rwest.io>
parents:
94
diff
changeset
|
412 | (name c-string)) |
87 | 413 | |
414 | ;;; Iterators |
|
415 | (define-alien-routine rocksdb-create-iterator (* rocksdb-iterator) |
|
273
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
416 | (db (* rocksdb)) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
417 | (opt (* rocksdb-readoptions))) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
418 | |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
419 | (define-alien-routine rocksdb-create-iterator-cf (* rocksdb-iterator) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
420 | (db (* rocksdb)) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
421 | (opt (* rocksdb-readoptions)) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
422 | (cf (* rocksdb-column-family-handle))) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
423 | |
87 | 424 | (define-alien-routine rocksdb-iter-destroy void |
425 | (iter (* rocksdb-iterator))) |
|
426 | (define-alien-routine rocksdb-iter-seek-to-first void |
|
427 | (iter (* rocksdb-iterator))) |
|
273
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
428 | (define-alien-routine rocksdb-iter-seek-to-last void |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
429 | (iter (* rocksdb-iterator))) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
430 | (define-alien-routine rocksdb-iter-seek void |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
431 | (iter (* rocksdb-iterator)) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
432 | (k (* unsigned-char)) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
433 | (klen size-t)) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
434 | (define-alien-routine rocksdb-iter-seek-for-prev void |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
435 | (iter (* rocksdb-iterator)) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
436 | (k (* unsigned-char)) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
437 | (klen size-t)) |
87 | 438 | (define-alien-routine rocksdb-iter-valid boolean |
439 | (iter (* rocksdb-iterator))) |
|
440 | (define-alien-routine rocksdb-iter-next void |
|
441 | (iter (* rocksdb-iterator))) |
|
442 | (define-alien-routine rocksdb-iter-prev void |
|
443 | (iter (* rocksdb-iterator))) |
|
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
444 | (define-alien-routine rocksdb-iter-key (* unsigned-char) |
87 | 445 | (iter (* rocksdb-iterator)) |
446 | (klen-ptr (* size-t))) |
|
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
447 | (define-alien-routine rocksdb-iter-value (* unsigned-char) |
87 | 448 | (iter (* rocksdb-iterator)) |
449 | (vlen-ptr (* size-t))) |
|
273
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
450 | (define-alien-routine rocksdb-iter-timestamp (* unsigned-char) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
451 | (iter (* rocksdb-iterator)) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
452 | (tslen (* size-t))) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
453 | (def-with-errptr rocksdb-iter-get-error void (iter (* rocksdb-iterator))) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
454 | (define-alien-routine rocksdb-wal-iter-next void (iter (* rocksdb-wal-iterator))) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
455 | (define-alien-routine rocksdb-wal-iter-valid unsigned-char (iter (* rocksdb-wal-iterator))) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
456 | (def-with-errptr rocksdb-wal-iter-status unsigned-char (iter (* rocksdb-wal-iterator))) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
457 | (define-alien-routine rocksdb-wal-iter-get-batch (* rocksdb-writebatch) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
458 | (iter (* rocksdb-wal-iterator)) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
459 | (seq (* (unsigned 64)))) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
460 | (define-alien-routine rockdsb-get-latest-sequence-number (unsigned 64) (db (* rocksdb))) |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
461 | (define-alien-routine rocksdb-wal-iter-destroy void |
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
462 | (iter (* rocksdb-wal-iterator))) |
87 | 463 | |
464 | ;;; Backup |
|
599 | 465 | (def-with-errptr rocksdb-backup-engine-verify-backup void |
466 | (be (* rocksdb-backup-engine)) |
|
467 | (backup-id (unsigned 32))) |
|
468 | ||
87 | 469 | (def-with-errptr rocksdb-backup-engine-open |
470 | (* rocksdb-backup-engine) |
|
471 | (opts (* rocksdb-options)) |
|
112 | 472 | (path c-string)) |
87 | 473 | |
474 | (def-with-errptr rocksdb-backup-engine-create-new-backup |
|
475 | void |
|
476 | (be (* rocksdb-backup-engine)) |
|
477 | (db (* rocksdb))) |
|
478 | ||
479 | (def-with-errptr rocksdb-backup-engine-restore-db-from-latest-backup |
|
480 | void |
|
481 | (be (* rocksdb-backup-engine)) |
|
112 | 482 | (db-dir c-string) |
483 | (wal-dir c-string) |
|
87 | 484 | (res-opts (* rocksdb-restore-options))) |
485 | ||
486 | (def-with-errptr rocksdb-backup-engine-restore-db-from-backup |
|
487 | void |
|
488 | (be (* rocksdb-backup-engine)) |
|
112 | 489 | (db-dir c-string) |
490 | (wal-dir c-string) |
|
87 | 491 | (res-opts (* rocksdb-restore-options)) |
492 | (backup-id unsigned-int)) |
|
493 | ||
494 | (define-alien-routine rocksdb-backup-engine-close void |
|
495 | (be (* rocksdb-backup-engine))) |
|
496 | ||
599 | 497 | (define-alien-routine rocksdb-backup-engine-get-backup-info (* rocksdb-backup-engine-info) |
498 | (be (* rocksdb-backup-engine))) |
|
499 | (define-alien-routine rocksdb-backup-engine-info-count int |
|
500 | (info (* rocksdb-backup-engine-info))) |
|
501 | (define-alien-routine rocksdb-backup-engine-info-timestamp (signed 64) |
|
502 | (info (* rocksdb-backup-engine-info)) |
|
503 | (index int)) |
|
504 | (define-alien-routine rocksdb-backup-engine-info-backup-id (unsigned 64) |
|
505 | (info (* rocksdb-backup-engine-info)) |
|
506 | (index int)) |
|
507 | (define-alien-routine rocksdb-backup-engine-info-size (unsigned 64) |
|
508 | (info (* rocksdb-backup-engine-info)) |
|
509 | (index int)) |
|
510 | (define-alien-routine rocksdb-backup-engine-info-num-files (unsigned 32) |
|
511 | (info (* rocksdb-backup-engine-info)) |
|
512 | (index int)) |
|
513 | (define-alien-routine rocksdb-backup-engine-info-destroy void |
|
514 | (info (* rocksdb-backup-engine-info))) |
|
515 | ||
87 | 516 | ;;; Transactions |
268
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
517 | (def-with-errptr rocksdb-transactiondb-create-column-family (* rocksdb-column-family-handle) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
518 | (txn-db (* rocksdb-transactiondb)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
519 | (cf-options (* rocksdb-options)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
520 | (cf-name c-string)) |
87 | 521 | |
113
afcb1f02bb66
removed obj/uri. may add back new impl later. new file obj/db.lisp and RDB stuff - (sst)
ellis <ellis@rwest.io>
parents:
112
diff
changeset
|
522 | (def-with-errptr rocksdb-transactiondb-open (* rocksdb-transactiondb) |
87 | 523 | (opts (* rocksdb-options)) |
524 | (topts (* rocksdb-transactiondb-options)) |
|
112 | 525 | (name c-string)) |
87 | 526 | |
268
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
527 | (def-with-errptr rocksdb-transactiondb-open-column-families (* rocksdb-transactiondb) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
528 | (opts (* rocksdb-options)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
529 | (txn-db-opts (* rocksdb-transactiondb-options)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
530 | (name c-string) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
531 | (num-cfs int) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
532 | (cf-names (array c-string)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
533 | (cf-opfs (* rocksdb-options)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
534 | (cf-handles (array (* rocksdb-column-family-handle)))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
535 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
536 | (define-alien-routine rocksdb-transactiondb-create-snapshot (* rocksdb-snapshot) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
537 | (txn-db (* rocksdb-transactiondb)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
538 | (snapshot (* rocksdb-snapshot))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
539 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
540 | (define-alien-routine rocksdb-transactiondb-release-snapshot void |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
541 | (txn-db (* rocksdb-transactiondb)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
542 | (snapshot (* rocksdb-snapshot))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
543 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
544 | (define-alien-routine rocksdb-transactiondb-property-value c-string |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
545 | (db (* rocksdb-transactiondb)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
546 | (propname c-string)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
547 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
548 | (define-alien-routine rocksdb-transactiondb-property-int int |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
549 | (db (* rocksdb-transactiondb)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
550 | (propname c-string) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
551 | (out-val (unsigned 64))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
552 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
553 | (define-alien-routine rocksdb-transactiondb-get-base-db (* rocksdb) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
554 | (txn-db (* rocksdb-transactiondb))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
555 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
556 | (define-alien-routine rocksdb-transactiondb-get-close-db void |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
557 | (base-db (* rocksdb))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
558 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
559 | (define-alien-routine rocksdb-transaction-begin (* rocksdb-transaction) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
560 | (wopts (* rocksdb-writeoptions)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
561 | (topts (* rocksdb-transaction-options)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
562 | (told (* rocksdb-transaction))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
563 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
564 | (define-alien-routine rocksdb-transactiondb-get-prepared-transactions (array (* rocksdb-transaction)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
565 | (txn-db (* rocksdb-transactiondb)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
566 | (cnt (* size-t))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
567 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
568 | (def-with-errptr rocksdb-transaction-set-name void |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
569 | (txn (* rocksdb-transaction)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
570 | (name c-string) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
571 | (name-len size-t)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
572 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
573 | (define-alien-routine rocksdb-transaction-get-name c-string |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
574 | (txn (* rocksdb-transaction)) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
575 | (name-len (* size-t))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
576 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
577 | (def-with-errptr rocksdb-transaction-prepare void |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
578 | (txn (* rocksdb-transaction))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
579 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
580 | (def-with-errptr rocksdb-transaction-commit void |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
581 | (txn (* rocksdb-transaction))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
582 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
583 | (def-with-errptr rocksdb-transaction-rollback void |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
584 | (txn (* rocksdb-transaction))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
585 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
586 | (define-alien-routine rocksdb-transaction-set-savepoint void |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
587 | (txn (* rocksdb-transaction))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
588 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
589 | (def-with-errptr rocksdb-transaction-rollback-to-savepoint void |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
590 | (txn (* rocksdb-transaction))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
591 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
592 | (define-alien-routine rocksdb-transaction-destroy void |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
593 | (txn (* rocksdb-transaction))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
594 | |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
595 | (define-alien-routine rocksdb-transaction-get-writebach-wi (* rocksdb-writebatch-wi) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
596 | (txn (* rocksdb-transaction))) |
a52d42f30617
rocksdb alien functions and cargo fmt
Richard Westhaver <ellis@rwest.io>
parents:
267
diff
changeset
|
597 | |
269 | 598 | (def-with-errptr rocksdb-transaction-delete void |
599 | (txn (* rocksdb-transaction)) |
|
600 | (key c-string) |
|
601 | (klen size-t)) |
|
602 | ||
603 | (def-with-errptr rocksdb-transaction-delete-cf void |
|
604 | (txn (* rocksdb-transaction)) |
|
605 | (cf (* rocksdb-column-family-handle)) |
|
606 | (key c-string) |
|
607 | (klen size-t)) |
|
608 | ||
609 | (def-with-errptr rocksdb-transactiondb-delete void |
|
610 | (txndb (* rocksdb-transactiondb)) |
|
611 | (opts (* rocksdb-writeoptions)) |
|
612 | (key c-string) |
|
613 | (klen size-t)) |
|
614 | ||
273
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
615 | (def-with-errptr rocksdb-transactiondb-delete-cf void |
269 | 616 | (txndb (* rocksdb-transactiondb)) |
617 | (opts (* rocksdb-writeoptions)) |
|
618 | (cf (* rocksdb-column-family-handle)) |
|
619 | (key c-string) |
|
620 | (klen size-t)) |
|
621 | ||
622 | (define-alien-routine rocksdb-transaction-create-iterator (* rocksdb-iterator) |
|
623 | (txn (* rocksdb-transaction)) |
|
624 | (opts (* rocksdb-readoptions))) |
|
625 | ||
626 | (define-alien-routine rocksdb-transaction-create-iterator-cf (* rocksdb-iterator) |
|
627 | (txn (* rocksdb-transaction)) |
|
628 | (opts (* rocksdb-readoptions)) |
|
629 | (cf (* rocksdb-column-family-handle))) |
|
630 | ||
631 | (define-alien-routine rocksdb-transactiondb-create-iterator (* rocksdb-iterator) |
|
632 | (txndb (* rocksdb-transactiondb)) |
|
633 | (opts (* rocksdb-readoptions))) |
|
634 | ||
635 | (define-alien-routine rocksdb-transactiondb-create-iterator-cf (* rocksdb-iterator) |
|
636 | (txndb (* rocksdb-transactiondb)) |
|
637 | (opts (* rocksdb-readoptions)) |
|
638 | (cf (* rocksdb-column-family-handle))) |
|
639 | ||
87 | 640 | (define-alien-routine rocksdb-transactiondb-close void |
641 | (tdb (* rocksdb-transactiondb))) |
|
642 | ||
269 | 643 | (def-with-errptr rocksdb-transactiondb-flush void |
644 | (txndb (* rocksdb-transactiondb)) |
|
645 | (opts (* rocksdb-flushoptions))) |
|
646 | ||
647 | (def-with-errptr rocksdb-transactiondb-flush-cf void |
|
648 | (txndb (* rocksdb-transactiondb)) |
|
649 | (opts (* rocksdb-flushoptions)) |
|
650 | (cf (* rocksdb-column-family-handle))) |
|
651 | ||
652 | (def-with-errptr rocksdb-transactiondb-flush-cfs void |
|
653 | (txndb (* rocksdb-transactiondb)) |
|
654 | (opts (* rocksdb-flushoptions)) |
|
655 | (cfs (array (* rocksdb-column-family-handle))) |
|
656 | (ncfs int)) |
|
657 | ||
273
6d56c4950fa2
rocksdb iter,metadata,and more
Richard Westhaver <ellis@rwest.io>
parents:
272
diff
changeset
|
658 | (def-with-errptr rocksdb-transactiondb-flush-wal void |
269 | 659 | (txndb (* rocksdb-transactiondb)) |
660 | (sync unsigned-char)) |
|
661 | ||
662 | (def-with-errptr rocksdb-transactiondb-checkpoint-object-create (* rocksdb-checkpoint) |
|
663 | (txn-db (* rocksdb-transactiondb))) |
|
664 | ||
665 | (def-with-errptr rocksdb-optimistictransactiondb-open (* rocksdb-optimistictransactiondb) |
|
666 | (opts (* rocksdb-options)) |
|
667 | (name c-string)) |
|
668 | ||
669 | (def-with-errptr rocksdb-optimistictransactiondb-open-column-families (* rocksdb-optimistictransactiondb) |
|
670 | (opts (* rocksdb-options)) |
|
671 | (name c-string) |
|
672 | (ncfs int) |
|
673 | (cf-names (array c-string)) |
|
674 | (cf-opts (array (* rocksdb-options))) |
|
675 | (cf-handles (array (* rocksdb-column-family-handle)))) |
|
676 | ||
677 | (define-alien-routine rocksdb-optimistictransactiondb-get-base-db (* rocksdb) |
|
678 | (otxn-db (* rocksdb-optimistictransactiondb))) |
|
679 | ||
680 | (define-alien-routine rocksdb-optimistictransactiondb-close-base-db void |
|
681 | (base-db (* rocksdb))) |
|
682 | ||
683 | (define-alien-routine rocksdb-optimistictransaction-begin (* rocksdb-transaction) |
|
684 | (otxn-db (* rocksdb-optimistictransactiondb)) |
|
685 | (wopts (* rocksdb-writeoptions)) |
|
686 | (otxn-opts (* rocksdb-optimistictransaction-options)) |
|
687 | (old-txn (* rocksdb-transaction))) |
|
688 | ||
689 | (def-with-errptr rocksdb-optimistictransactiondb-write void |
|
690 | (otxn-db (* rocksdb-optimistictransactiondb)) |
|
691 | (wopts (* rocksdb-writeoptions)) |
|
692 | (batch (* rocksdb-writebatch))) |
|
693 | ||
694 | (define-alien-routine rocksdb-optimistictransactiondb-close void |
|
695 | (otxn-db (* rocksdb-optimistictransactiondb))) |
|
696 | ||
697 | (def-with-errptr rocksdb-optimistictransactiondb-checkpoint-object-create (* rocksdb-checkpoint) |
|
698 | (otxn-db (* rocksdb-optimistictransactiondb))) |
|
699 | ||
94 | 700 | ;;; Perfcontext |
701 | (define-alien-routine rocksdb-set-perf-level void (val int)) |
|
702 | ||
703 | (define-alien-routine rocksdb-perfcontext-create (* rocksdb-perfcontext)) |
|
704 | ||
269 | 705 | (define-alien-routine rocksdb-perfcontext-reset void (ctx (* rocksdb-perfcontext))) |
94 | 706 | |
267
f3d814fb136a
db upgrades, alik, ignoring c files (for now)
Richard Westhaver <ellis@rwest.io>
parents:
113
diff
changeset
|
707 | (define-alien-routine rocksdb-perfcontext-report (* unsigned-char) |
94 | 708 | (context (* rocksdb-perfcontext)) |
709 | (exclude-zero-counters unsigned-char)) |
|
710 | ||
711 | (define-alien-routine rocksdb-perfcontext-metric unsigned-long |
|
712 | (context (* rocksdb-perfcontext)) (metric int)) |
|
713 | ||
365
49c3f3d11432
bug fixes and more tweaks for test macros
Richard Westhaver <ellis@rwest.io>
parents:
314
diff
changeset
|
714 | ;; TODO 2024-05-24: causes compile error - pass-by-struct not supported |
49c3f3d11432
bug fixes and more tweaks for test macros
Richard Westhaver <ellis@rwest.io>
parents:
314
diff
changeset
|
715 | ;; (define-alien-routine rocksdb-perfcontext-destroy void (* rocksdb-perfcontext)) |
94 | 716 | |
717 | ;;; Filter Policy |
|
718 | (define-alien-routine rocksdb-filterpolicy-destroy void (self (* rocksdb-filterpolicy))) |
|
719 | ||
720 | (define-alien-routine rocksdb-filterpolicy-create-bloom (* rocksdb-filterpolicy) |
|
721 | (bits-per-key double)) |
|
722 | ||
723 | (define-alien-routine rocksdb-filterpolicy-create-bloom-full (* rocksdb-filterpolicy) |
|
724 | (bits-per-key double)) |
|
725 | ||
726 | (define-alien-routine rocksdb-filterpolicy-create-ribbon (* rocksdb-filterpolicy) |
|
727 | (bloom-equivalent-bits-per-key double)) |
|
728 | ||
729 | (define-alien-routine rocksdb-filterpolicy-create-ribbon-hybrid (* rocksdb-filterpolicy) |
|
730 | (bloom-equivalent-bits-per-key double) |
|
731 | (bloom-before-level int)) |
|
732 | ||
272
0a5e37693fdf
db protocol stuff, prep for tao, tests, with-temp-db
Richard Westhaver <ellis@rwest.io>
parents:
271
diff
changeset
|
733 | ;;; Snapshot |
0a5e37693fdf
db protocol stuff, prep for tao, tests, with-temp-db
Richard Westhaver <ellis@rwest.io>
parents:
271
diff
changeset
|
734 | (define-alien-routine rocksdb-create-snapshot (* rocksdb-snapshot) |
0a5e37693fdf
db protocol stuff, prep for tao, tests, with-temp-db
Richard Westhaver <ellis@rwest.io>
parents:
271
diff
changeset
|
735 | (db (* rocksdb))) |
0a5e37693fdf
db protocol stuff, prep for tao, tests, with-temp-db
Richard Westhaver <ellis@rwest.io>
parents:
271
diff
changeset
|
736 | |
314
5ff2542d5f38
expose compaction pri: #[12604]
Richard Westhaver <ellis@rwest.io>
parents:
273
diff
changeset
|
737 | (define-alien-routine rocksdb-snapshot-get-sequence-number (unsigned 64) |
5ff2542d5f38
expose compaction pri: #[12604]
Richard Westhaver <ellis@rwest.io>
parents:
273
diff
changeset
|
738 | (snapshot (* rocksdb-snapshot))) |
5ff2542d5f38
expose compaction pri: #[12604]
Richard Westhaver <ellis@rwest.io>
parents:
273
diff
changeset
|
739 | |
272
0a5e37693fdf
db protocol stuff, prep for tao, tests, with-temp-db
Richard Westhaver <ellis@rwest.io>
parents:
271
diff
changeset
|
740 | (define-alien-routine rocksdb-release-snapshot void |
0a5e37693fdf
db protocol stuff, prep for tao, tests, with-temp-db
Richard Westhaver <ellis@rwest.io>
parents:
271
diff
changeset
|
741 | (db (* rocksdb)) |
0a5e37693fdf
db protocol stuff, prep for tao, tests, with-temp-db
Richard Westhaver <ellis@rwest.io>
parents:
271
diff
changeset
|
742 | (snapshot (* rocksdb-snapshot))) |