@optimystic/db-p2p-storage-fs 1.15.0 → 1.17.0
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/README.md +142 -33
- package/dist/src/file-batch-backend.d.ts +69 -0
- package/dist/src/file-batch-backend.d.ts.map +1 -0
- package/dist/src/file-batch-backend.js +400 -0
- package/dist/src/file-batch-backend.js.map +1 -0
- package/dist/src/file-kv-store.d.ts +37 -3
- package/dist/src/file-kv-store.d.ts.map +1 -1
- package/dist/src/file-kv-store.js +100 -34
- package/dist/src/file-kv-store.js.map +1 -1
- package/dist/src/file-storage.d.ts +20 -58
- package/dist/src/file-storage.d.ts.map +1 -1
- package/dist/src/file-storage.js +16 -430
- package/dist/src/file-storage.js.map +1 -1
- package/dist/src/file-write-log.d.ts +361 -0
- package/dist/src/file-write-log.d.ts.map +1 -0
- package/dist/src/file-write-log.js +848 -0
- package/dist/src/file-write-log.js.map +1 -0
- package/dist/src/index.d.ts +3 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/store-lock.d.ts +42 -0
- package/dist/src/store-lock.d.ts.map +1 -0
- package/dist/src/store-lock.js +116 -0
- package/dist/src/store-lock.js.map +1 -0
- package/package.json +3 -3
- package/src/file-batch-backend.ts +430 -0
- package/src/file-kv-store.ts +112 -32
- package/src/file-storage.ts +22 -468
- package/src/file-write-log.ts +906 -0
- package/src/index.ts +3 -0
- package/src/store-lock.ts +123 -0
- package/dist/src/atomic-write.d.ts +0 -22
- package/dist/src/atomic-write.d.ts.map +0 -1
- package/dist/src/atomic-write.js +0 -90
- package/dist/src/atomic-write.js.map +0 -1
- package/src/atomic-write.ts +0 -89
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-write-log.js","sourceRoot":"","sources":["../../src/file-write-log.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC"}
|
package/dist/src/index.js
CHANGED
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export declare const STORE_LOCK_FILENAME = "store.lock";
|
|
2
|
+
/** What the lock file records about the process that took it. */
|
|
3
|
+
export interface StoreLockHolder {
|
|
4
|
+
readonly pid: number;
|
|
5
|
+
readonly hostname: string;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Thrown by every operation of a store whose directory another live process on this machine has
|
|
9
|
+
* open. Invariant 5 in `packages/db-p2p/docs/storage.md`: a store is owned by exactly one process,
|
|
10
|
+
* and the write-ahead log makes two writers in one file a corruption rather than a stale cache.
|
|
11
|
+
*/
|
|
12
|
+
export declare class StoreLockedError extends Error {
|
|
13
|
+
readonly lockPath: string;
|
|
14
|
+
readonly holder: StoreLockHolder;
|
|
15
|
+
constructor(lockPath: string, holder: StoreLockHolder);
|
|
16
|
+
}
|
|
17
|
+
export interface StoreLock {
|
|
18
|
+
readonly path: string;
|
|
19
|
+
/** Remove the lock file. Idempotent. */
|
|
20
|
+
release(): Promise<void>;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Take `<basePath>/store.lock` for this process. The file is created exclusively (`wx`) and holds
|
|
24
|
+
* `{ pid, hostname }`. An existing lock naming this machine and a live pid refuses the open with
|
|
25
|
+
* {@link StoreLockedError}; any other existing lock — another machine's, a dead pid's, or one whose
|
|
26
|
+
* content cannot be read — is stale and replaced. The liveness test is `process.kill(pid, 0)`, so
|
|
27
|
+
* only one machine is protected, which is the one case ever supported (two machines over one
|
|
28
|
+
* network share never were; Invariant 5).
|
|
29
|
+
*
|
|
30
|
+
* NOTE: the content is written in the same call that creates the file, but a second process that
|
|
31
|
+
* opens the directory in the microseconds between the create and the write reads an empty file,
|
|
32
|
+
* judges the lock stale and replaces it. Two processes starting over one directory at the same
|
|
33
|
+
* instant is already the violation the lock exists to refuse; if that race is ever seen, judge an
|
|
34
|
+
* unreadable lock by its age instead of replacing it at once.
|
|
35
|
+
* NOTE: the holder is identified by pid and hostname alone. A dead holder's pid reused by an
|
|
36
|
+
* unrelated process reads as live, and the open is refused until the lock file is removed by hand;
|
|
37
|
+
* a machine whose hostname changed between two starts reads its own live lock as another
|
|
38
|
+
* machine's and replaces it. Both need a start-time stamp in the lock to tell apart; add one if
|
|
39
|
+
* either is seen.
|
|
40
|
+
*/
|
|
41
|
+
export declare function acquireStoreLock(basePath: string): Promise<StoreLock>;
|
|
42
|
+
//# sourceMappingURL=store-lock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store-lock.d.ts","sourceRoot":"","sources":["../../src/store-lock.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAEhD,iEAAiE;AACjE,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC1B;AAED;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM;IAAE,QAAQ,CAAC,MAAM,EAAE,eAAe;gBAAlD,QAAQ,EAAE,MAAM,EAAW,MAAM,EAAE,eAAe;CAIvE;AAED,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,wCAAwC;IACxC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB;AAKD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAe3E"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { promises as fs } from 'fs';
|
|
2
|
+
import * as os from 'os';
|
|
3
|
+
import * as path from 'path';
|
|
4
|
+
import { createLogger } from './logger.js';
|
|
5
|
+
const log = createLogger('store-lock');
|
|
6
|
+
export const STORE_LOCK_FILENAME = 'store.lock';
|
|
7
|
+
/**
|
|
8
|
+
* Thrown by every operation of a store whose directory another live process on this machine has
|
|
9
|
+
* open. Invariant 5 in `packages/db-p2p/docs/storage.md`: a store is owned by exactly one process,
|
|
10
|
+
* and the write-ahead log makes two writers in one file a corruption rather than a stale cache.
|
|
11
|
+
*/
|
|
12
|
+
export class StoreLockedError extends Error {
|
|
13
|
+
lockPath;
|
|
14
|
+
holder;
|
|
15
|
+
constructor(lockPath, holder) {
|
|
16
|
+
super(`store at ${path.dirname(lockPath)} is open in process ${holder.pid} on ${holder.hostname}; a store is owned by one process at a time`);
|
|
17
|
+
this.lockPath = lockPath;
|
|
18
|
+
this.holder = holder;
|
|
19
|
+
this.name = 'StoreLockedError';
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
/** How many stale locks one open will replace before giving up on a directory whose lock keeps reappearing. */
|
|
23
|
+
const REPLACE_ATTEMPTS = 3;
|
|
24
|
+
/**
|
|
25
|
+
* Take `<basePath>/store.lock` for this process. The file is created exclusively (`wx`) and holds
|
|
26
|
+
* `{ pid, hostname }`. An existing lock naming this machine and a live pid refuses the open with
|
|
27
|
+
* {@link StoreLockedError}; any other existing lock — another machine's, a dead pid's, or one whose
|
|
28
|
+
* content cannot be read — is stale and replaced. The liveness test is `process.kill(pid, 0)`, so
|
|
29
|
+
* only one machine is protected, which is the one case ever supported (two machines over one
|
|
30
|
+
* network share never were; Invariant 5).
|
|
31
|
+
*
|
|
32
|
+
* NOTE: the content is written in the same call that creates the file, but a second process that
|
|
33
|
+
* opens the directory in the microseconds between the create and the write reads an empty file,
|
|
34
|
+
* judges the lock stale and replaces it. Two processes starting over one directory at the same
|
|
35
|
+
* instant is already the violation the lock exists to refuse; if that race is ever seen, judge an
|
|
36
|
+
* unreadable lock by its age instead of replacing it at once.
|
|
37
|
+
* NOTE: the holder is identified by pid and hostname alone. A dead holder's pid reused by an
|
|
38
|
+
* unrelated process reads as live, and the open is refused until the lock file is removed by hand;
|
|
39
|
+
* a machine whose hostname changed between two starts reads its own live lock as another
|
|
40
|
+
* machine's and replaces it. Both need a start-time stamp in the lock to tell apart; add one if
|
|
41
|
+
* either is seen.
|
|
42
|
+
*/
|
|
43
|
+
export async function acquireStoreLock(basePath) {
|
|
44
|
+
const lockPath = path.join(basePath, STORE_LOCK_FILENAME);
|
|
45
|
+
const self = { pid: process.pid, hostname: os.hostname() };
|
|
46
|
+
for (let attempt = 0; attempt < REPLACE_ATTEMPTS; attempt++) {
|
|
47
|
+
if (await tryCreate(lockPath, self)) {
|
|
48
|
+
return { path: lockPath, release: () => removeLock(lockPath) };
|
|
49
|
+
}
|
|
50
|
+
const holder = await readHolder(lockPath);
|
|
51
|
+
if (holder && holder.hostname === self.hostname && processExists(holder.pid)) {
|
|
52
|
+
throw new StoreLockedError(lockPath, holder);
|
|
53
|
+
}
|
|
54
|
+
log('replacing stale lock %s held by %o', lockPath, holder);
|
|
55
|
+
await removeLock(lockPath);
|
|
56
|
+
}
|
|
57
|
+
throw new Error(`could not take ${lockPath}: it was replaced ${REPLACE_ATTEMPTS} times by another opener`);
|
|
58
|
+
}
|
|
59
|
+
async function tryCreate(lockPath, holder) {
|
|
60
|
+
try {
|
|
61
|
+
await fs.writeFile(lockPath, JSON.stringify(holder), { flag: 'wx' });
|
|
62
|
+
return true;
|
|
63
|
+
}
|
|
64
|
+
catch (err) {
|
|
65
|
+
if (err.code === 'EEXIST')
|
|
66
|
+
return false;
|
|
67
|
+
throw err;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
/** The holder a lock file names, or `undefined` for a missing, unreadable or malformed one. */
|
|
71
|
+
async function readHolder(lockPath) {
|
|
72
|
+
let text;
|
|
73
|
+
try {
|
|
74
|
+
text = await fs.readFile(lockPath, 'utf8');
|
|
75
|
+
}
|
|
76
|
+
catch (err) {
|
|
77
|
+
if (err.code === 'ENOENT')
|
|
78
|
+
return undefined;
|
|
79
|
+
throw err;
|
|
80
|
+
}
|
|
81
|
+
try {
|
|
82
|
+
const parsed = JSON.parse(text);
|
|
83
|
+
return isHolder(parsed) ? parsed : undefined;
|
|
84
|
+
}
|
|
85
|
+
catch (err) {
|
|
86
|
+
if (err instanceof SyntaxError)
|
|
87
|
+
return undefined;
|
|
88
|
+
throw err;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
function isHolder(value) {
|
|
92
|
+
if (typeof value !== 'object' || value === null)
|
|
93
|
+
return false;
|
|
94
|
+
const { pid, hostname } = value;
|
|
95
|
+
return Number.isInteger(pid) && pid > 0 && typeof hostname === 'string';
|
|
96
|
+
}
|
|
97
|
+
/** Signal 0 tests for existence without sending anything; EPERM means the process exists but is not ours. */
|
|
98
|
+
function processExists(pid) {
|
|
99
|
+
try {
|
|
100
|
+
process.kill(pid, 0);
|
|
101
|
+
return true;
|
|
102
|
+
}
|
|
103
|
+
catch (err) {
|
|
104
|
+
return err.code === 'EPERM';
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
async function removeLock(lockPath) {
|
|
108
|
+
try {
|
|
109
|
+
await fs.unlink(lockPath);
|
|
110
|
+
}
|
|
111
|
+
catch (err) {
|
|
112
|
+
if (err.code !== 'ENOENT')
|
|
113
|
+
throw err;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
//# sourceMappingURL=store-lock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store-lock.js","sourceRoot":"","sources":["../../src/store-lock.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@optimystic/db-p2p-storage-fs",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.17.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Node.js filesystem storage backend for @optimystic/db-p2p",
|
|
6
6
|
"main": "dist/src/index.js",
|
|
@@ -48,8 +48,8 @@
|
|
|
48
48
|
"typescript": "^5.9.3"
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
|
-
"@optimystic/db-core": "^1.
|
|
52
|
-
"@optimystic/db-p2p": "^1.
|
|
51
|
+
"@optimystic/db-core": "^1.17.0",
|
|
52
|
+
"@optimystic/db-p2p": "^1.17.0",
|
|
53
53
|
"debug": "^4.4.3"
|
|
54
54
|
}
|
|
55
55
|
}
|