@ocap/statedb-sqlite 1.29.5 → 1.29.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/db.d.mts +1 -0
- package/esm/db.mjs +5 -1
- package/esm/package.mjs +2 -1
- package/lib/db.cjs +5 -1
- package/lib/db.d.cts +1 -0
- package/lib/package.cjs +2 -1
- package/package.json +8 -7
package/esm/db.d.mts
CHANGED
|
@@ -74,6 +74,7 @@ declare class SqliteStateDB extends StateDB implements IStateDB {
|
|
|
74
74
|
*/
|
|
75
75
|
runAsLambda<T>(fn: (txn: Transaction<Database>) => T | Promise<T>, options?: {
|
|
76
76
|
retryLimit?: number;
|
|
77
|
+
onCommit?: (commitHash?: string) => void | Promise<void>;
|
|
77
78
|
}): Promise<T>;
|
|
78
79
|
/**
|
|
79
80
|
* Reset all tables (for testing)
|
package/esm/db.mjs
CHANGED
|
@@ -217,9 +217,13 @@ var SqliteStateDB = class extends StateDB {
|
|
|
217
217
|
const { retryLimit = 2 } = options;
|
|
218
218
|
let lastError;
|
|
219
219
|
for (let attempt = 0; attempt <= retryLimit; attempt++) try {
|
|
220
|
-
|
|
220
|
+
const result = await this.db.transaction().execute(async (txn) => {
|
|
221
221
|
return await fn(txn);
|
|
222
222
|
});
|
|
223
|
+
if (options.onCommit) try {
|
|
224
|
+
await options.onCommit();
|
|
225
|
+
} catch (_err) {}
|
|
226
|
+
return result;
|
|
223
227
|
} catch (err) {
|
|
224
228
|
lastError = err;
|
|
225
229
|
const code = err?.code;
|
package/esm/package.mjs
CHANGED
|
@@ -51,7 +51,8 @@ var package_default = {
|
|
|
51
51
|
"lint": "biome check",
|
|
52
52
|
"lint:fix": "biome check --write",
|
|
53
53
|
"test": "bun test",
|
|
54
|
-
"coverage": "npm run test -- --coverage"
|
|
54
|
+
"coverage": "npm run test -- --coverage",
|
|
55
|
+
"clean": "rm -rf lib esm"
|
|
55
56
|
},
|
|
56
57
|
dependencies: {
|
|
57
58
|
"@ocap/state": "workspace:*",
|
package/lib/db.cjs
CHANGED
|
@@ -219,9 +219,13 @@ var SqliteStateDB = class extends _ocap_statedb.StateDB {
|
|
|
219
219
|
const { retryLimit = 2 } = options;
|
|
220
220
|
let lastError;
|
|
221
221
|
for (let attempt = 0; attempt <= retryLimit; attempt++) try {
|
|
222
|
-
|
|
222
|
+
const result = await this.db.transaction().execute(async (txn) => {
|
|
223
223
|
return await fn(txn);
|
|
224
224
|
});
|
|
225
|
+
if (options.onCommit) try {
|
|
226
|
+
await options.onCommit();
|
|
227
|
+
} catch (_err) {}
|
|
228
|
+
return result;
|
|
225
229
|
} catch (err) {
|
|
226
230
|
lastError = err;
|
|
227
231
|
const code = err?.code;
|
package/lib/db.d.cts
CHANGED
|
@@ -74,6 +74,7 @@ declare class SqliteStateDB extends StateDB implements IStateDB {
|
|
|
74
74
|
*/
|
|
75
75
|
runAsLambda<T>(fn: (txn: Transaction<Database>) => T | Promise<T>, options?: {
|
|
76
76
|
retryLimit?: number;
|
|
77
|
+
onCommit?: (commitHash?: string) => void | Promise<void>;
|
|
77
78
|
}): Promise<T>;
|
|
78
79
|
/**
|
|
79
80
|
* Reset all tables (for testing)
|
package/lib/package.cjs
CHANGED
|
@@ -52,7 +52,8 @@ var package_default = {
|
|
|
52
52
|
"lint": "biome check",
|
|
53
53
|
"lint:fix": "biome check --write",
|
|
54
54
|
"test": "bun test",
|
|
55
|
-
"coverage": "npm run test -- --coverage"
|
|
55
|
+
"coverage": "npm run test -- --coverage",
|
|
56
|
+
"clean": "rm -rf lib esm"
|
|
56
57
|
},
|
|
57
58
|
dependencies: {
|
|
58
59
|
"@ocap/state": "workspace:*",
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ocap/statedb-sqlite",
|
|
3
3
|
"description": "OCAP statedb adapter that uses SQLite as backend",
|
|
4
|
-
"version": "1.29.
|
|
4
|
+
"version": "1.29.7",
|
|
5
5
|
"author": "wangshijun <shijun@arcblock.io> (https://www.arcblock.io)",
|
|
6
6
|
"bugs": {
|
|
7
7
|
"url": "https://github.com/ArcBlock/blockchain/issues",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"wangshijun <shijun@arcblock.io> (https://www.arcblock.io)"
|
|
15
15
|
],
|
|
16
16
|
"devDependencies": {
|
|
17
|
-
"@ocap/statedb-test": "1.29.
|
|
17
|
+
"@ocap/statedb-test": "1.29.7"
|
|
18
18
|
},
|
|
19
19
|
"homepage": "https://github.com/ArcBlock/blockchain/tree/master/statedb/sqlite",
|
|
20
20
|
"keywords": [
|
|
@@ -59,13 +59,14 @@
|
|
|
59
59
|
"lint": "biome check",
|
|
60
60
|
"lint:fix": "biome check --write",
|
|
61
61
|
"test": "bun test",
|
|
62
|
-
"coverage": "npm run test -- --coverage"
|
|
62
|
+
"coverage": "npm run test -- --coverage",
|
|
63
|
+
"clean": "rm -rf lib esm"
|
|
63
64
|
},
|
|
64
65
|
"dependencies": {
|
|
65
|
-
"@ocap/state": "1.29.
|
|
66
|
-
"@ocap/statedb": "1.29.
|
|
67
|
-
"@ocap/types": "1.29.
|
|
68
|
-
"@ocap/util": "1.29.
|
|
66
|
+
"@ocap/state": "1.29.7",
|
|
67
|
+
"@ocap/statedb": "1.29.7",
|
|
68
|
+
"@ocap/types": "1.29.7",
|
|
69
|
+
"@ocap/util": "1.29.7",
|
|
69
70
|
"debug": "^4.4.3",
|
|
70
71
|
"better-sqlite3": "^11.8.1",
|
|
71
72
|
"kysely": "^0.27.0",
|