orez 0.0.46 → 0.0.48

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.
Files changed (65) hide show
  1. package/README.md +4 -8
  2. package/dist/admin/http-proxy.d.ts +31 -0
  3. package/dist/admin/http-proxy.d.ts.map +1 -0
  4. package/dist/admin/http-proxy.js +140 -0
  5. package/dist/admin/http-proxy.js.map +1 -0
  6. package/dist/admin/log-store.d.ts +22 -0
  7. package/dist/admin/log-store.d.ts.map +1 -0
  8. package/dist/admin/log-store.js +86 -0
  9. package/dist/admin/log-store.js.map +1 -0
  10. package/dist/admin/server.d.ts +19 -0
  11. package/dist/admin/server.d.ts.map +1 -0
  12. package/dist/admin/server.js +110 -0
  13. package/dist/admin/server.js.map +1 -0
  14. package/dist/admin/ui.d.ts +2 -0
  15. package/dist/admin/ui.d.ts.map +1 -0
  16. package/dist/admin/ui.js +683 -0
  17. package/dist/admin/ui.js.map +1 -0
  18. package/dist/cli.js +48 -1
  19. package/dist/cli.js.map +1 -1
  20. package/dist/config.d.ts +4 -0
  21. package/dist/config.d.ts.map +1 -1
  22. package/dist/config.js +4 -0
  23. package/dist/config.js.map +1 -1
  24. package/dist/index.d.ts +9 -0
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +211 -20
  27. package/dist/index.js.map +1 -1
  28. package/dist/log.d.ts +9 -0
  29. package/dist/log.d.ts.map +1 -1
  30. package/dist/log.js +24 -1
  31. package/dist/log.js.map +1 -1
  32. package/dist/pg-proxy.d.ts.map +1 -1
  33. package/dist/pg-proxy.js +19 -4
  34. package/dist/pg-proxy.js.map +1 -1
  35. package/dist/pglite-manager.d.ts +1 -0
  36. package/dist/pglite-manager.d.ts.map +1 -1
  37. package/dist/pglite-manager.js +8 -2
  38. package/dist/pglite-manager.js.map +1 -1
  39. package/dist/replication/change-tracker.d.ts.map +1 -1
  40. package/dist/replication/change-tracker.js +16 -29
  41. package/dist/replication/change-tracker.js.map +1 -1
  42. package/dist/replication/handler.d.ts.map +1 -1
  43. package/dist/replication/handler.js +42 -7
  44. package/dist/replication/handler.js.map +1 -1
  45. package/dist/vite-plugin.d.ts +3 -0
  46. package/dist/vite-plugin.d.ts.map +1 -1
  47. package/dist/vite-plugin.js +24 -0
  48. package/dist/vite-plugin.js.map +1 -1
  49. package/package.json +4 -2
  50. package/src/admin/http-proxy.ts +190 -0
  51. package/src/admin/log-store.ts +114 -0
  52. package/src/admin/server.ts +152 -0
  53. package/src/admin/ui.ts +684 -0
  54. package/src/cli.ts +62 -13
  55. package/src/config.ts +8 -0
  56. package/src/index.ts +239 -20
  57. package/src/log.ts +25 -1
  58. package/src/pg-proxy.ts +27 -5
  59. package/src/pglite-manager.ts +9 -2
  60. package/src/replication/change-tracker.ts +20 -30
  61. package/src/replication/handler.ts +54 -8
  62. package/src/replication/pgoutput-encoder.test.ts +217 -0
  63. package/src/replication/zero-compat.test.ts +232 -1
  64. package/src/shim/hooks.mjs +33 -0
  65. package/src/vite-plugin.ts +28 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui.js","sourceRoot":"","sources":["../../src/admin/ui.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -703,6 +703,11 @@ const main = defineCommand({
703
703
  description: 'use native @rocicorp/zero-sqlite3 instead of wasm bedrock-sqlite',
704
704
  default: false,
705
705
  },
706
+ 'log-env': {
707
+ type: 'boolean',
708
+ description: 'log ZERO_* and related environment variables on startup',
709
+ default: false,
710
+ },
706
711
  'on-db-ready': {
707
712
  type: 'string',
708
713
  description: 'command to run after db+proxy are ready, before zero-cache starts',
@@ -713,6 +718,21 @@ const main = defineCommand({
713
718
  description: 'command to run once all services are healthy',
714
719
  default: '',
715
720
  },
721
+ admin: {
722
+ type: 'boolean',
723
+ description: 'start admin web ui',
724
+ default: false,
725
+ },
726
+ 'admin-port': {
727
+ type: 'string',
728
+ description: 'admin ui port (default: auto)',
729
+ default: '0',
730
+ },
731
+ 'admin-logs': {
732
+ type: 'boolean',
733
+ description: 'write logs to .orez/logs/ (default: true when --admin)',
734
+ default: true,
735
+ },
716
736
  },
717
737
  subCommands: {
718
738
  s3: s3Command,
@@ -720,7 +740,8 @@ const main = defineCommand({
720
740
  pg_restore: pgRestoreCommand,
721
741
  },
722
742
  async run({ args }) {
723
- const { config, stop } = await startZeroLite({
743
+ const startTime = Date.now();
744
+ const { config, stop, logStore, zeroEnv, actions, httpLogStore } = await startZeroLite({
724
745
  pgPort: Number(args['pg-port']),
725
746
  zeroPort: Number(args['zero-port']),
726
747
  dataDir: args['data-dir'],
@@ -731,7 +752,11 @@ const main = defineCommand({
731
752
  skipZeroCache: args['skip-zero-cache'],
732
753
  disableWasmSqlite: args['disable-wasm-sqlite'],
733
754
  logLevel: args['log-level'] || undefined,
755
+ logEnv: args['log-env'],
734
756
  onDbReady: args['on-db-ready'],
757
+ admin: args.admin,
758
+ adminPort: Number(args['admin-port']),
759
+ adminLogs: args['admin-logs'],
735
760
  });
736
761
  let s3Server = null;
737
762
  if (args.s3) {
@@ -741,6 +766,26 @@ const main = defineCommand({
741
766
  dataDir: args['data-dir'],
742
767
  });
743
768
  }
769
+ let adminServer = null;
770
+ if (args.admin && logStore) {
771
+ const { findPort } = await import('./port.js');
772
+ const adminPort = Number(args['admin-port']) || config.zeroPort + 2;
773
+ const resolvedPort = await findPort(adminPort);
774
+ const { startAdminServer } = await import('./admin/server.js');
775
+ adminServer = await startAdminServer({
776
+ port: resolvedPort,
777
+ logStore,
778
+ config,
779
+ zeroEnv,
780
+ actions,
781
+ startTime,
782
+ httpLog: httpLogStore || undefined,
783
+ });
784
+ log.orez(`admin: http://127.0.0.1:${resolvedPort}`);
785
+ if (args['admin-logs']) {
786
+ log.orez(`logs: ${resolve(args['data-dir'], 'logs', 'orez.log')}`);
787
+ }
788
+ }
744
789
  log.orez('ready');
745
790
  log.orez(`pg: postgresql://${config.pgUser}:${config.pgPassword}@127.0.0.1:${config.pgPort}/postgres`);
746
791
  if (!config.skipZeroCache) {
@@ -764,11 +809,13 @@ const main = defineCommand({
764
809
  });
765
810
  }
766
811
  process.on('SIGINT', async () => {
812
+ adminServer?.close();
767
813
  s3Server?.close();
768
814
  await stop();
769
815
  process.exit(0);
770
816
  });
771
817
  process.on('SIGTERM', async () => {
818
+ adminServer?.close();
772
819
  s3Server?.close();
773
820
  await stop();
774
821
  process.exit(0);
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -12,8 +12,12 @@ export interface ZeroLiteConfig {
12
12
  disableWasmSqlite: boolean;
13
13
  logLevel: LogLevel;
14
14
  pgliteOptions: Partial<PGliteOptions>;
15
+ logEnv: boolean;
15
16
  onDbReady: string;
16
17
  beforeZero: ((db: import('@electric-sql/pglite').PGlite) => Promise<void>) | null;
18
+ admin: boolean;
19
+ adminPort: number;
20
+ adminLogs: boolean;
17
21
  }
18
22
  export declare function getConfig(overrides?: Partial<ZeroLiteConfig>): ZeroLiteConfig;
19
23
  export declare function getConnectionString(config: ZeroLiteConfig, dbName?: string): string;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEzD,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;AAE1D,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,OAAO,CAAA;IACtB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,QAAQ,EAAE,QAAQ,CAAA;IAClB,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,CAAA;IACrC,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,OAAO,sBAAsB,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAA;CAClF;AAED,wBAAgB,SAAS,CAAC,SAAS,GAAE,OAAO,CAAC,cAAc,CAAM,GAAG,cAAc,CAgBjF;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,SAAa,GAAG,MAAM,CAEvF"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEzD,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;AAE1D,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,OAAO,CAAA;IACtB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,QAAQ,EAAE,QAAQ,CAAA;IAClB,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,CAAA;IACrC,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,OAAO,sBAAsB,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAA;IACjF,KAAK,EAAE,OAAO,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,OAAO,CAAA;CACnB;AAED,wBAAgB,SAAS,CAAC,SAAS,GAAE,OAAO,CAAC,cAAc,CAAM,GAAG,cAAc,CAoBjF;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,SAAa,GAAG,MAAM,CAEvF"}
package/dist/config.js CHANGED
@@ -11,8 +11,12 @@ export function getConfig(overrides = {}) {
11
11
  disableWasmSqlite: overrides.disableWasmSqlite ?? false,
12
12
  logLevel: overrides.logLevel || 'warn',
13
13
  pgliteOptions: overrides.pgliteOptions || {},
14
+ logEnv: overrides.logEnv ?? false,
14
15
  onDbReady: overrides.onDbReady || '',
15
16
  beforeZero: overrides.beforeZero || null,
17
+ admin: overrides.admin ?? false,
18
+ adminPort: overrides.adminPort || 0,
19
+ adminLogs: overrides.adminLogs ?? true,
16
20
  };
17
21
  }
18
22
  export function getConnectionString(config, dbName = 'postgres') {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAoBA,MAAM,UAAU,SAAS,CAAC,YAAqC,EAAE;IAC/D,OAAO;QACL,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,OAAO;QACrC,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,IAAI;QAChC,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,IAAI;QACpC,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,MAAM;QAClC,UAAU,EAAE,SAAS,CAAC,UAAU,IAAI,UAAU;QAC9C,aAAa,EAAE,SAAS,CAAC,aAAa,IAAI,EAAE;QAC5C,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,uBAAuB;QACvD,aAAa,EAAE,SAAS,CAAC,aAAa,IAAI,KAAK;QAC/C,iBAAiB,EAAE,SAAS,CAAC,iBAAiB,IAAI,KAAK;QACvD,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,MAAM;QACtC,aAAa,EAAE,SAAS,CAAC,aAAa,IAAI,EAAE;QAC5C,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,EAAE;QACpC,UAAU,EAAE,SAAS,CAAC,UAAU,IAAI,IAAI;KACzC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAsB,EAAE,MAAM,GAAG,UAAU;IAC7E,OAAO,gBAAgB,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,cAAc,MAAM,CAAC,MAAM,IAAI,MAAM,EAAE,CAAA;AAClG,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAwBA,MAAM,UAAU,SAAS,CAAC,YAAqC,EAAE;IAC/D,OAAO;QACL,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,OAAO;QACrC,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,IAAI;QAChC,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,IAAI;QACpC,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,MAAM;QAClC,UAAU,EAAE,SAAS,CAAC,UAAU,IAAI,UAAU;QAC9C,aAAa,EAAE,SAAS,CAAC,aAAa,IAAI,EAAE;QAC5C,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,uBAAuB;QACvD,aAAa,EAAE,SAAS,CAAC,aAAa,IAAI,KAAK;QAC/C,iBAAiB,EAAE,SAAS,CAAC,iBAAiB,IAAI,KAAK;QACvD,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,MAAM;QACtC,aAAa,EAAE,SAAS,CAAC,aAAa,IAAI,EAAE;QAC5C,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,KAAK;QACjC,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,EAAE;QACpC,UAAU,EAAE,SAAS,CAAC,UAAU,IAAI,IAAI;QACxC,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,KAAK;QAC/B,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,CAAC;QACnC,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,IAAI;KACvC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAsB,EAAE,MAAM,GAAG,UAAU;IAC7E,OAAO,gBAAgB,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,cAAc,MAAM,CAAC,MAAM,IAAI,MAAM,EAAE,CAAA;AAClG,CAAC"}
package/dist/index.d.ts CHANGED
@@ -5,6 +5,8 @@
5
5
  * replaces docker-based postgresql and zero-cache with a single
6
6
  * `bun run` command.
7
7
  */
8
+ import type { HttpLogStore } from './admin/http-proxy.js';
9
+ import type { LogStore } from './admin/log-store.js';
8
10
  import type { ZeroLiteConfig } from './config.js';
9
11
  import type { PGlite } from '@electric-sql/pglite';
10
12
  export { getConfig, getConnectionString } from './config.js';
@@ -16,5 +18,12 @@ export declare function startZeroLite(overrides?: Partial<ZeroLiteConfig>): Prom
16
18
  instances: import("./pglite-manager.js").PGliteInstances;
17
19
  pgPort: number;
18
20
  zeroPort: number;
21
+ logStore: LogStore | null;
22
+ zeroEnv: Record<string, string>;
23
+ actions: {
24
+ restartZero: (() => Promise<void>) | undefined;
25
+ resetZero: (() => Promise<void>) | undefined;
26
+ };
27
+ httpLogStore: HttpLogStore | null;
19
28
  }>;
20
29
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAgBH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAElD,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAC5D,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAe3D,wBAAsB,aAAa,CAAC,SAAS,GAAE,OAAO,CAAC,cAAc,CAAM;;;;;;;GA+H1E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAuBH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAElD,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAC5D,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAe3D,wBAAsB,aAAa,CAAC,SAAS,GAAE,OAAO,CAAC,cAAc,CAAM;;;;;;;;;;;;;;GA0R1E"}
package/dist/index.js CHANGED
@@ -6,15 +6,15 @@
6
6
  * `bun run` command.
7
7
  */
8
8
  import { spawn } from 'node:child_process';
9
- import { existsSync, mkdirSync, readFileSync, unlinkSync, writeFileSync } from 'node:fs';
9
+ import { existsSync, mkdirSync, readFileSync, rmSync, unlinkSync, writeFileSync, } from 'node:fs';
10
10
  import { createRequire } from 'node:module';
11
11
  import { totalmem } from 'node:os';
12
12
  import { dirname, resolve } from 'node:path';
13
13
  import { fileURLToPath } from 'node:url';
14
14
  import { getConfig, getConnectionString } from './config.js';
15
- import { log, port, setLogLevel } from './log.js';
15
+ import { log, port, setLogLevel, addLogListener } from './log.js';
16
16
  import { startPgProxy } from './pg-proxy.js';
17
- import { createPGliteInstances, runMigrations } from './pglite-manager.js';
17
+ import { createInstance, createPGliteInstances, runMigrations } from './pglite-manager.js';
18
18
  import { findPort } from './port.js';
19
19
  import { installChangeTracking } from './replication/change-tracker.js';
20
20
  export { getConfig, getConnectionString } from './config.js';
@@ -36,6 +36,24 @@ function resolvePackage(pkg) {
36
36
  export async function startZeroLite(overrides = {}) {
37
37
  const config = getConfig(overrides);
38
38
  setLogLevel(config.logLevel);
39
+ // when admin ui enabled, create log store and capture all log output
40
+ const SOURCE_MAP = {
41
+ orez: 'orez',
42
+ pglite: 'pglite',
43
+ 'pg-proxy': 'proxy',
44
+ zero: 'zero',
45
+ 'zero-cache': 'zero',
46
+ 'orez/s3': 's3',
47
+ };
48
+ let logStore = null;
49
+ let removeLogListener = null;
50
+ if (config.admin) {
51
+ const { createLogStore } = await import('./admin/log-store.js');
52
+ logStore = createLogStore(config.dataDir, config.adminLogs);
53
+ removeLogListener = addLogListener((source, level, msg) => {
54
+ logStore.push(SOURCE_MAP[source] || source, level, msg);
55
+ });
56
+ }
39
57
  // find available ports
40
58
  const pgPort = await findPort(config.pgPort);
41
59
  const zeroPort = config.skipZeroCache
@@ -59,7 +77,7 @@ export async function startZeroLite(overrides = {}) {
59
77
  await installChangeTracking(db);
60
78
  // start tcp proxy (routes connections to correct instance by database name)
61
79
  const pgServer = await startPgProxy(instances, config);
62
- log.orez(`db up ${port(pgPort, 'green')}`);
80
+ log.pglite(`postgres up ${port(pgPort, 'green')}`);
63
81
  if (migrationsApplied > 0)
64
82
  log.orez(`${migrationsApplied} migration${migrationsApplied === 1 ? '' : 's'} applied`);
65
83
  // seed data if needed
@@ -107,18 +125,134 @@ export async function startZeroLite(overrides = {}) {
107
125
  }
108
126
  // clean up stale lock files from previous crash (keep replica for fast restart)
109
127
  cleanupStaleLockFiles(config);
110
- // start zero-cache
128
+ // http proxy for admin traffic logging
129
+ let httpLogStore = null;
130
+ let httpProxyServer = null;
131
+ let zeroInternalPort = zeroPort;
132
+ if (config.admin && !config.skipZeroCache) {
133
+ const { createHttpLogStore } = await import('./admin/http-proxy.js');
134
+ httpLogStore = createHttpLogStore();
135
+ zeroInternalPort = await findPort(zeroPort + 100);
136
+ }
137
+ // start zero-cache with auto-recovery for stale change db
111
138
  let zeroCacheProcess = null;
139
+ let zeroEnv = {};
140
+ const cdbResets = { count: 0, lastReset: 0 };
141
+ const MAX_CDB_RESETS = 10;
142
+ const MIN_RESET_INTERVAL_MS = 60_000;
112
143
  if (!config.skipZeroCache) {
113
- zeroCacheProcess = await startZeroCache(config);
114
- await waitForZeroCache(config);
144
+ let currentResult = await startZeroCache(config, zeroInternalPort);
145
+ zeroCacheProcess = currentResult.child;
146
+ zeroEnv = currentResult.env;
147
+ // watch for stale changeLog crashes and auto-recover
148
+ const attachCdbRecovery = (result) => {
149
+ result.child.on('exit', async (code) => {
150
+ if (code === 0 || code === null)
151
+ return;
152
+ if (!result.stderrBuf.includes('changeLog_pkey'))
153
+ return;
154
+ const now = Date.now();
155
+ if (cdbResets.count >= MAX_CDB_RESETS) {
156
+ log.zero('change db reset limit reached, not retrying');
157
+ return;
158
+ }
159
+ const elapsed = now - cdbResets.lastReset;
160
+ if (elapsed < MIN_RESET_INTERVAL_MS) {
161
+ log.zero(`change db reset too soon (${Math.round(elapsed / 1000)}s ago), not retrying`);
162
+ return;
163
+ }
164
+ cdbResets.count++;
165
+ cdbResets.lastReset = now;
166
+ log.zero(`stale change db detected, resetting (${cdbResets.count}/${MAX_CDB_RESETS})`);
167
+ try {
168
+ await instances.cdb.close();
169
+ const cdbPath = resolve(config.dataDir, 'pgdata-cdb');
170
+ rmSync(cdbPath, { recursive: true, force: true });
171
+ instances.cdb = await createInstance(config, 'cdb', false);
172
+ currentResult = await startZeroCache(config, zeroInternalPort);
173
+ zeroCacheProcess = currentResult.child;
174
+ attachCdbRecovery(currentResult);
175
+ await waitForZeroCache(config, undefined, zeroInternalPort);
176
+ log.zero(`recovered, ready ${port(config.zeroPort, 'magenta')}`);
177
+ }
178
+ catch (err) {
179
+ log.zero(`recovery failed: ${err}`);
180
+ }
181
+ });
182
+ };
183
+ attachCdbRecovery(currentResult);
184
+ await waitForZeroCache(config, undefined, zeroInternalPort);
115
185
  log.zero(`ready ${port(config.zeroPort, 'magenta')}`);
186
+ // start http proxy for admin traffic logging
187
+ if (httpLogStore) {
188
+ const { startHttpProxy } = await import('./admin/http-proxy.js');
189
+ httpProxyServer = await startHttpProxy({
190
+ listenPort: zeroPort,
191
+ targetPort: zeroInternalPort,
192
+ httpLog: httpLogStore,
193
+ });
194
+ }
116
195
  }
117
196
  else {
118
197
  log.orez('skip zero-cache');
119
198
  }
199
+ // admin action handlers
200
+ const actions = {
201
+ restartZero: config.skipZeroCache
202
+ ? undefined
203
+ : async () => {
204
+ if (zeroCacheProcess && !zeroCacheProcess.killed) {
205
+ zeroCacheProcess.kill('SIGTERM');
206
+ await new Promise((r) => {
207
+ const t = setTimeout(() => {
208
+ zeroCacheProcess?.kill('SIGKILL');
209
+ r();
210
+ }, 3000);
211
+ zeroCacheProcess.on('exit', () => {
212
+ clearTimeout(t);
213
+ r();
214
+ });
215
+ });
216
+ }
217
+ const zc = await startZeroCache(config, zeroInternalPort);
218
+ zeroCacheProcess = zc.child;
219
+ await waitForZeroCache(config, undefined, zeroInternalPort);
220
+ log.zero(`restarted ${port(config.zeroPort, 'magenta')}`);
221
+ },
222
+ resetZero: config.skipZeroCache
223
+ ? undefined
224
+ : async () => {
225
+ if (zeroCacheProcess && !zeroCacheProcess.killed) {
226
+ zeroCacheProcess.kill('SIGTERM');
227
+ await new Promise((r) => {
228
+ const t = setTimeout(() => {
229
+ zeroCacheProcess?.kill('SIGKILL');
230
+ r();
231
+ }, 3000);
232
+ zeroCacheProcess.on('exit', () => {
233
+ clearTimeout(t);
234
+ r();
235
+ });
236
+ });
237
+ }
238
+ const replicaPath = resolve(config.dataDir, 'zero-replica.db');
239
+ for (const suffix of ['', '-wal', '-shm', '-wal2']) {
240
+ try {
241
+ if (existsSync(replicaPath + suffix))
242
+ unlinkSync(replicaPath + suffix);
243
+ }
244
+ catch { }
245
+ }
246
+ const zc = await startZeroCache(config, zeroInternalPort);
247
+ zeroCacheProcess = zc.child;
248
+ await waitForZeroCache(config, undefined, zeroInternalPort);
249
+ log.zero(`reset and restarted ${port(config.zeroPort, 'magenta')}`);
250
+ },
251
+ };
120
252
  const stop = async () => {
121
253
  log.debug.orez('shutting down');
254
+ removeLogListener?.();
255
+ httpProxyServer?.close();
122
256
  if (zeroCacheProcess && !zeroCacheProcess.killed) {
123
257
  zeroCacheProcess.kill('SIGTERM');
124
258
  // wait up to 3s for graceful exit, then force kill
@@ -143,7 +277,18 @@ export async function startZeroLite(overrides = {}) {
143
277
  ]);
144
278
  log.debug.orez('stopped');
145
279
  };
146
- return { config, stop, db, instances, pgPort: config.pgPort, zeroPort: config.zeroPort };
280
+ return {
281
+ config,
282
+ stop,
283
+ db,
284
+ instances,
285
+ pgPort: config.pgPort,
286
+ zeroPort: config.zeroPort,
287
+ logStore,
288
+ zeroEnv,
289
+ actions,
290
+ httpLogStore,
291
+ };
147
292
  }
148
293
  function cleanupStaleLockFiles(config) {
149
294
  const replicaPath = resolve(config.dataDir, 'zero-replica.db');
@@ -208,7 +353,7 @@ function writeSqliteShim() {
208
353
  writeFileSync(registerPath, registerTemplate.replace(/__HOOKS_URL__/g, `file://${hooksPath}`));
209
354
  return registerPath;
210
355
  }
211
- async function startZeroCache(config) {
356
+ async function startZeroCache(config, portOverride) {
212
357
  // resolve @rocicorp/zero entry for finding zero-cache modules
213
358
  const zeroEntry = resolvePackage('@rocicorp/zero');
214
359
  if (!zeroEntry) {
@@ -223,7 +368,7 @@ async function startZeroCache(config) {
223
368
  // defaults that can be overridden by user env
224
369
  const defaults = {
225
370
  NODE_ENV: 'development',
226
- ZERO_LOG_LEVEL: config.logLevel,
371
+ ZERO_LOG_LEVEL: 'info',
227
372
  ZERO_NUM_SYNC_WORKERS: '1',
228
373
  // disable query planner — it relies on scanStatus which causes infinite
229
374
  // loops with wasm sqlite and has caused freezes with native too.
@@ -248,7 +393,7 @@ async function startZeroCache(config) {
248
393
  ZERO_CVR_DB: cvrUrl,
249
394
  ZERO_CHANGE_DB: cdbUrl,
250
395
  ZERO_REPLICA_FILE: resolve(config.dataDir, 'zero-replica.db'),
251
- ZERO_PORT: String(config.zeroPort),
396
+ ZERO_PORT: String(portOverride || config.zeroPort),
252
397
  };
253
398
  const zeroCacheBin = resolve(zeroEntry, '..', 'cli.js');
254
399
  if (!existsSync(zeroCacheBin)) {
@@ -269,28 +414,74 @@ async function startZeroCache(config) {
269
414
  else {
270
415
  env.NODE_OPTIONS = `--max-old-space-size=${heapMB} ${existing}`.trim();
271
416
  }
417
+ // log env vars if --log-env was passed
418
+ if (config.logEnv) {
419
+ const zeroVars = Object.entries(env)
420
+ .filter(([key]) => key.startsWith('ZERO_') || key === 'NODE_ENV')
421
+ .sort(([a], [b]) => a.localeCompare(b));
422
+ log.orez('zero-cache env:');
423
+ for (const [key, value] of zeroVars) {
424
+ log.orez(` ${key}=${value}`);
425
+ }
426
+ }
272
427
  const child = spawn(zeroCacheBin, [], {
273
428
  env,
274
429
  stdio: ['ignore', 'pipe', 'pipe'],
275
430
  });
431
+ // zero-cache uses structured logging when piped (not a tty).
432
+ // multiline format: timestamp + "[" on one line, context lines, "] message" on another.
433
+ // single-line format: timestamp + [ context ] message, or timestamp + key=val,... message
434
+ // we buffer multiline blocks and extract just the message.
435
+ const timestampRe = /^\d{4}-\d{2}-\d{2}T[\d:.+\-Z]+\s*/;
436
+ let inBlock = false;
437
+ const zeroLog = (line) => {
438
+ let stripped = line.replace(timestampRe, '');
439
+ // start of multiline context block: line ends with "[" (possibly after timestamp)
440
+ if (!inBlock && /^\[?\s*$/.test(stripped)) {
441
+ inBlock = true;
442
+ return;
443
+ }
444
+ // inside multiline block: skip context lines, look for "] message"
445
+ if (inBlock) {
446
+ const closeMatch = stripped.match(/^\]\s*(.*)$/);
447
+ if (closeMatch) {
448
+ inBlock = false;
449
+ const msg = closeMatch[1].trim();
450
+ if (msg)
451
+ log.zero(msg);
452
+ }
453
+ // context continuation lines like "'pid=8278'," — skip
454
+ return;
455
+ }
456
+ // single-line: strip inline [ context ] and key=val prefixes
457
+ stripped = stripped.replace(/\[.*?\]\s*/g, '');
458
+ stripped = stripped.replace(/^(?:\w+=\S+,)*\w+=\S+\s+/, '');
459
+ stripped = stripped.trim();
460
+ if (!stripped || /^[\[\]',\s]*$/.test(stripped))
461
+ return;
462
+ log.zero(stripped);
463
+ };
276
464
  child.stdout?.on('data', (data) => {
277
465
  const lines = data.toString().trim().split('\n');
278
466
  for (const line of lines) {
279
- log.debug.zero(line);
467
+ zeroLog(line);
280
468
  }
281
469
  });
282
- let stderrBuf = '';
470
+ const result = { child, env, stderrBuf: '' };
283
471
  child.stderr?.on('data', (data) => {
284
472
  const chunk = data.toString();
285
- stderrBuf += chunk;
473
+ result.stderrBuf += chunk;
286
474
  const lines = chunk.trim().split('\n');
287
475
  for (const line of lines) {
288
- log.debug.zero(line);
476
+ zeroLog(line);
289
477
  }
290
478
  });
291
479
  child.on('exit', (code) => {
292
480
  if (code !== 0 && code !== null) {
293
- if (stderrBuf.includes('Could not locate the bindings file')) {
481
+ // changeLog_pkey errors are handled by the recovery logic in startZeroLite
482
+ if (result.stderrBuf.includes('changeLog_pkey'))
483
+ return;
484
+ if (result.stderrBuf.includes('Could not locate the bindings file')) {
294
485
  log.zero('native @rocicorp/zero-sqlite3 not found — native deps were not compiled.\n' +
295
486
  'either:\n' +
296
487
  ' • remove --disable-wasm-sqlite to use the built-in wasm sqlite\n' +
@@ -298,7 +489,7 @@ async function startZeroCache(config) {
298
489
  ' or add "trustedDependencies": ["@rocicorp/zero-sqlite3"] to package.json');
299
490
  }
300
491
  else {
301
- const lastLines = stderrBuf.trim().split('\n').slice(-5).join('\n');
492
+ const lastLines = result.stderrBuf.trim().split('\n').slice(-5).join('\n');
302
493
  if (lastLines) {
303
494
  log.zero(`exited with code ${code}:\n${lastLines}`);
304
495
  }
@@ -308,11 +499,11 @@ async function startZeroCache(config) {
308
499
  }
309
500
  }
310
501
  });
311
- return child;
502
+ return result;
312
503
  }
313
- async function waitForZeroCache(config, timeoutMs = 120000) {
504
+ async function waitForZeroCache(config, timeoutMs = 120000, portOverride) {
314
505
  const start = Date.now();
315
- const url = `http://127.0.0.1:${config.zeroPort}/`;
506
+ const url = `http://127.0.0.1:${portOverride || config.zeroPort}/`;
316
507
  while (Date.now() - start < timeoutMs) {
317
508
  try {
318
509
  const res = await fetch(url);