From 1e2c8be7b26d402f27e479957d2454690ff34345 Mon Sep 17 00:00:00 2001 From: Pob <124488540+pobthebuilder@users.noreply.github.com> Date: Thu, 19 Mar 2026 15:56:57 -0400 Subject: [PATCH 1/3] remove O_DIRECT since we don't have aligned data --- lib/persistentNodeCache.js | 5 ++++- src/persistentNodeCache.ts | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/persistentNodeCache.js b/lib/persistentNodeCache.js index 30623e0..bc03d48 100644 --- a/lib/persistentNodeCache.js +++ b/lib/persistentNodeCache.js @@ -128,6 +128,9 @@ class PersistentNodeCache extends node_cache_1.default { } const appendData = fs_1.default.readFileSync(this.appendFilePath, 'utf-8'); appendData.split(/\r?\n/).forEach((line) => { + if (line.length == 0) { + return; + } let data = this.serializer.deserialize(line); switch (data['cmd']) { case 'set': @@ -185,7 +188,7 @@ class PersistentNodeCache extends node_cache_1.default { } appendToFile(fileName, data) { this.changesSinceLastBackup = true; - const flags = fs_1.default.constants.O_WRONLY | fs_1.default.constants.O_DIRECT | fs_1.default.constants.O_APPEND; + const flags = fs_1.default.constants.O_WRONLY | fs_1.default.constants.O_APPEND; const mode = 0o666; if (this.appendFileDescriptor) { fs_1.default.write(this.appendFileDescriptor, data, 0, data.length, null, (writeErr, written, buffer) => { diff --git a/src/persistentNodeCache.ts b/src/persistentNodeCache.ts index 11e05ad..1a4fe26 100644 --- a/src/persistentNodeCache.ts +++ b/src/persistentNodeCache.ts @@ -219,7 +219,7 @@ export default class PersistentNodeCache extends NodeCache { private appendToFile(fileName: string, data: Buffer): void { this.changesSinceLastBackup = true; - const flags = fs.constants.O_WRONLY | fs.constants.O_DIRECT | fs.constants.O_APPEND; + const flags = fs.constants.O_WRONLY | fs.constants.O_APPEND; const mode = 0o666; if(this.appendFileDescriptor) { From 57e5766805d2d5ef9471201ed02485efda898c56 Mon Sep 17 00:00:00 2001 From: Pob <124488540+pobthebuilder@users.noreply.github.com> Date: Thu, 19 Mar 2026 15:58:04 -0400 Subject: [PATCH 2/3] fix type of data to satisfy the compiler --- src/persistentNodeCache.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/persistentNodeCache.ts b/src/persistentNodeCache.ts index 1a4fe26..588d90b 100644 --- a/src/persistentNodeCache.ts +++ b/src/persistentNodeCache.ts @@ -223,7 +223,7 @@ export default class PersistentNodeCache extends NodeCache { const mode = 0o666; if(this.appendFileDescriptor) { - fs.write(this.appendFileDescriptor, data, 0, data.length, null, (writeErr, written, buffer) => { + fs.write(this.appendFileDescriptor, data as Uint8Array, 0, data.length, null, (writeErr, written, buffer) => { if (writeErr) { console.error('Error writing to file:', writeErr); } @@ -236,7 +236,7 @@ export default class PersistentNodeCache extends NodeCache { return; } this.appendFileDescriptor = fd; - fs.write(fd, data, 0, data.length, null, (writeErr, written, buffer) => { + fs.write(fd, data as Uint8Array, 0, data.length, null, (writeErr, written, buffer) => { if (writeErr) { console.error('Error writing to file:', writeErr); } From c8d328f598bbfd7767812f64655485ee5e5b6214 Mon Sep 17 00:00:00 2001 From: Pob <124488540+pobthebuilder@users.noreply.github.com> Date: Thu, 19 Mar 2026 15:58:20 -0400 Subject: [PATCH 3/3] updated defs --- lib/waitFor.d.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/waitFor.d.ts b/lib/waitFor.d.ts index eb264a9..ddefdc8 100644 --- a/lib/waitFor.d.ts +++ b/lib/waitFor.d.ts @@ -1,5 +1,5 @@ -export declare const waitFor: (event: Event_1, emitter: EventEmitter, callback?: Callback) => Promise; -export declare const removeListener: (emitter: EventEmitterOff | EventEmitterRemoveListener, event: "error" | Event_1, listener: EventListener) => void; +export declare const waitFor: (event: Event, emitter: EventEmitter, callback?: Callback) => Promise; +export declare const removeListener: (emitter: EventEmitterOff | EventEmitterRemoveListener, event: Event | "error", listener: EventListener) => void; interface Callback { (error: any): void; }