chkit 0.1.2-beta.7 → 0.2.0-beta.12
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 +69 -56
- package/dist/bin/chkit.js +82 -31
- package/dist/bin/chkit.js.map +1 -1
- package/dist/commands/check/output.js +1 -1
- package/dist/commands/check/output.js.map +1 -1
- package/dist/commands/drift/command.d.ts.map +1 -1
- package/dist/commands/drift/command.js +9 -0
- package/dist/commands/drift/command.js.map +1 -1
- package/dist/commands/drift/compare.d.ts +52 -4
- package/dist/commands/drift/compare.d.ts.map +1 -1
- package/dist/commands/drift/compare.js +258 -49
- package/dist/commands/drift/compare.js.map +1 -1
- package/dist/commands/drift/payload.d.ts +1 -0
- package/dist/commands/drift/payload.d.ts.map +1 -1
- package/dist/commands/drift/payload.js +59 -10
- package/dist/commands/drift/payload.js.map +1 -1
- package/dist/commands/generate/command.d.ts.map +1 -1
- package/dist/commands/generate/command.js +73 -33
- package/dist/commands/generate/command.js.map +1 -1
- package/dist/commands/generate/cutover.d.ts +56 -0
- package/dist/commands/generate/cutover.d.ts.map +1 -0
- package/dist/commands/generate/cutover.js +138 -0
- package/dist/commands/generate/cutover.js.map +1 -0
- package/dist/commands/generate/output.d.ts +3 -2
- package/dist/commands/generate/output.d.ts.map +1 -1
- package/dist/commands/generate/output.js +17 -2
- package/dist/commands/generate/output.js.map +1 -1
- package/dist/commands/generate/plan-pipeline.d.ts.map +1 -1
- package/dist/commands/generate/plan-pipeline.js +35 -36
- package/dist/commands/generate/plan-pipeline.js.map +1 -1
- package/dist/commands/init.d.ts +2 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +21 -4
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/migrate/abandon.d.ts +39 -0
- package/dist/commands/migrate/abandon.d.ts.map +1 -0
- package/dist/commands/migrate/abandon.js +76 -0
- package/dist/commands/migrate/abandon.js.map +1 -0
- package/dist/commands/migrate/apply.d.ts +10 -1
- package/dist/commands/migrate/apply.d.ts.map +1 -1
- package/dist/commands/migrate/apply.js +108 -10
- package/dist/commands/migrate/apply.js.map +1 -1
- package/dist/commands/migrate/async-apply.d.ts +11 -3
- package/dist/commands/migrate/async-apply.d.ts.map +1 -1
- package/dist/commands/migrate/async-apply.js +113 -27
- package/dist/commands/migrate/async-apply.js.map +1 -1
- package/dist/commands/migrate/command.d.ts +46 -1
- package/dist/commands/migrate/command.d.ts.map +1 -1
- package/dist/commands/migrate/command.js +159 -35
- package/dist/commands/migrate/command.js.map +1 -1
- package/dist/commands/migrate/empty.d.ts +8 -0
- package/dist/commands/migrate/empty.d.ts.map +1 -0
- package/dist/commands/migrate/empty.js +17 -0
- package/dist/commands/migrate/empty.js.map +1 -0
- package/dist/commands/migrate/errors.d.ts +22 -0
- package/dist/commands/migrate/errors.d.ts.map +1 -0
- package/dist/commands/migrate/errors.js +31 -0
- package/dist/commands/migrate/errors.js.map +1 -0
- package/dist/commands/migrate/output.d.ts +31 -0
- package/dist/commands/migrate/output.d.ts.map +1 -1
- package/dist/commands/migrate/output.js +120 -9
- package/dist/commands/migrate/output.js.map +1 -1
- package/dist/commands/migrate/prompts.d.ts +1 -0
- package/dist/commands/migrate/prompts.d.ts.map +1 -1
- package/dist/commands/migrate/prompts.js +3 -0
- package/dist/commands/migrate/prompts.js.map +1 -1
- package/dist/commands/migrate/recovery.d.ts +90 -0
- package/dist/commands/migrate/recovery.d.ts.map +1 -0
- package/dist/commands/migrate/recovery.js +163 -0
- package/dist/commands/migrate/recovery.js.map +1 -0
- package/dist/commands/migrate/retry.d.ts +37 -0
- package/dist/commands/migrate/retry.d.ts.map +1 -0
- package/dist/commands/migrate/retry.js +46 -0
- package/dist/commands/migrate/retry.js.map +1 -0
- package/dist/commands/migrate/settings.d.ts +8 -0
- package/dist/commands/migrate/settings.d.ts.map +1 -0
- package/dist/commands/migrate/settings.js +40 -0
- package/dist/commands/migrate/settings.js.map +1 -0
- package/dist/commands/plugin.d.ts.map +1 -1
- package/dist/commands/plugin.js +28 -4
- package/dist/commands/plugin.js.map +1 -1
- package/dist/commands/query.d.ts.map +1 -1
- package/dist/commands/query.js +11 -15
- package/dist/commands/query.js.map +1 -1
- package/dist/commands/registry.d.ts +2 -0
- package/dist/commands/registry.d.ts.map +1 -0
- package/dist/commands/registry.js +228 -0
- package/dist/commands/registry.js.map +1 -0
- package/dist/commands/snapshot/command.d.ts +3 -0
- package/dist/commands/snapshot/command.d.ts.map +1 -0
- package/dist/commands/snapshot/command.js +32 -0
- package/dist/commands/snapshot/command.js.map +1 -0
- package/dist/commands/snapshot/output.d.ts +24 -0
- package/dist/commands/snapshot/output.d.ts.map +1 -0
- package/dist/commands/snapshot/output.js +86 -0
- package/dist/commands/snapshot/output.js.map +1 -0
- package/dist/commands/snapshot/rebuild.d.ts +19 -0
- package/dist/commands/snapshot/rebuild.d.ts.map +1 -0
- package/dist/commands/snapshot/rebuild.js +94 -0
- package/dist/commands/snapshot/rebuild.js.map +1 -0
- package/dist/internal-plugins/core/plugin.d.ts.map +1 -1
- package/dist/internal-plugins/core/plugin.js +2 -0
- package/dist/internal-plugins/core/plugin.js.map +1 -1
- package/dist/registry/build.d.ts +17 -0
- package/dist/registry/build.d.ts.map +1 -0
- package/dist/registry/build.js +94 -0
- package/dist/registry/build.js.map +1 -0
- package/dist/registry/dependencies.d.ts +19 -0
- package/dist/registry/dependencies.d.ts.map +1 -0
- package/dist/registry/dependencies.js +105 -0
- package/dist/registry/dependencies.js.map +1 -0
- package/dist/registry/files.d.ts +4 -0
- package/dist/registry/files.d.ts.map +1 -0
- package/dist/registry/files.js +33 -0
- package/dist/registry/files.js.map +1 -0
- package/dist/registry/install.d.ts +55 -0
- package/dist/registry/install.d.ts.map +1 -0
- package/dist/registry/install.js +175 -0
- package/dist/registry/install.js.map +1 -0
- package/dist/registry/model.d.ts +172 -0
- package/dist/registry/model.d.ts.map +1 -0
- package/dist/registry/model.js +161 -0
- package/dist/registry/model.js.map +1 -0
- package/dist/registry/project-config.d.ts +18 -0
- package/dist/registry/project-config.d.ts.map +1 -0
- package/dist/registry/project-config.js +337 -0
- package/dist/registry/project-config.js.map +1 -0
- package/dist/registry/resolve.d.ts +7 -0
- package/dist/registry/resolve.d.ts.map +1 -0
- package/dist/registry/resolve.js +136 -0
- package/dist/registry/resolve.js.map +1 -0
- package/dist/runtime/argv.d.ts +3 -0
- package/dist/runtime/argv.d.ts.map +1 -0
- package/dist/runtime/argv.js +29 -0
- package/dist/runtime/argv.js.map +1 -0
- package/dist/runtime/command-dispatch.d.ts +2 -1
- package/dist/runtime/command-dispatch.d.ts.map +1 -1
- package/dist/runtime/command-dispatch.js +15 -7
- package/dist/runtime/command-dispatch.js.map +1 -1
- package/dist/runtime/config-merge.d.ts.map +1 -1
- package/dist/runtime/config-merge.js +2 -1
- package/dist/runtime/config-merge.js.map +1 -1
- package/dist/runtime/config.d.ts.map +1 -1
- package/dist/runtime/config.js +2 -1
- package/dist/runtime/config.js.map +1 -1
- package/dist/runtime/global-flags.d.ts +4 -0
- package/dist/runtime/global-flags.d.ts.map +1 -1
- package/dist/runtime/global-flags.js +1 -0
- package/dist/runtime/global-flags.js.map +1 -1
- package/dist/runtime/help.d.ts +1 -1
- package/dist/runtime/help.d.ts.map +1 -1
- package/dist/runtime/help.js +13 -4
- package/dist/runtime/help.js.map +1 -1
- package/dist/runtime/journal-store.d.ts.map +1 -1
- package/dist/runtime/journal-store.js +178 -42
- package/dist/runtime/journal-store.js.map +1 -1
- package/dist/runtime/json-output.d.ts +15 -1
- package/dist/runtime/json-output.d.ts.map +1 -1
- package/dist/runtime/json-output.js +43 -2
- package/dist/runtime/json-output.js.map +1 -1
- package/dist/runtime/migration-store.d.ts +1 -1
- package/dist/runtime/migration-store.d.ts.map +1 -1
- package/dist/runtime/migration-store.js +17 -16
- package/dist/runtime/migration-store.js.map +1 -1
- package/dist/runtime/plugin-runtime/executor-debug.d.ts.map +1 -1
- package/dist/runtime/plugin-runtime/executor-debug.js +10 -8
- package/dist/runtime/plugin-runtime/executor-debug.js.map +1 -1
- package/dist/runtime/plugin-runtime/loader.js +1 -1
- package/dist/runtime/plugin-runtime/loader.js.map +1 -1
- package/dist/runtime/safety-markers.d.ts +4 -2
- package/dist/runtime/safety-markers.d.ts.map +1 -1
- package/dist/runtime/safety-markers.js +4 -2
- package/dist/runtime/safety-markers.js.map +1 -1
- package/dist/runtime/schema-loader.d.ts +20 -1
- package/dist/runtime/schema-loader.d.ts.map +1 -1
- package/dist/runtime/schema-loader.js +26 -0
- package/dist/runtime/schema-loader.js.map +1 -1
- package/dist/runtime/snapshot-document.d.ts +33 -0
- package/dist/runtime/snapshot-document.d.ts.map +1 -0
- package/dist/runtime/snapshot-document.js +65 -0
- package/dist/runtime/snapshot-document.js.map +1 -0
- package/package.json +20 -7
- package/dist/bin/clickhouse-resource.d.ts +0 -4
- package/dist/bin/clickhouse-resource.d.ts.map +0 -1
- package/dist/bin/clickhouse-resource.js +0 -11
- package/dist/bin/clickhouse-resource.js.map +0 -1
- package/dist/bin/command-dispatch.d.ts +0 -13
- package/dist/bin/command-dispatch.d.ts.map +0 -1
- package/dist/bin/command-dispatch.js +0 -186
- package/dist/bin/command-dispatch.js.map +0 -1
- package/dist/bin/command-registry.d.ts +0 -34
- package/dist/bin/command-registry.d.ts.map +0 -1
- package/dist/bin/command-registry.js +0 -87
- package/dist/bin/command-registry.js.map +0 -1
- package/dist/bin/commands/check.d.ts +0 -3
- package/dist/bin/commands/check.d.ts.map +0 -1
- package/dist/bin/commands/check.js +0 -181
- package/dist/bin/commands/check.js.map +0 -1
- package/dist/bin/commands/codegen.d.ts +0 -2
- package/dist/bin/commands/codegen.d.ts.map +0 -1
- package/dist/bin/commands/codegen.js +0 -25
- package/dist/bin/commands/codegen.js.map +0 -1
- package/dist/bin/commands/drift.d.ts +0 -27
- package/dist/bin/commands/drift.d.ts.map +0 -1
- package/dist/bin/commands/drift.js +0 -220
- package/dist/bin/commands/drift.js.map +0 -1
- package/dist/bin/commands/generate/output.d.ts +0 -8
- package/dist/bin/commands/generate/output.d.ts.map +0 -1
- package/dist/bin/commands/generate/output.js +0 -58
- package/dist/bin/commands/generate/output.js.map +0 -1
- package/dist/bin/commands/generate/plan-pipeline.d.ts +0 -7
- package/dist/bin/commands/generate/plan-pipeline.d.ts.map +0 -1
- package/dist/bin/commands/generate/plan-pipeline.js +0 -143
- package/dist/bin/commands/generate/plan-pipeline.js.map +0 -1
- package/dist/bin/commands/generate/rename-mappings.d.ts +0 -29
- package/dist/bin/commands/generate/rename-mappings.d.ts.map +0 -1
- package/dist/bin/commands/generate/rename-mappings.js +0 -195
- package/dist/bin/commands/generate/rename-mappings.js.map +0 -1
- package/dist/bin/commands/generate.d.ts +0 -3
- package/dist/bin/commands/generate.d.ts.map +0 -1
- package/dist/bin/commands/generate.js +0 -158
- package/dist/bin/commands/generate.js.map +0 -1
- package/dist/bin/commands/init.d.ts +0 -2
- package/dist/bin/commands/init.d.ts.map +0 -1
- package/dist/bin/commands/init.js +0 -12
- package/dist/bin/commands/init.js.map +0 -1
- package/dist/bin/commands/migrate.d.ts +0 -3
- package/dist/bin/commands/migrate.d.ts.map +0 -1
- package/dist/bin/commands/migrate.js +0 -288
- package/dist/bin/commands/migrate.js.map +0 -1
- package/dist/bin/commands/plugin-like.d.ts +0 -38
- package/dist/bin/commands/plugin-like.d.ts.map +0 -1
- package/dist/bin/commands/plugin-like.js +0 -101
- package/dist/bin/commands/plugin-like.js.map +0 -1
- package/dist/bin/commands/plugin.d.ts +0 -3
- package/dist/bin/commands/plugin.d.ts.map +0 -1
- package/dist/bin/commands/plugin.js +0 -148
- package/dist/bin/commands/plugin.js.map +0 -1
- package/dist/bin/commands/pull.d.ts +0 -2
- package/dist/bin/commands/pull.d.ts.map +0 -1
- package/dist/bin/commands/pull.js +0 -25
- package/dist/bin/commands/pull.js.map +0 -1
- package/dist/bin/commands/status.d.ts +0 -3
- package/dist/bin/commands/status.d.ts.map +0 -1
- package/dist/bin/commands/status.js +0 -63
- package/dist/bin/commands/status.js.map +0 -1
- package/dist/bin/commands/typegen.d.ts +0 -2
- package/dist/bin/commands/typegen.d.ts.map +0 -1
- package/dist/bin/commands/typegen.js +0 -25
- package/dist/bin/commands/typegen.js.map +0 -1
- package/dist/bin/config.d.ts +0 -13
- package/dist/bin/config.d.ts.map +0 -1
- package/dist/bin/config.js +0 -48
- package/dist/bin/config.js.map +0 -1
- package/dist/bin/debug.d.ts +0 -3
- package/dist/bin/debug.d.ts.map +0 -1
- package/dist/bin/debug.js +0 -14
- package/dist/bin/debug.js.map +0 -1
- package/dist/bin/global-flags.d.ts +0 -16
- package/dist/bin/global-flags.d.ts.map +0 -1
- package/dist/bin/global-flags.js +0 -7
- package/dist/bin/global-flags.js.map +0 -1
- package/dist/bin/help.d.ts +0 -5
- package/dist/bin/help.d.ts.map +0 -1
- package/dist/bin/help.js +0 -84
- package/dist/bin/help.js.map +0 -1
- package/dist/bin/internal-plugins/index.d.ts +0 -3
- package/dist/bin/internal-plugins/index.d.ts.map +0 -1
- package/dist/bin/internal-plugins/index.js +0 -5
- package/dist/bin/internal-plugins/index.js.map +0 -1
- package/dist/bin/internal-plugins/skill-hint.d.ts +0 -31
- package/dist/bin/internal-plugins/skill-hint.d.ts.map +0 -1
- package/dist/bin/internal-plugins/skill-hint.js +0 -172
- package/dist/bin/internal-plugins/skill-hint.js.map +0 -1
- package/dist/bin/journal-store.d.ts +0 -10
- package/dist/bin/journal-store.d.ts.map +0 -1
- package/dist/bin/journal-store.js +0 -137
- package/dist/bin/journal-store.js.map +0 -1
- package/dist/bin/json-output.d.ts +0 -5
- package/dist/bin/json-output.d.ts.map +0 -1
- package/dist/bin/json-output.js +0 -21
- package/dist/bin/json-output.js.map +0 -1
- package/dist/bin/lib.d.ts +0 -5
- package/dist/bin/lib.d.ts.map +0 -1
- package/dist/bin/lib.js +0 -5
- package/dist/bin/lib.js.map +0 -1
- package/dist/bin/logging.d.ts +0 -3
- package/dist/bin/logging.d.ts.map +0 -1
- package/dist/bin/logging.js +0 -31
- package/dist/bin/logging.js.map +0 -1
- package/dist/bin/migration-store.d.ts +0 -22
- package/dist/bin/migration-store.d.ts.map +0 -1
- package/dist/bin/migration-store.js +0 -60
- package/dist/bin/migration-store.js.map +0 -1
- package/dist/bin/plugin-runtime.d.ts +0 -45
- package/dist/bin/plugin-runtime.d.ts.map +0 -1
- package/dist/bin/plugin-runtime.js +0 -513
- package/dist/bin/plugin-runtime.js.map +0 -1
- package/dist/bin/safety-markers.d.ts +0 -23
- package/dist/bin/safety-markers.d.ts.map +0 -1
- package/dist/bin/safety-markers.js +0 -85
- package/dist/bin/safety-markers.js.map +0 -1
- package/dist/bin/schema-loader.d.ts +0 -3
- package/dist/bin/schema-loader.d.ts.map +0 -1
- package/dist/bin/schema-loader.js +0 -11
- package/dist/bin/schema-loader.js.map +0 -1
- package/dist/bin/table-scope.d.ts +0 -38
- package/dist/bin/table-scope.d.ts.map +0 -1
- package/dist/bin/table-scope.js +0 -167
- package/dist/bin/table-scope.js.map +0 -1
- package/dist/bin/version.d.ts +0 -2
- package/dist/bin/version.d.ts.map +0 -1
- package/dist/bin/version.js +0 -5
- package/dist/bin/version.js.map +0 -1
- package/dist/drift-diff.d.ts +0 -8
- package/dist/drift-diff.d.ts.map +0 -1
- package/dist/drift-diff.js +0 -46
- package/dist/drift-diff.js.map +0 -1
- package/dist/drift.d.ts +0 -66
- package/dist/drift.d.ts.map +0 -1
- package/dist/drift.js +0 -220
- package/dist/drift.js.map +0 -1
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { setTimeout as sleep } from 'node:timers/promises';
|
|
2
|
+
import { allReplicas, isUnknownDatabaseError, resolveReplicaFanout, waitForTable } from '@chkit/clickhouse';
|
|
2
3
|
import { onClusterClause } from '@chkit/core';
|
|
4
|
+
import pRetry from 'p-retry';
|
|
3
5
|
import { CLI_VERSION } from './version.js';
|
|
4
6
|
import { debug } from './debug.js';
|
|
5
7
|
const DEFAULT_JOURNAL_TABLE = '_chkit_migrations';
|
|
@@ -13,6 +15,25 @@ export function resolveJournalTableName() {
|
|
|
13
15
|
return candidate;
|
|
14
16
|
}
|
|
15
17
|
const OPERATIONS_TUPLE_TYPE = 'Array(Tuple(operation_index Int32, operation_key String, operation_type String, query_id String, status LowCardinality(String), started_at DateTime64(3, \'UTC\'), finished_at Nullable(DateTime64(3, \'UTC\')), last_error String))';
|
|
18
|
+
const UNKNOWN_TABLE = {
|
|
19
|
+
code: '60',
|
|
20
|
+
name: 'UNKNOWN_TABLE',
|
|
21
|
+
message: /Unknown table expression identifier|Table \S+ does not exist/,
|
|
22
|
+
};
|
|
23
|
+
const UNKNOWN_IDENTIFIER = {
|
|
24
|
+
code: '47',
|
|
25
|
+
name: 'UNKNOWN_IDENTIFIER',
|
|
26
|
+
message: /Unknown expression identifier|Missing columns/,
|
|
27
|
+
};
|
|
28
|
+
const READONLY = { code: '164', name: 'READONLY', message: /in readonly mode/ };
|
|
29
|
+
/** Whether `error` is the ClickHouse error `kind`. The native client sets `code`. */
|
|
30
|
+
function isClickHouseError(error, kind) {
|
|
31
|
+
if (!(error instanceof Error))
|
|
32
|
+
return false;
|
|
33
|
+
if ('code' in error && String(error.code) === kind.code)
|
|
34
|
+
return true;
|
|
35
|
+
return error.message.includes(kind.name) || kind.message.test(error.message);
|
|
36
|
+
}
|
|
16
37
|
function isRetryableInsertRace(error) {
|
|
17
38
|
if (!(error instanceof Error))
|
|
18
39
|
return false;
|
|
@@ -77,6 +98,15 @@ function parseOperations(value) {
|
|
|
77
98
|
return [];
|
|
78
99
|
return decoded.map((row) => operationFromTuple(row));
|
|
79
100
|
}
|
|
101
|
+
/**
|
|
102
|
+
* The `ReplacingMergeTree(applied_at)` version as epoch milliseconds. ClickHouse
|
|
103
|
+
* returns `DateTime64(3, 'UTC')` without a zone and chkit writes ISO strings with
|
|
104
|
+
* or without `Z`; all of them are UTC.
|
|
105
|
+
*/
|
|
106
|
+
function rowVersion(appliedAt) {
|
|
107
|
+
const iso = appliedAt.trim().replace(' ', 'T');
|
|
108
|
+
return Date.parse(/(Z|[+-]\d{2}:?\d{2})$/.test(iso) ? iso : `${iso}Z`);
|
|
109
|
+
}
|
|
80
110
|
export function createJournalStore(db, cluster) {
|
|
81
111
|
const journalTable = resolveJournalTableName();
|
|
82
112
|
debug('journal', `journal table: ${journalTable}${process.env.CHKIT_JOURNAL_TABLE ? ' (from CHKIT_JOURNAL_TABLE)' : ''}${cluster ? ` (ON CLUSTER ${cluster})` : ''}`);
|
|
@@ -106,15 +136,27 @@ ORDER BY (name)
|
|
|
106
136
|
SETTINGS index_granularity = 1`;
|
|
107
137
|
let bootstrapped = false;
|
|
108
138
|
let _databaseMissing = false;
|
|
109
|
-
|
|
110
|
-
|
|
139
|
+
// The database exists but the journal does not: reads see no rows, and the
|
|
140
|
+
// first write creates it.
|
|
141
|
+
let tableMissing = false;
|
|
142
|
+
let replicaSyncSupported;
|
|
143
|
+
// Read-your-writes: the last row version this store wrote per migration.
|
|
144
|
+
const lastWritten = new Map();
|
|
145
|
+
/**
|
|
146
|
+
* Makes sure the journal can be read or, with `create`, written. Only a
|
|
147
|
+
* write creates the journal or adds the columns an old one lacks, so
|
|
148
|
+
* status, check and migrate (plan) run as a read-only user (#402).
|
|
149
|
+
*/
|
|
150
|
+
async function ensureTable(create) {
|
|
151
|
+
if (bootstrapped || (tableMissing && !create))
|
|
111
152
|
return;
|
|
112
153
|
debug('journal', `probing journal table "${journalTable}"`);
|
|
113
154
|
try {
|
|
114
|
-
await db.query(`SELECT name FROM ${journalTable} LIMIT 0`);
|
|
115
|
-
debug('journal', 'journal table exists
|
|
116
|
-
await
|
|
155
|
+
await db.query(`SELECT name, migration_completed, operations FROM ${journalTable} LIMIT 0`);
|
|
156
|
+
debug('journal', 'journal table exists');
|
|
157
|
+
await waitForEveryReplica();
|
|
117
158
|
bootstrapped = true;
|
|
159
|
+
tableMissing = false;
|
|
118
160
|
return;
|
|
119
161
|
}
|
|
120
162
|
catch (error) {
|
|
@@ -124,6 +166,25 @@ SETTINGS index_granularity = 1`;
|
|
|
124
166
|
bootstrapped = true;
|
|
125
167
|
return;
|
|
126
168
|
}
|
|
169
|
+
if (isClickHouseError(error, UNKNOWN_IDENTIFIER)) {
|
|
170
|
+
debug('journal', 'journal table predates per-operation tracking — upgrading');
|
|
171
|
+
await ensureSchemaUpgraded();
|
|
172
|
+
await waitForEveryReplica();
|
|
173
|
+
bootstrapped = true;
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
if (!create) {
|
|
177
|
+
if (!isClickHouseError(error, UNKNOWN_TABLE))
|
|
178
|
+
throw error;
|
|
179
|
+
if (await existsOnAnotherReplica()) {
|
|
180
|
+
await waitForEveryReplica();
|
|
181
|
+
bootstrapped = true;
|
|
182
|
+
return;
|
|
183
|
+
}
|
|
184
|
+
debug('journal', 'journal table does not exist — reading it as empty');
|
|
185
|
+
tableMissing = true;
|
|
186
|
+
return;
|
|
187
|
+
}
|
|
127
188
|
}
|
|
128
189
|
debug('journal', 'creating journal table');
|
|
129
190
|
try {
|
|
@@ -138,27 +199,88 @@ SETTINGS index_granularity = 1`;
|
|
|
138
199
|
}
|
|
139
200
|
throw error;
|
|
140
201
|
}
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
}
|
|
147
|
-
catch {
|
|
148
|
-
await new Promise((r) => setTimeout(r, 250));
|
|
149
|
-
}
|
|
150
|
-
}
|
|
202
|
+
await pRetry(async (attempt) => {
|
|
203
|
+
await db.query(`SELECT name FROM ${journalTable} LIMIT 0`);
|
|
204
|
+
debug('journal', `DDL propagation confirmed (attempt ${attempt})`);
|
|
205
|
+
}, { retries: 9, minTimeout: 250, factor: 1 }).catch(() => undefined);
|
|
206
|
+
await waitForEveryReplica();
|
|
151
207
|
bootstrapped = true;
|
|
208
|
+
tableMissing = false;
|
|
209
|
+
}
|
|
210
|
+
// On a multi-replica target, the replica that answered the probe may not
|
|
211
|
+
// have applied another process's CREATE yet.
|
|
212
|
+
async function existsOnAnotherReplica() {
|
|
213
|
+
const fanout = await resolveReplicaFanout(db, cluster);
|
|
214
|
+
if (!fanout)
|
|
215
|
+
return false;
|
|
216
|
+
const [row] = await db.query(`SELECT count() AS replicas FROM ${allReplicas(fanout, 'system.tables')} WHERE database = currentDatabase() AND name = '${journalTable}'`);
|
|
217
|
+
return Number(row?.replicas ?? 0) > 0;
|
|
218
|
+
}
|
|
219
|
+
// A multi-replica target reads the journal from every replica (#265), which
|
|
220
|
+
// fails while one of them does not have the table yet, e.g. right after the
|
|
221
|
+
// CREATE above or another process's. A single replica needs no wait.
|
|
222
|
+
async function waitForEveryReplica() {
|
|
223
|
+
if (!(await resolveReplicaFanout(db, cluster)))
|
|
224
|
+
return;
|
|
225
|
+
const [row] = await db.query('SELECT currentDatabase() AS database');
|
|
226
|
+
await waitForTable(db, row?.database ?? 'default', journalTable, { cluster });
|
|
152
227
|
}
|
|
153
228
|
async function ensureSchemaUpgraded() {
|
|
154
229
|
// Pre-existing journal tables predate per-operation tracking. Add the
|
|
155
230
|
// columns idempotently so older deployments pick them up on first run
|
|
156
231
|
// of the new chkit. ALTER ADD COLUMN IF NOT EXISTS is a metadata op,
|
|
157
232
|
// no data rewrite.
|
|
158
|
-
|
|
159
|
-
|
|
233
|
+
try {
|
|
234
|
+
await db.command(`ALTER TABLE ${journalTable}${onCluster} ADD COLUMN IF NOT EXISTS migration_completed Bool DEFAULT true`);
|
|
235
|
+
await db.command(`ALTER TABLE ${journalTable}${onCluster} ADD COLUMN IF NOT EXISTS operations ${OPERATIONS_TUPLE_TYPE} DEFAULT []`);
|
|
236
|
+
}
|
|
237
|
+
catch (error) {
|
|
238
|
+
// A read-only user cannot run the ALTER (#402).
|
|
239
|
+
throw new Error(`The journal table ${journalTable} predates per-operation tracking and needs its new columns added. Run chkit once as a user that can ALTER it (as migrate --apply needs). ${error instanceof Error ? error.message : String(error)}`, { cause: error });
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* The rows to read the journal from. A single replica reads the table with
|
|
244
|
+
* FINAL. With several replicas (#265), the replica a read lands on may not
|
|
245
|
+
* have the latest version yet, while the replica that ran an INSERT always
|
|
246
|
+
* has it: read every replica and keep the newest version per migration. Each
|
|
247
|
+
* write stamps applied_at in milliseconds as the row version, which is what
|
|
248
|
+
* ReplacingMergeTree(applied_at) keeps too.
|
|
249
|
+
*/
|
|
250
|
+
async function journalRows(where, limit = '') {
|
|
251
|
+
const fanout = await resolveReplicaFanout(db, cluster);
|
|
252
|
+
const columns = 'name, applied_at, checksum, chkit_version, migration_completed, toJSONString(operations) AS operations';
|
|
253
|
+
if (!fanout) {
|
|
254
|
+
const sql = `SELECT ${columns} FROM ${journalTable} FINAL WHERE ${where} ORDER BY name${limit}`;
|
|
255
|
+
try {
|
|
256
|
+
return await db.query(`${sql} SETTINGS select_sequential_consistency = 1`);
|
|
257
|
+
}
|
|
258
|
+
catch (error) {
|
|
259
|
+
// A readonly = 1 user cannot change any setting (#402). It only
|
|
260
|
+
// reads, so there is no write of its own to wait for.
|
|
261
|
+
if (!isClickHouseError(error, READONLY))
|
|
262
|
+
throw error;
|
|
263
|
+
debug('journal', 'read-only user — reading the journal without select_sequential_consistency');
|
|
264
|
+
return await db.query(sql);
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
debug('journal', `reading the journal across ${fanout.replicas} replicas of cluster ${fanout.cluster}`);
|
|
268
|
+
return await db.query(`SELECT name, latest.1 AS applied_at, latest.2 AS checksum, latest.3 AS chkit_version, latest.4 AS migration_completed, latest.5 AS operations FROM (SELECT name, argMax(tuple(applied_at, checksum, chkit_version, migration_completed, toJSONString(operations)), applied_at) AS latest FROM clusterAllReplicas('${escapeSqlString(fanout.cluster)}', currentDatabase(), '${journalTable}') GROUP BY name) WHERE ${where} ORDER BY name${limit}`);
|
|
160
269
|
}
|
|
161
270
|
async function trySyncReplica() {
|
|
271
|
+
if (replicaSyncSupported === undefined) {
|
|
272
|
+
try {
|
|
273
|
+
const rows = await db.query(`SELECT engine FROM system.tables WHERE database = currentDatabase() AND name = '${journalTable}'`);
|
|
274
|
+
// Only skip synchronization when the actual engine is known. If system
|
|
275
|
+
// metadata is unavailable, retain the existing best-effort sync behavior.
|
|
276
|
+
replicaSyncSupported = rows[0] ? rows[0].engine.startsWith('Replicated') : true;
|
|
277
|
+
}
|
|
278
|
+
catch {
|
|
279
|
+
replicaSyncSupported = true;
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
if (!replicaSyncSupported)
|
|
283
|
+
return;
|
|
162
284
|
try {
|
|
163
285
|
await db.command(`SYSTEM SYNC REPLICA ${journalTable}`);
|
|
164
286
|
}
|
|
@@ -172,13 +294,13 @@ SETTINGS index_granularity = 1`;
|
|
|
172
294
|
},
|
|
173
295
|
async readJournal() {
|
|
174
296
|
debug('journal', 'reading journal');
|
|
175
|
-
await ensureTable();
|
|
176
|
-
if (_databaseMissing) {
|
|
177
|
-
debug('journal', 'database missing — returning empty journal');
|
|
297
|
+
await ensureTable(false);
|
|
298
|
+
if (_databaseMissing || tableMissing) {
|
|
299
|
+
debug('journal', 'database or journal table missing — returning empty journal');
|
|
178
300
|
return { version: 1, applied: [] };
|
|
179
301
|
}
|
|
180
302
|
await trySyncReplica();
|
|
181
|
-
const rows = await
|
|
303
|
+
const rows = await journalRows('migration_completed = true');
|
|
182
304
|
debug('journal', `journal has ${rows.length} applied entries`);
|
|
183
305
|
return {
|
|
184
306
|
version: 1,
|
|
@@ -190,15 +312,16 @@ SETTINGS index_granularity = 1`;
|
|
|
190
312
|
};
|
|
191
313
|
},
|
|
192
314
|
async readMigrationState(migrationName) {
|
|
193
|
-
await ensureTable();
|
|
194
|
-
if (_databaseMissing)
|
|
315
|
+
await ensureTable(false);
|
|
316
|
+
if (_databaseMissing || tableMissing)
|
|
195
317
|
return null;
|
|
196
318
|
await trySyncReplica();
|
|
197
|
-
const rows = await
|
|
319
|
+
const rows = await journalRows(`name = '${escapeSqlString(migrationName)}'`, ' LIMIT 1');
|
|
320
|
+
const written = lastWritten.get(migrationName);
|
|
198
321
|
const row = rows[0];
|
|
199
322
|
if (!row)
|
|
200
|
-
return null;
|
|
201
|
-
|
|
323
|
+
return written ?? null;
|
|
324
|
+
const state = {
|
|
202
325
|
name: row.name,
|
|
203
326
|
appliedAt: row.applied_at,
|
|
204
327
|
checksum: row.checksum,
|
|
@@ -206,6 +329,15 @@ SETTINGS index_granularity = 1`;
|
|
|
206
329
|
migrationCompleted: parseBool(row.migration_completed),
|
|
207
330
|
operations: parseOperations(row.operations),
|
|
208
331
|
};
|
|
332
|
+
// Each request can land on a different replica, and SYSTEM SYNC REPLICA
|
|
333
|
+
// on one request does not make the next one read our write. Never hand a
|
|
334
|
+
// read-modify-write caller a version older than the one we just wrote, or
|
|
335
|
+
// its write would drop the progress recorded in between.
|
|
336
|
+
if (written && rowVersion(state.appliedAt) < rowVersion(written.appliedAt)) {
|
|
337
|
+
debug('journal', `stale journal read for ${migrationName} — using the last written version`);
|
|
338
|
+
return written;
|
|
339
|
+
}
|
|
340
|
+
return state;
|
|
209
341
|
},
|
|
210
342
|
async writeMigrationState(state) {
|
|
211
343
|
if (_databaseMissing) {
|
|
@@ -213,22 +345,26 @@ SETTINGS index_granularity = 1`;
|
|
|
213
345
|
_databaseMissing = false;
|
|
214
346
|
bootstrapped = false;
|
|
215
347
|
}
|
|
216
|
-
await ensureTable();
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
break;
|
|
223
|
-
}
|
|
224
|
-
catch (error) {
|
|
225
|
-
if (!isRetryableInsertRace(error) || attempt === maxAttempts) {
|
|
226
|
-
throw error;
|
|
227
|
-
}
|
|
228
|
-
debug('journal', `insert race detected — retrying (attempt ${attempt}/${maxAttempts})`);
|
|
229
|
-
await new Promise((r) => setTimeout(r, attempt * 150));
|
|
230
|
-
}
|
|
348
|
+
await ensureTable(true);
|
|
349
|
+
if (_databaseMissing) {
|
|
350
|
+
// Nothing to journal until the migration creates the database; the
|
|
351
|
+
// INSERT would otherwise fall back to the server's default database.
|
|
352
|
+
debug('journal', 'database still missing — skipping journal write');
|
|
353
|
+
return;
|
|
231
354
|
}
|
|
355
|
+
const insertSql = `INSERT INTO ${journalTable} (name, applied_at, checksum, chkit_version, migration_completed, operations) VALUES ('${escapeSqlString(state.name)}', '${escapeSqlString(state.appliedAt)}', '${escapeSqlString(state.checksum)}', '${escapeSqlString(state.chkitVersion || CLI_VERSION)}', ${state.migrationCompleted ? 'true' : 'false'}, ${operationsArrayLiteral(state.operations)})`;
|
|
356
|
+
await pRetry(() => db.command(insertSql), {
|
|
357
|
+
retries: 4,
|
|
358
|
+
minTimeout: 0,
|
|
359
|
+
shouldRetry: async ({ error, attemptNumber }) => {
|
|
360
|
+
if (!isRetryableInsertRace(error))
|
|
361
|
+
return false;
|
|
362
|
+
debug('journal', `insert race detected — retrying (attempt ${attemptNumber}/5)`);
|
|
363
|
+
await sleep(attemptNumber * 150);
|
|
364
|
+
return true;
|
|
365
|
+
},
|
|
366
|
+
});
|
|
367
|
+
lastWritten.set(state.name, state);
|
|
232
368
|
await trySyncReplica();
|
|
233
369
|
},
|
|
234
370
|
async appendEntry(entry) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"journal-store.js","sourceRoot":"","sources":["../../src/runtime/journal-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"journal-store.js","sourceRoot":"","sources":["../../src/runtime/journal-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,IAAI,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAE1D,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,YAAY,EAA2B,MAAM,mBAAmB,CAAA;AACpI,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,MAAM,MAAM,SAAS,CAAA;AAG5B,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAgClC,MAAM,qBAAqB,GAAG,mBAAmB,CAAA;AAEjD,MAAM,UAAU,uBAAuB;IACrC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAA;IACzD,IAAI,CAAC,SAAS;QAAE,OAAO,qBAAqB,CAAA;IAC5C,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CACb,gCAAgC,SAAS,iEAAiE,CAC3G,CAAA;IACH,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AA2BD,MAAM,qBAAqB,GACzB,sOAAsO,CAAA;AASxO,MAAM,aAAa,GAAwB;IACzC,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,eAAe;IACrB,OAAO,EAAE,8DAA8D;CACxE,CAAA;AACD,MAAM,kBAAkB,GAAwB;IAC9C,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,oBAAoB;IAC1B,OAAO,EAAE,+CAA+C;CACzD,CAAA;AACD,MAAM,QAAQ,GAAwB,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAA;AAEpG,qFAAqF;AACrF,SAAS,iBAAiB,CAAC,KAAc,EAAE,IAAyB;IAClE,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAC3C,IAAI,MAAM,IAAI,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA;IACpE,OAAO,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;AAC9E,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAc;IAC3C,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAC3C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;IAC7B,OAAO,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAA;AACjG,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;AAC1D,CAAC;AAED,SAAS,uBAAuB,CAAC,EAAkB;IACjD,MAAM,KAAK,GAAG;QACZ,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC;QACzB,IAAI,eAAe,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG;QACvC,IAAI,eAAe,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG;QACxC,IAAI,eAAe,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG;QAClC,IAAI,eAAe,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG;QACjC,IAAI,eAAe,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG;QACpC,EAAE,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG;QACvE,IAAI,eAAe,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG;KACrC,CAAA;IACD,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;AAC/B,CAAC;AAED,SAAS,sBAAsB,CAAC,UAA4B;IAC1D,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACxC,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;AACjE,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAsB;IAChD,OAAO;QACL,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;QAC3C,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,aAAa,EAAE,GAAG,CAAC,cAAc;QACjC,OAAO,EAAE,GAAG,CAAC,QAAQ;QACrB,MAAM,EAAE,GAAG,CAAC,MAAyB;QACrC,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,SAAS,EAAE,GAAG,CAAC,UAAU;KAC1B,CAAA;AACH,CAAC;AAED,+EAA+E;AAC/E,4EAA4E;AAC5E,uEAAuE;AACvE,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,MAAM,CAAA;AAC3E,CAAC;AAED,4EAA4E;AAC5E,6EAA6E;AAC7E,wEAAwE;AACxE,SAAS,eAAe,CAAC,KAAc;IACrC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,EAAE,CAAA;IAC5C,IAAI,OAAO,GAAY,KAAK,CAAA;IAC5B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAA;IACtC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAwB,CAAC,CAAC,CAAA;AAC3E,CAAC;AAED;;;;GAIG;AACH,SAAS,UAAU,CAAC,SAAiB;IACnC,MAAM,GAAG,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAA;AACxE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,EAAsB,EAAE,OAAgB;IACzE,MAAM,YAAY,GAAG,uBAAuB,EAAE,CAAA;IAC9C,KAAK,CAAC,SAAS,EAAE,kBAAkB,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,gBAAgB,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACrK,+EAA+E;IAC/E,+EAA+E;IAC/E,6EAA6E;IAC7E,2EAA2E;IAC3E,4EAA4E;IAC5E,2EAA2E;IAC3E,+EAA+E;IAC/E,6EAA6E;IAC7E,6EAA6E;IAC7E,4EAA4E;IAC5E,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;IAC1C,MAAM,aAAa,GAAG,OAAO;QAC3B,CAAC,CAAC,0GAA0G;QAC5G,CAAC,CAAC,gCAAgC,CAAA;IACpC,MAAM,cAAc,GAAG,8BAA8B,YAAY,GAAG,SAAS;;;;;;iBAM9D,qBAAqB;aACzB,aAAa;;+BAEK,CAAA;IAE7B,IAAI,YAAY,GAAG,KAAK,CAAA;IACxB,IAAI,gBAAgB,GAAG,KAAK,CAAA;IAC5B,2EAA2E;IAC3E,0BAA0B;IAC1B,IAAI,YAAY,GAAG,KAAK,CAAA;IACxB,IAAI,oBAAyC,CAAA;IAC7C,yEAAyE;IACzE,MAAM,WAAW,GAAG,IAAI,GAAG,EAA6B,CAAA;IAExD;;;;OAIG;IACH,KAAK,UAAU,WAAW,CAAC,MAAe;QACxC,IAAI,YAAY,IAAI,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC;YAAE,OAAM;QACrD,KAAK,CAAC,SAAS,EAAE,0BAA0B,YAAY,GAAG,CAAC,CAAA;QAC3D,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,KAAK,CAAC,qDAAqD,YAAY,UAAU,CAAC,CAAA;YAC3F,KAAK,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAA;YACxC,MAAM,mBAAmB,EAAE,CAAA;YAC3B,YAAY,GAAG,IAAI,CAAA;YACnB,YAAY,GAAG,KAAK,CAAA;YACpB,OAAM;QACR,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClC,KAAK,CAAC,SAAS,EAAE,yBAAyB,CAAC,CAAA;gBAC3C,gBAAgB,GAAG,IAAI,CAAA;gBACvB,YAAY,GAAG,IAAI,CAAA;gBACnB,OAAM;YACR,CAAC;YACD,IAAI,iBAAiB,CAAC,KAAK,EAAE,kBAAkB,CAAC,EAAE,CAAC;gBACjD,KAAK,CAAC,SAAS,EAAE,2DAA2D,CAAC,CAAA;gBAC7E,MAAM,oBAAoB,EAAE,CAAA;gBAC5B,MAAM,mBAAmB,EAAE,CAAA;gBAC3B,YAAY,GAAG,IAAI,CAAA;gBACnB,OAAM;YACR,CAAC;YACD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC;oBAAE,MAAM,KAAK,CAAA;gBACzD,IAAI,MAAM,sBAAsB,EAAE,EAAE,CAAC;oBACnC,MAAM,mBAAmB,EAAE,CAAA;oBAC3B,YAAY,GAAG,IAAI,CAAA;oBACnB,OAAM;gBACR,CAAC;gBACD,KAAK,CAAC,SAAS,EAAE,oDAAoD,CAAC,CAAA;gBACtE,YAAY,GAAG,IAAI,CAAA;gBACnB,OAAM;YACR,CAAC;QACH,CAAC;QACD,KAAK,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAA;QAC1C,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClC,KAAK,CAAC,SAAS,EAAE,wCAAwC,CAAC,CAAA;gBAC1D,gBAAgB,GAAG,IAAI,CAAA;gBACvB,YAAY,GAAG,IAAI,CAAA;gBACnB,OAAM;YACR,CAAC;YACD,MAAM,KAAK,CAAA;QACb,CAAC;QACD,MAAM,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YAC7B,MAAM,EAAE,CAAC,KAAK,CAAC,oBAAoB,YAAY,UAAU,CAAC,CAAA;YAC1D,KAAK,CAAC,SAAS,EAAE,sCAAsC,OAAO,GAAG,CAAC,CAAA;QACpE,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QACrE,MAAM,mBAAmB,EAAE,CAAA;QAC3B,YAAY,GAAG,IAAI,CAAA;QACnB,YAAY,GAAG,KAAK,CAAA;IACtB,CAAC;IAED,yEAAyE;IACzE,6CAA6C;IAC7C,KAAK,UAAU,sBAAsB;QACnC,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;QACtD,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAA;QACzB,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,KAAK,CAC1B,mCAAmC,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,mDAAmD,YAAY,GAAG,CAC1I,CAAA;QACD,OAAO,MAAM,CAAC,GAAG,EAAE,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;IACvC,CAAC;IAED,4EAA4E;IAC5E,4EAA4E;IAC5E,qEAAqE;IACrE,KAAK,UAAU,mBAAmB;QAChC,IAAI,CAAC,CAAC,MAAM,oBAAoB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAAE,OAAM;QACtD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,KAAK,CAAuB,sCAAsC,CAAC,CAAA;QAC1F,MAAM,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,IAAI,SAAS,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;IAC/E,CAAC;IAED,KAAK,UAAU,oBAAoB;QACjC,sEAAsE;QACtE,sEAAsE;QACtE,qEAAqE;QACrE,mBAAmB;QACnB,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,OAAO,CACd,eAAe,YAAY,GAAG,SAAS,iEAAiE,CACzG,CAAA;YACD,MAAM,EAAE,CAAC,OAAO,CACd,eAAe,YAAY,GAAG,SAAS,wCAAwC,qBAAqB,aAAa,CAClH,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,gDAAgD;YAChD,MAAM,IAAI,KAAK,CACb,qBAAqB,YAAY,4IAA4I,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EACrO,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAA;QACH,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,UAAU,WAAW,CAAC,KAAa,EAAE,KAAK,GAAG,EAAE;QAClD,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;QACtD,MAAM,OAAO,GAAG,wGAAwG,CAAA;QACxH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,GAAG,UAAU,OAAO,SAAS,YAAY,gBAAgB,KAAK,iBAAiB,KAAK,EAAE,CAAA;YAC/F,IAAI,CAAC;gBACH,OAAO,MAAM,EAAE,CAAC,KAAK,CAAe,GAAG,GAAG,6CAA6C,CAAC,CAAA;YAC1F,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,gEAAgE;gBAChE,sDAAsD;gBACtD,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC;oBAAE,MAAM,KAAK,CAAA;gBACpD,KAAK,CAAC,SAAS,EAAE,4EAA4E,CAAC,CAAA;gBAC9F,OAAO,MAAM,EAAE,CAAC,KAAK,CAAe,GAAG,CAAC,CAAA;YAC1C,CAAC;QACH,CAAC;QACD,KAAK,CAAC,SAAS,EAAE,8BAA8B,MAAM,CAAC,QAAQ,wBAAwB,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;QACvG,OAAO,MAAM,EAAE,CAAC,KAAK,CACnB,qTAAqT,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,0BAA0B,YAAY,2BAA2B,KAAK,iBAAiB,KAAK,EAAE,CACnb,CAAA;IACH,CAAC;IAED,KAAK,UAAU,cAAc;QAC3B,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACvC,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,KAAK,CACzB,mFAAmF,YAAY,GAAG,CACnG,CAAA;gBACD,uEAAuE;gBACvE,0EAA0E;gBAC1E,oBAAoB,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YACjF,CAAC;YAAC,MAAM,CAAC;gBACP,oBAAoB,GAAG,IAAI,CAAA;YAC7B,CAAC;QACH,CAAC;QACD,IAAI,CAAC,oBAAoB;YAAE,OAAM;QACjC,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,OAAO,CAAC,uBAAuB,YAAY,EAAE,CAAC,CAAA;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,0EAA0E;QAC5E,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,eAAe;YACjB,OAAO,gBAAgB,CAAA;QACzB,CAAC;QAED,KAAK,CAAC,WAAW;YACf,KAAK,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAA;YACnC,MAAM,WAAW,CAAC,KAAK,CAAC,CAAA;YACxB,IAAI,gBAAgB,IAAI,YAAY,EAAE,CAAC;gBACrC,KAAK,CAAC,SAAS,EAAE,6DAA6D,CAAC,CAAA;gBAC/E,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;YACpC,CAAC;YACD,MAAM,cAAc,EAAE,CAAA;YACtB,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,4BAA4B,CAAC,CAAA;YAC5D,KAAK,CAAC,SAAS,EAAE,eAAe,IAAI,CAAC,MAAM,kBAAkB,CAAC,CAAA;YAC9D,OAAO;gBACL,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBAC1B,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,SAAS,EAAE,GAAG,CAAC,UAAU;oBACzB,QAAQ,EAAE,GAAG,CAAC,QAAQ;iBACvB,CAAC,CAAC;aACJ,CAAA;QACH,CAAC;QAED,KAAK,CAAC,kBAAkB,CAAC,aAAqB;YAC5C,MAAM,WAAW,CAAC,KAAK,CAAC,CAAA;YACxB,IAAI,gBAAgB,IAAI,YAAY;gBAAE,OAAO,IAAI,CAAA;YACjD,MAAM,cAAc,EAAE,CAAA;YACtB,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,WAAW,eAAe,CAAC,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAA;YACxF,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;YAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YACnB,IAAI,CAAC,GAAG;gBAAE,OAAO,OAAO,IAAI,IAAI,CAAA;YAChC,MAAM,KAAK,GAAsB;gBAC/B,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,SAAS,EAAE,GAAG,CAAC,UAAU;gBACzB,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,YAAY,EAAE,GAAG,CAAC,aAAa;gBAC/B,kBAAkB,EAAE,SAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC;gBACtD,UAAU,EAAE,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC;aAC5C,CAAA;YACD,wEAAwE;YACxE,yEAAyE;YACzE,0EAA0E;YAC1E,yDAAyD;YACzD,IAAI,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC3E,KAAK,CAAC,SAAS,EAAE,0BAA0B,aAAa,mCAAmC,CAAC,CAAA;gBAC5F,OAAO,OAAO,CAAA;YAChB,CAAC;YACD,OAAO,KAAK,CAAA;QACd,CAAC;QAED,KAAK,CAAC,mBAAmB,CAAC,KAAwB;YAChD,IAAI,gBAAgB,EAAE,CAAC;gBACrB,KAAK,CAAC,SAAS,EAAE,0EAA0E,CAAC,CAAA;gBAC5F,gBAAgB,GAAG,KAAK,CAAA;gBACxB,YAAY,GAAG,KAAK,CAAA;YACtB,CAAC;YACD,MAAM,WAAW,CAAC,IAAI,CAAC,CAAA;YACvB,IAAI,gBAAgB,EAAE,CAAC;gBACrB,mEAAmE;gBACnE,qEAAqE;gBACrE,KAAK,CAAC,SAAS,EAAE,iDAAiD,CAAC,CAAA;gBACnE,OAAM;YACR,CAAC;YACD,MAAM,SAAS,GAAG,eAAe,YAAY,0FAA0F,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,YAAY,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,KAAK,sBAAsB,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAA;YACzY,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBACxC,OAAO,EAAE,CAAC;gBACV,UAAU,EAAE,CAAC;gBACb,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE;oBAC9C,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC;wBAAE,OAAO,KAAK,CAAA;oBAC/C,KAAK,CAAC,SAAS,EAAE,4CAA4C,aAAa,KAAK,CAAC,CAAA;oBAChF,MAAM,KAAK,CAAC,aAAa,GAAG,GAAG,CAAC,CAAA;oBAChC,OAAO,IAAI,CAAA;gBACb,CAAC;aACF,CAAC,CAAA;YACF,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;YAClC,MAAM,cAAc,EAAE,CAAA;QACxB,CAAC;QAED,KAAK,CAAC,WAAW,CAAC,KAA4B;YAC5C,KAAK,CAAC,SAAS,EAAE,oBAAoB,KAAK,CAAC,IAAI,eAAe,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAA;YAChF,iEAAiE;YACjE,uEAAuE;YACvE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAC1D,MAAM,IAAI,CAAC,mBAAmB,CAAC;gBAC7B,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,YAAY,EAAE,WAAW;gBACzB,kBAAkB,EAAE,IAAI;gBACxB,UAAU,EAAE,QAAQ,EAAE,UAAU,IAAI,EAAE;aACvC,CAAC,CAAA;QACJ,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -1,6 +1,20 @@
|
|
|
1
|
-
type Command = 'generate' | 'migrate' | 'status' | 'drift' | 'check' | 'plugin' | 'query';
|
|
1
|
+
type Command = 'add' | 'registry' | 'generate' | 'migrate' | 'status' | 'drift' | 'check' | 'snapshot' | 'plugin' | 'query';
|
|
2
2
|
/** Whether any JSON payload (success or error) has already been written to stdout. */
|
|
3
3
|
export declare function hasEmittedJson(): boolean;
|
|
4
|
+
/**
|
|
5
|
+
* Write a line to stdout through the stream. Bun's `console.log` drops whatever
|
|
6
|
+
* does not fit in a 64 KiB pipe buffer once stdout is non-blocking, and
|
|
7
|
+
* `process.exit` drops what the stream has not flushed yet, so remember a
|
|
8
|
+
* pending drain for the exit path to await (`stdoutDrained`).
|
|
9
|
+
*
|
|
10
|
+
* A reader that closes early (`| head`) makes the write fail with EPIPE. Node's
|
|
11
|
+
* console swallows that; a bare stream write would crash on the unhandled
|
|
12
|
+
* `'error'` event, so handle it here: stop writing and settle the drain so the
|
|
13
|
+
* CLI still exits with the command's own code.
|
|
14
|
+
*/
|
|
15
|
+
export declare function writeStdout(text: string): void;
|
|
16
|
+
/** Resolves once everything written with `writeStdout` has been flushed. */
|
|
17
|
+
export declare function stdoutDrained(): Promise<void>;
|
|
4
18
|
export declare function printOutput(value: unknown, jsonMode: boolean): void;
|
|
5
19
|
export declare function emitJson<T extends object>(command: Command, payload: T): void;
|
|
6
20
|
export interface JsonError {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-output.d.ts","sourceRoot":"","sources":["../../src/runtime/json-output.ts"],"names":[],"mappings":"AAAA,KAAK,OAAO,GACR,UAAU,GACV,SAAS,GACT,QAAQ,GACR,OAAO,GACP,OAAO,GACP,QAAQ,GACR,OAAO,CAAA;AAMX,sFAAsF;AACtF,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI,CAgBnE;AAaD,wBAAgB,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,CAE7E;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;IACrB,EAAE,EAAE,KAAK,CAAA;IACT,KAAK,EAAE,SAAS,CAAA;CACjB;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,iBAAiB,CAO3F;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAGrE"}
|
|
1
|
+
{"version":3,"file":"json-output.d.ts","sourceRoot":"","sources":["../../src/runtime/json-output.ts"],"names":[],"mappings":"AAAA,KAAK,OAAO,GACR,KAAK,GACL,UAAU,GACV,UAAU,GACV,SAAS,GACT,QAAQ,GACR,OAAO,GACP,OAAO,GACP,UAAU,GACV,QAAQ,GACR,OAAO,CAAA;AAMX,sFAAsF;AACtF,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAaD;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAc9C;AAED,4EAA4E;AAC5E,wBAAgB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAE7C;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI,CAgBnE;AAaD,wBAAgB,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,CAE7E;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;IACrB,EAAE,EAAE,KAAK,CAAA;IACT,KAAK,EAAE,SAAS,CAAA;CACjB;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,iBAAiB,CAO3F;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAGrE"}
|
|
@@ -4,6 +4,47 @@ let jsonEmitted = false;
|
|
|
4
4
|
export function hasEmittedJson() {
|
|
5
5
|
return jsonEmitted;
|
|
6
6
|
}
|
|
7
|
+
let stdoutDrain;
|
|
8
|
+
let resolveStdoutDrain;
|
|
9
|
+
let stdoutListening = false;
|
|
10
|
+
let stdoutClosed = false;
|
|
11
|
+
function settleStdoutDrain() {
|
|
12
|
+
stdoutDrain = undefined;
|
|
13
|
+
resolveStdoutDrain?.();
|
|
14
|
+
resolveStdoutDrain = undefined;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Write a line to stdout through the stream. Bun's `console.log` drops whatever
|
|
18
|
+
* does not fit in a 64 KiB pipe buffer once stdout is non-blocking, and
|
|
19
|
+
* `process.exit` drops what the stream has not flushed yet, so remember a
|
|
20
|
+
* pending drain for the exit path to await (`stdoutDrained`).
|
|
21
|
+
*
|
|
22
|
+
* A reader that closes early (`| head`) makes the write fail with EPIPE. Node's
|
|
23
|
+
* console swallows that; a bare stream write would crash on the unhandled
|
|
24
|
+
* `'error'` event, so handle it here: stop writing and settle the drain so the
|
|
25
|
+
* CLI still exits with the command's own code.
|
|
26
|
+
*/
|
|
27
|
+
export function writeStdout(text) {
|
|
28
|
+
if (!stdoutListening) {
|
|
29
|
+
stdoutListening = true;
|
|
30
|
+
process.stdout.on('error', () => {
|
|
31
|
+
stdoutClosed = true;
|
|
32
|
+
settleStdoutDrain();
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
if (stdoutClosed)
|
|
36
|
+
return;
|
|
37
|
+
if (process.stdout.write(`${text}\n`) || stdoutDrain)
|
|
38
|
+
return;
|
|
39
|
+
stdoutDrain = new Promise((resolve) => {
|
|
40
|
+
resolveStdoutDrain = resolve;
|
|
41
|
+
});
|
|
42
|
+
process.stdout.once('drain', settleStdoutDrain);
|
|
43
|
+
}
|
|
44
|
+
/** Resolves once everything written with `writeStdout` has been flushed. */
|
|
45
|
+
export function stdoutDrained() {
|
|
46
|
+
return stdoutDrain ?? Promise.resolve();
|
|
47
|
+
}
|
|
7
48
|
export function printOutput(value, jsonMode) {
|
|
8
49
|
if (jsonMode) {
|
|
9
50
|
jsonEmitted = true;
|
|
@@ -13,7 +54,7 @@ export function printOutput(value, jsonMode) {
|
|
|
13
54
|
const payload = typeof value === 'string'
|
|
14
55
|
? { schemaVersion: JSON_CONTRACT_VERSION, message: value }
|
|
15
56
|
: value;
|
|
16
|
-
|
|
57
|
+
writeStdout(JSON.stringify(payload, null, 2));
|
|
17
58
|
return;
|
|
18
59
|
}
|
|
19
60
|
if (typeof value === 'string') {
|
|
@@ -45,6 +86,6 @@ export function buildJsonErrorEnvelope(command, error) {
|
|
|
45
86
|
*/
|
|
46
87
|
export function emitJsonError(command, error) {
|
|
47
88
|
jsonEmitted = true;
|
|
48
|
-
|
|
89
|
+
writeStdout(JSON.stringify(buildJsonErrorEnvelope(command, error), null, 2));
|
|
49
90
|
}
|
|
50
91
|
//# sourceMappingURL=json-output.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-output.js","sourceRoot":"","sources":["../../src/runtime/json-output.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"json-output.js","sourceRoot":"","sources":["../../src/runtime/json-output.ts"],"names":[],"mappings":"AAYA,MAAM,qBAAqB,GAAG,CAAC,CAAA;AAE/B,IAAI,WAAW,GAAG,KAAK,CAAA;AAEvB,sFAAsF;AACtF,MAAM,UAAU,cAAc;IAC5B,OAAO,WAAW,CAAA;AACpB,CAAC;AAED,IAAI,WAAsC,CAAA;AAC1C,IAAI,kBAA4C,CAAA;AAChD,IAAI,eAAe,GAAG,KAAK,CAAA;AAC3B,IAAI,YAAY,GAAG,KAAK,CAAA;AAExB,SAAS,iBAAiB;IACxB,WAAW,GAAG,SAAS,CAAA;IACvB,kBAAkB,EAAE,EAAE,CAAA;IACtB,kBAAkB,GAAG,SAAS,CAAA;AAChC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,eAAe,GAAG,IAAI,CAAA;QACtB,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAC9B,YAAY,GAAG,IAAI,CAAA;YACnB,iBAAiB,EAAE,CAAA;QACrB,CAAC,CAAC,CAAA;IACJ,CAAC;IACD,IAAI,YAAY;QAAE,OAAM;IACxB,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,WAAW;QAAE,OAAM;IAC5D,WAAW,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QACpC,kBAAkB,GAAG,OAAO,CAAA;IAC9B,CAAC,CAAC,CAAA;IACF,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAA;AACjD,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,aAAa;IAC3B,OAAO,WAAW,IAAI,OAAO,CAAC,OAAO,EAAE,CAAA;AACzC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAc,EAAE,QAAiB;IAC3D,IAAI,QAAQ,EAAE,CAAC;QACb,WAAW,GAAG,IAAI,CAAA;QAClB,0EAA0E;QAC1E,4EAA4E;QAC5E,iEAAiE;QACjE,MAAM,OAAO,GACX,OAAO,KAAK,KAAK,QAAQ;YACvB,CAAC,CAAC,EAAE,aAAa,EAAE,qBAAqB,EAAE,OAAO,EAAE,KAAK,EAAE;YAC1D,CAAC,CAAC,KAAK,CAAA;QACX,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;QAC7C,OAAM;IACR,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACpB,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAmB,OAAgB,EAAE,OAAU;IAIjE,OAAO;QACL,OAAO;QACP,aAAa,EAAE,qBAAqB;QACpC,GAAG,OAAO;KACX,CAAA;AACH,CAAC;AAED,MAAM,UAAU,QAAQ,CAAmB,OAAgB,EAAE,OAAU;IACrE,WAAW,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,CAAA;AAClD,CAAC;AAeD,MAAM,UAAU,sBAAsB,CAAC,OAAe,EAAE,KAAgB;IACtE,OAAO;QACL,OAAO;QACP,aAAa,EAAE,qBAAqB;QACpC,EAAE,EAAE,KAAK;QACT,KAAK;KACN,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,OAAe,EAAE,KAAgB;IAC7D,WAAW,GAAG,IAAI,CAAA;IAClB,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;AAC9E,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration-store.d.ts","sourceRoot":"","sources":["../../src/runtime/migration-store.ts"],"names":[],"mappings":"AAOA,OAAO,
|
|
1
|
+
{"version":3,"file":"migration-store.d.ts","sourceRoot":"","sources":["../../src/runtime/migration-store.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAI/D,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,CAAC,CAAA;IACV,OAAO,EAAE,qBAAqB,EAAE,CAAA;CACjC;AAED,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAM5E;AAmBD,wBAAgB,aAAa,CAAC,UAAU,EAAE,kBAAkB,EAAE,GAAG,MAAM,EAAE,CAExE;AAED,wBAAsB,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAG7E;AAMD,wBAAsB,sBAAsB,CAC1C,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAiB7B;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEjD"}
|
|
@@ -3,26 +3,27 @@ import { existsSync } from 'node:fs';
|
|
|
3
3
|
import { readFile } from 'node:fs/promises';
|
|
4
4
|
import { join } from 'node:path';
|
|
5
5
|
import fg from 'fast-glob';
|
|
6
|
-
import {
|
|
7
|
-
function parseJSONOrThrow(raw, filePath, kind) {
|
|
8
|
-
try {
|
|
9
|
-
return JSON.parse(raw);
|
|
10
|
-
}
|
|
11
|
-
catch {
|
|
12
|
-
throw new Error(`Invalid ${kind} JSON at ${filePath}. Fix or remove the file and retry.`);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
6
|
+
import { parseSnapshotDocument } from './snapshot-document.js';
|
|
15
7
|
export async function readSnapshot(metaDir) {
|
|
16
8
|
const file = join(metaDir, 'snapshot.json');
|
|
17
9
|
if (!existsSync(file))
|
|
18
10
|
return null;
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
11
|
+
const parsed = parseSnapshotDocument(await readFile(file, 'utf8'));
|
|
12
|
+
if (parsed.status === 'ok')
|
|
13
|
+
return parsed.snapshot;
|
|
14
|
+
throw new Error(describeUnreadableSnapshot(file, parsed.reason));
|
|
15
|
+
}
|
|
16
|
+
function describeUnreadableSnapshot(file, reason) {
|
|
17
|
+
if (reason === 'conflict_markers') {
|
|
18
|
+
return (`Snapshot ${file} contains unresolved merge conflict markers. ` +
|
|
19
|
+
'Resolve any conflicts in your schema files, then run `chkit snapshot rebuild` to rewrite snapshot.json from them, ' +
|
|
20
|
+
'and review its report before committing. See https://chkit.obsessiondb.com/cli/snapshot/');
|
|
21
|
+
}
|
|
22
|
+
const detail = reason === 'empty' ? ' (the file is empty)' : '';
|
|
23
|
+
// During a merge or rebase the committed version is only one side of the conflict.
|
|
24
|
+
return (`Invalid snapshot JSON at ${file}${detail}. ` +
|
|
25
|
+
'Outside a merge or rebase, restore the committed version from git. ' +
|
|
26
|
+
'Otherwise, or if the file was never committed, run `chkit snapshot rebuild` to rewrite it from your schema definitions.');
|
|
26
27
|
}
|
|
27
28
|
export function summarizePlan(operations) {
|
|
28
29
|
return operations.map((op) => `${op.type} [${op.risk}] ${op.key}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration-store.js","sourceRoot":"","sources":["../../src/runtime/migration-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"migration-store.js","sourceRoot":"","sources":["../../src/runtime/migration-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor-debug.d.ts","sourceRoot":"","sources":["../../../src/runtime/plugin-runtime/executor-debug.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,
|
|
1
|
+
{"version":3,"file":"executor-debug.d.ts","sourceRoot":"","sources":["../../../src/runtime/plugin-runtime/executor-debug.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAA0C,MAAM,mBAAmB,CAAA;AA6BnG,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,kBAAkB,GAC3B,kBAAkB,CA2EpB"}
|
|
@@ -19,20 +19,22 @@ export function wrapExecutorWithDebug(executor) {
|
|
|
19
19
|
if (!isDebugEnabled())
|
|
20
20
|
return executor;
|
|
21
21
|
const queryJson = executor.queryJson?.bind(executor);
|
|
22
|
+
const systemTableSource = executor.systemTableSource?.bind(executor);
|
|
22
23
|
return {
|
|
23
|
-
|
|
24
|
+
...(systemTableSource ? { systemTableSource } : {}),
|
|
25
|
+
command(sql, settings) {
|
|
24
26
|
debug('clickhouse', `command: ${truncate(sql)}`);
|
|
25
|
-
return trace('command', null, () => executor.command(sql));
|
|
27
|
+
return trace('command', null, () => executor.command(sql, settings));
|
|
26
28
|
},
|
|
27
|
-
query(sql) {
|
|
29
|
+
query(sql, settings) {
|
|
28
30
|
debug('clickhouse', `query: ${truncate(sql)}`);
|
|
29
|
-
return trace('query', (rows) => `${rows.length} rows`, () => executor.query(sql));
|
|
31
|
+
return trace('query', (rows) => `${rows.length} rows`, () => executor.query(sql, settings));
|
|
30
32
|
},
|
|
31
33
|
...(queryJson
|
|
32
34
|
? {
|
|
33
|
-
queryJson(sql) {
|
|
35
|
+
queryJson(sql, settings) {
|
|
34
36
|
debug('clickhouse', `queryJson: ${truncate(sql)}`);
|
|
35
|
-
return trace('queryJson', (payload) => `${payload.rows} rows`, () => queryJson(sql));
|
|
37
|
+
return trace('queryJson', (payload) => `${payload.rows} rows`, () => queryJson(sql, settings));
|
|
36
38
|
},
|
|
37
39
|
}
|
|
38
40
|
: {}),
|
|
@@ -40,9 +42,9 @@ export function wrapExecutorWithDebug(executor) {
|
|
|
40
42
|
debug('clickhouse', `insert into ${params.table} — ${params.values.length} rows`);
|
|
41
43
|
return trace('insert', null, () => executor.insert(params));
|
|
42
44
|
},
|
|
43
|
-
submit(sql, queryId) {
|
|
45
|
+
submit(sql, queryId, settings) {
|
|
44
46
|
debug('clickhouse', `submit${queryId ? ` (id: ${queryId})` : ''}: ${truncate(sql)}`);
|
|
45
|
-
return trace('submit', (id) => `id: ${id}`, () => executor.submit(sql, queryId));
|
|
47
|
+
return trace('submit', (id) => `id: ${id}`, () => executor.submit(sql, queryId, settings));
|
|
46
48
|
},
|
|
47
49
|
queryStatus(queryId, options) {
|
|
48
50
|
debug('clickhouse', `queryStatus for ${queryId}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor-debug.js","sourceRoot":"","sources":["../../../src/runtime/plugin-runtime/executor-debug.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAEnD,SAAS,QAAQ,CAAC,GAAW;IAC3B,OAAO,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAA;AAC3D,CAAC;AAED,KAAK,UAAU,KAAK,CAClB,KAAa,EACb,UAA0C,EAC1C,EAAoB;IAEpB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;IAC/B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,EAAE,EAAE,CAAA;QACzB,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QAC3D,KAAK,CAAC,YAAY,EAAE,GAAG,KAAK,MAAM,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;QACxF,OAAO,MAAM,CAAA;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,KAAK,CACH,YAAY,EACZ,GAAG,KAAK,YAAY,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,KAAK,EAC9D,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAC/C,CAAA;QACD,MAAM,KAAK,CAAA;IACb,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,QAA4B;IAE5B,IAAI,CAAC,cAAc,EAAE;QAAE,OAAO,QAAQ,CAAA;IACtC,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;IAEpD,OAAO;QACL,OAAO,CAAC,GAAW;
|
|
1
|
+
{"version":3,"file":"executor-debug.js","sourceRoot":"","sources":["../../../src/runtime/plugin-runtime/executor-debug.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/runtime/plugin-runtime/loader.ts"],"names":[],"mappings":"AAWA,MAAM,UAAU,2BAA2B,CACzC,KAA4B;IAE5B,OAAO;QACL,MAAM,EAAE,KAAK,CAAC,MAAmB;QACjC,QAAQ,EAAE,KAAK,CAAC,IAAI;QACpB,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,KAAK;QAChC,OAAO,EAAE,KAAK,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/runtime/plugin-runtime/loader.ts"],"names":[],"mappings":"AAWA,MAAM,UAAU,2BAA2B,CACzC,KAA4B;IAE5B,OAAO;QACL,MAAM,EAAE,KAAK,CAAC,MAAmB;QACjC,QAAQ,EAAE,KAAK,CAAC,IAAI;QACpB,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,KAAK;QAChC,OAAO,EAAE,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE;KAC9B,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CAAC,OAAe;IACpC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAA;IACzD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,wBAAwB,OAAO,0BAA0B,CAAC,CAAA;IAC5E,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,UAAkB,EAClB,MAAiB,EACjB,WAAmB;IAEnB,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAA;IACjC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,aAAa,WAAW,8BAA8B,CAAC,CAAA;IACzE,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CACb,WAAW,IAAI,yBAAyB,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,iCAAiC,CAC5G,CAAA;IACH,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAA;IACxD,IAAI,CAAC,aAAa;QAAE,OAAM;IAE1B,MAAM,QAAQ,GAAG,aAAa,CAAC,UAAU,CAAC,CAAA;IAC1C,IACE,aAAa,CAAC,QAAQ,KAAK,SAAS;QACpC,QAAQ,GAAG,aAAa,CAAC,QAAQ,EACjC,CAAC;QACD,MAAM,IAAI,KAAK,CACb,WAAW,IAAI,8BAA8B,UAAU,2BAA2B,aAAa,CAAC,QAAQ,GAAG,CAC5G,CAAA;IACH,CAAC;IACD,IACE,aAAa,CAAC,QAAQ,KAAK,SAAS;QACpC,QAAQ,GAAG,aAAa,CAAC,QAAQ,EACjC,CAAC;QACD,MAAM,IAAI,KAAK,CACb,WAAW,IAAI,8BAA8B,UAAU,2BAA2B,aAAa,CAAC,QAAQ,GAAG,CAC5G,CAAA;IACH,CAAC;AACH,CAAC"}
|