spindb 0.69.1 → 0.69.4
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/dist/cli/commands/restore.js +43 -2
- package/dist/cli/commands/restore.js.map +1 -1
- package/dist/config/version.js +1 -1
- package/dist/engines/couchdb/index.js +123 -3
- package/dist/engines/couchdb/index.js.map +1 -1
- package/dist/engines/postgresql/drop-database-sql.js +94 -0
- package/dist/engines/postgresql/drop-database-sql.js.map +1 -0
- package/dist/engines/postgresql/index.js +97 -29
- package/dist/engines/postgresql/index.js.map +1 -1
- package/dist/engines/redis/cli-common.js +45 -1
- package/dist/engines/redis/cli-common.js.map +1 -1
- package/dist/engines/redis/resp-client.js +539 -55
- package/dist/engines/redis/resp-client.js.map +1 -1
- package/dist/engines/valkey/restore.js +57 -5
- package/dist/engines/valkey/restore.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The SQL a PostgreSQL drop needs, and the version gate in front of it.
|
|
3
|
+
*
|
|
4
|
+
* PostgreSQL refuses `DROP DATABASE` while any session is attached to the
|
|
5
|
+
* target ("database <name> is being accessed by other users"). Terminating the
|
|
6
|
+
* attached backends first and then dropping is the classic workaround, but it
|
|
7
|
+
* is a race, not a fix: between the terminate and the drop, anything that
|
|
8
|
+
* reconnects on its own - a pgbouncer pool re-opening its server connection, a
|
|
9
|
+
* query console, the customer's app - re-attaches and the drop fails again.
|
|
10
|
+
* That is how `spindb restore --force` over a live cloud database failed three
|
|
11
|
+
* times in a row for one migration.
|
|
12
|
+
*
|
|
13
|
+
* PostgreSQL 13 added `DROP DATABASE ... WITH (FORCE)`, which terminates the
|
|
14
|
+
* sessions inside the same statement, so there is no window to reconnect in.
|
|
15
|
+
* Use it wherever it exists; keep the two-step (plus one retry) for older
|
|
16
|
+
* servers, which have nothing better.
|
|
17
|
+
*
|
|
18
|
+
* These builders are pure so the gate itself is unit-testable without a server.
|
|
19
|
+
*/
|
|
20
|
+
/** First major version that understands `DROP DATABASE ... WITH (FORCE)`. */
|
|
21
|
+
export const DROP_FORCE_MIN_MAJOR = 13;
|
|
22
|
+
/** How long to wait before the one retry the two-step path gets. */
|
|
23
|
+
export const DROP_RETRY_DELAY_MS = 500;
|
|
24
|
+
/**
|
|
25
|
+
* Major version number out of a container's recorded version string.
|
|
26
|
+
*
|
|
27
|
+
* Accepts what container.json actually holds: a pinned full version
|
|
28
|
+
* ('18.4.0'), legacy shorthand ('18'), and pre-10 shapes ('9.6.24' -> 9,
|
|
29
|
+
* which is below the gate either way). Returns null for 'unknown', an empty
|
|
30
|
+
* value, or anything that does not start with digits - the caller then treats
|
|
31
|
+
* the server as too old to force, which is the safe direction.
|
|
32
|
+
*/
|
|
33
|
+
export function parsePostgresMajor(version) {
|
|
34
|
+
if (!version)
|
|
35
|
+
return null;
|
|
36
|
+
const match = /^(\d+)/.exec(version.trim());
|
|
37
|
+
if (!match)
|
|
38
|
+
return null;
|
|
39
|
+
const major = Number(match[1]);
|
|
40
|
+
return Number.isInteger(major) && major > 0 ? major : null;
|
|
41
|
+
}
|
|
42
|
+
/** Whether this server can drop with FORCE. Unknown version = no. */
|
|
43
|
+
export function supportsDropForce(major) {
|
|
44
|
+
return major !== null && major >= DROP_FORCE_MIN_MAJOR;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* `DROP DATABASE` statement for a server of this vintage.
|
|
48
|
+
*
|
|
49
|
+
* The name is quoted (and validated by the caller through
|
|
50
|
+
* assertValidDatabaseName), IF EXISTS keeps a repeat drop harmless.
|
|
51
|
+
*/
|
|
52
|
+
export function buildDropDatabaseSql(database, options) {
|
|
53
|
+
return options.force
|
|
54
|
+
? `DROP DATABASE IF EXISTS "${database}" WITH (FORCE)`
|
|
55
|
+
: `DROP DATABASE IF EXISTS "${database}"`;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Terminate every backend attached to `database` except the connection issuing
|
|
59
|
+
* the statement - the two-step path's first step, and what renameDatabase
|
|
60
|
+
* needs on every version (ALTER DATABASE has no FORCE).
|
|
61
|
+
*/
|
|
62
|
+
export function buildTerminateConnectionsSql(database) {
|
|
63
|
+
return `SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname = '${database}' AND pid <> pg_backend_pid()`;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* The database to connect to in order to drop `database`.
|
|
67
|
+
*
|
|
68
|
+
* A drop can never run from inside its own target, so admin statements go to
|
|
69
|
+
* 'postgres'. Dropping 'postgres' itself (possible on a server whose default
|
|
70
|
+
* maintenance database was recreated) has to run from somewhere else.
|
|
71
|
+
*/
|
|
72
|
+
export function maintenanceDatabaseFor(database) {
|
|
73
|
+
return database === 'postgres' ? 'template1' : 'postgres';
|
|
74
|
+
}
|
|
75
|
+
/** "database ... is being accessed by other users" - the retryable one. */
|
|
76
|
+
export function isDatabaseInUseError(message) {
|
|
77
|
+
return /is being accessed by other users/i.test(message);
|
|
78
|
+
}
|
|
79
|
+
/** "database ... does not exist" - nothing to drop, treat as done. */
|
|
80
|
+
export function isDatabaseMissingError(message) {
|
|
81
|
+
return /does not exist/i.test(message);
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* A server that does not understand WITH (FORCE) after all - the recorded
|
|
85
|
+
* container version said 13+ but the binary answering is older (a container
|
|
86
|
+
* created before versions were pinned, a binary swapped underneath). Fall back
|
|
87
|
+
* to the two-step rather than reporting a syntax error as a drop failure.
|
|
88
|
+
*/
|
|
89
|
+
export function isDropForceUnsupportedError(message) {
|
|
90
|
+
return (/syntax error at or near "?FORCE/i.test(message) ||
|
|
91
|
+
/unrecognized DROP DATABASE option/i.test(message) ||
|
|
92
|
+
/option "?force"? is not recognized/i.test(message));
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=drop-database-sql.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drop-database-sql.js","sourceRoot":"","sources":["../../../engines/postgresql/drop-database-sql.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,6EAA6E;AAC7E,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAA;AAEtC,oEAAoE;AACpE,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;AAEtC;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAuB;IACxD,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAA;IACzB,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;IAC3C,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAA;IACvB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9B,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AAC5D,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,iBAAiB,CAAC,KAAoB;IACpD,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,IAAI,oBAAoB,CAAA;AACxD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAClC,QAAgB,EAChB,OAA2B;IAE3B,OAAO,OAAO,CAAC,KAAK;QAClB,CAAC,CAAC,4BAA4B,QAAQ,gBAAgB;QACtD,CAAC,CAAC,4BAA4B,QAAQ,GAAG,CAAA;AAC7C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAAC,QAAgB;IAC3D,OAAO,2EAA2E,QAAQ,+BAA+B,CAAA;AAC3H,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAAgB;IACrD,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAA;AAC3D,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,oBAAoB,CAAC,OAAe;IAClD,OAAO,mCAAmC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AAC1D,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,sBAAsB,CAAC,OAAe;IACpD,OAAO,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AACxC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAe;IACzD,OAAO,CACL,kCAAkC,CAAC,IAAI,CAAC,OAAO,CAAC;QAChD,oCAAoC,CAAC,IAAI,CAAC,OAAO,CAAC;QAClD,qCAAqC,CAAC,IAAI,CAAC,OAAO,CAAC,CACpD,CAAA;AACH,CAAC"}
|
|
@@ -15,6 +15,7 @@ import { getBinaryUrl } from './binary-urls.js';
|
|
|
15
15
|
import { fetchAvailableVersions, getLatestVersion } from './hostdb-releases.js';
|
|
16
16
|
import { SUPPORTED_MAJOR_VERSIONS, POSTGRESQL_VERSION_MAP, normalizeVersion, } from './version-maps.js';
|
|
17
17
|
import { detectBackupFormat, restoreBackup } from './restore.js';
|
|
18
|
+
import { DROP_RETRY_DELAY_MS, buildDropDatabaseSql, buildTerminateConnectionsSql, isDatabaseInUseError, isDatabaseMissingError, isDropForceUnsupportedError, maintenanceDatabaseFor, parsePostgresMajor, supportsDropForce, } from './drop-database-sql.js';
|
|
18
19
|
import { createBackup } from './backup.js';
|
|
19
20
|
import { validateDumpCompatibility, } from './version-validator.js';
|
|
20
21
|
import { getDefaultUsername, loadCredentials, } from '../../core/credential-manager.js';
|
|
@@ -510,33 +511,107 @@ export class PostgreSQLEngine extends BaseEngine {
|
|
|
510
511
|
});
|
|
511
512
|
});
|
|
512
513
|
}
|
|
514
|
+
/**
|
|
515
|
+
* Run one admin statement against this server's maintenance database.
|
|
516
|
+
*
|
|
517
|
+
* spawn (not a shell command string) so nothing has to be quoted for cmd.exe
|
|
518
|
+
* vs sh, and so the psql error text comes back on its own instead of buried
|
|
519
|
+
* in exec's "Command failed: <the whole command line>" wrapper - a drop that
|
|
520
|
+
* fails has to be able to say WHY.
|
|
521
|
+
*/
|
|
522
|
+
async runAdminStatement(container, sql, maintenanceDatabase) {
|
|
523
|
+
const { port } = container;
|
|
524
|
+
const psqlPath = await this.getPsqlPath();
|
|
525
|
+
await new Promise((resolve, reject) => {
|
|
526
|
+
const proc = spawn(psqlPath, [
|
|
527
|
+
'-h',
|
|
528
|
+
'127.0.0.1',
|
|
529
|
+
'-p',
|
|
530
|
+
String(port),
|
|
531
|
+
'-U',
|
|
532
|
+
defaults.superuser,
|
|
533
|
+
'-d',
|
|
534
|
+
maintenanceDatabase,
|
|
535
|
+
'-c',
|
|
536
|
+
sql,
|
|
537
|
+
], { stdio: ['ignore', 'pipe', 'pipe'] });
|
|
538
|
+
let stdout = '';
|
|
539
|
+
let stderr = '';
|
|
540
|
+
proc.stdout?.on('data', (data) => {
|
|
541
|
+
stdout += data.toString();
|
|
542
|
+
});
|
|
543
|
+
proc.stderr?.on('data', (data) => {
|
|
544
|
+
stderr += data.toString();
|
|
545
|
+
});
|
|
546
|
+
proc.on('error', reject);
|
|
547
|
+
proc.on('close', (code) => {
|
|
548
|
+
if (code === 0) {
|
|
549
|
+
resolve();
|
|
550
|
+
return;
|
|
551
|
+
}
|
|
552
|
+
const output = `${stderr}\n${stdout}`.trim();
|
|
553
|
+
reject(new Error(output || `psql exited with code ${code ?? 'unknown'}`));
|
|
554
|
+
});
|
|
555
|
+
});
|
|
556
|
+
}
|
|
513
557
|
/**
|
|
514
558
|
* Drop a database using PostgreSQL's native DROP DATABASE.
|
|
515
|
-
*
|
|
516
|
-
*
|
|
559
|
+
*
|
|
560
|
+
* PostgreSQL refuses the drop while any session is attached to the target
|
|
561
|
+
* ("database <name> is being accessed by other users"). On 13+ that is
|
|
562
|
+
* handled inside the statement with WITH (FORCE), which is the only version
|
|
563
|
+
* of this that is not a race - terminating the backends first and then
|
|
564
|
+
* dropping leaves a window for a pooler or the user's app to reconnect in,
|
|
565
|
+
* and the drop fails again. Older servers get the two-step plus one retry.
|
|
566
|
+
*
|
|
567
|
+
* The connection issuing the drop always targets the maintenance database,
|
|
568
|
+
* never the one being dropped.
|
|
517
569
|
*/
|
|
518
570
|
async dropDatabase(container, database) {
|
|
519
571
|
assertValidDatabaseName(database);
|
|
520
|
-
const
|
|
521
|
-
const
|
|
522
|
-
//
|
|
523
|
-
//
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
const
|
|
528
|
-
const cmd = isWindows()
|
|
529
|
-
? `"${psqlPath}" -h 127.0.0.1 -p ${port} -U ${defaults.superuser} -d postgres -c "${sql.replace(/"/g, '\\"')}"`
|
|
530
|
-
: `"${psqlPath}" -h 127.0.0.1 -p ${port} -U ${defaults.superuser} -d postgres -c '${sql}'`;
|
|
572
|
+
const canForce = supportsDropForce(parsePostgresMajor(container.version));
|
|
573
|
+
const maintenanceDatabase = maintenanceDatabaseFor(database);
|
|
574
|
+
// Pre-13 only: clear the sessions in a separate statement first. On 13+
|
|
575
|
+
// WITH (FORCE) does it atomically, so this round-trip is pure race.
|
|
576
|
+
if (!canForce) {
|
|
577
|
+
await this.terminateConnections(container, database);
|
|
578
|
+
}
|
|
579
|
+
const drop = (force) => this.runAdminStatement(container, buildDropDatabaseSql(database, { force }), maintenanceDatabase);
|
|
531
580
|
try {
|
|
532
|
-
await
|
|
581
|
+
await drop(canForce);
|
|
582
|
+
return;
|
|
533
583
|
}
|
|
534
584
|
catch (error) {
|
|
535
|
-
const
|
|
536
|
-
//
|
|
537
|
-
if (
|
|
538
|
-
|
|
585
|
+
const message = error.message ?? String(error);
|
|
586
|
+
// Nothing to drop.
|
|
587
|
+
if (isDatabaseMissingError(message))
|
|
588
|
+
return;
|
|
589
|
+
// The recorded container version claimed 13+ but the server answering is
|
|
590
|
+
// older. Fall back to the two-step rather than reporting a syntax error.
|
|
591
|
+
if (canForce && isDropForceUnsupportedError(message)) {
|
|
592
|
+
await this.terminateConnections(container, database);
|
|
593
|
+
await this.retryDropDatabase(container, database, false);
|
|
594
|
+
return;
|
|
539
595
|
}
|
|
596
|
+
// Something attached between our terminate and the drop (or FORCE lost a
|
|
597
|
+
// race with a reconnecting pooler). Clear it and try once more.
|
|
598
|
+
if (!isDatabaseInUseError(message))
|
|
599
|
+
throw error;
|
|
600
|
+
await new Promise((resolve) => setTimeout(resolve, DROP_RETRY_DELAY_MS));
|
|
601
|
+
await this.terminateConnections(container, database);
|
|
602
|
+
await this.retryDropDatabase(container, database, canForce);
|
|
603
|
+
}
|
|
604
|
+
}
|
|
605
|
+
/** The single retry dropDatabase allows itself. */
|
|
606
|
+
async retryDropDatabase(container, database, force) {
|
|
607
|
+
try {
|
|
608
|
+
await this.runAdminStatement(container, buildDropDatabaseSql(database, { force }), maintenanceDatabaseFor(database));
|
|
609
|
+
}
|
|
610
|
+
catch (error) {
|
|
611
|
+
const message = error.message ?? String(error);
|
|
612
|
+
if (isDatabaseMissingError(message))
|
|
613
|
+
return;
|
|
614
|
+
throw error;
|
|
540
615
|
}
|
|
541
616
|
}
|
|
542
617
|
/**
|
|
@@ -690,18 +765,11 @@ export class PostgreSQLEngine extends BaseEngine {
|
|
|
690
765
|
}
|
|
691
766
|
async terminateConnections(container, database) {
|
|
692
767
|
assertValidDatabaseName(database);
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
//
|
|
696
|
-
const sql = `SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname = '${database}' AND pid <> pg_backend_pid()`;
|
|
697
|
-
// Connect to 'postgres' database for admin operations
|
|
698
|
-
// Escape single quotes for shell: ' becomes '\'' (end quote, escaped quote, start quote)
|
|
699
|
-
const shellEscapedSql = sql.replace(/'/g, "'\\''");
|
|
700
|
-
const cmd = isWindows()
|
|
701
|
-
? `"${psqlPath}" -h 127.0.0.1 -p ${port} -U ${defaults.superuser} -d postgres -c "${sql.replace(/"/g, '\\"')}"`
|
|
702
|
-
: `"${psqlPath}" -h 127.0.0.1 -p ${port} -U ${defaults.superuser} -d postgres -c '${shellEscapedSql}'`;
|
|
768
|
+
// Terminate all connections to the database except our own, from the
|
|
769
|
+
// maintenance database (a session cannot terminate itself out of the
|
|
770
|
+
// database it is connected to).
|
|
703
771
|
try {
|
|
704
|
-
await
|
|
772
|
+
await this.runAdminStatement(container, buildTerminateConnectionsSql(database), maintenanceDatabaseFor(database));
|
|
705
773
|
}
|
|
706
774
|
catch {
|
|
707
775
|
// Ignore errors - connections may already be gone
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../engines/postgresql/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../engines/postgresql/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,52 @@
|
|
|
1
1
|
import { basename, dirname } from 'path';
|
|
2
2
|
import { getLibraryEnv } from '../../core/library-env.js';
|
|
3
3
|
import { IMPLICIT_RESP_USERNAMES } from './resp-client.js';
|
|
4
|
+
// The error codes a Redis-family server answers with. `redis-cli` reading
|
|
5
|
+
// commands from stdin EXITS 0 even when every one of them was refused - it
|
|
6
|
+
// prints the server's reply and moves on - so the reply text is the only
|
|
7
|
+
// verdict available, and a marker list that misses a code silently turns a
|
|
8
|
+
// failed restore into a reported success.
|
|
9
|
+
//
|
|
10
|
+
// `OOM` is why this list grew: `(error) OOM command not allowed when used
|
|
11
|
+
// memory > 'maxmemory'.` does not start with `ERR`, so a text restore into a
|
|
12
|
+
// Redis with a `maxmemory` set resolved with `code: 0` and an empty database.
|
|
13
|
+
// `MISCONF` (the server refusing writes after a failed background save) and
|
|
14
|
+
// `READONLY` (a replica) fail the same way, for the same reason.
|
|
15
|
+
const REDIS_ERROR_CODES = [
|
|
16
|
+
'ERR',
|
|
17
|
+
'OOM',
|
|
18
|
+
'MISCONF',
|
|
19
|
+
'READONLY',
|
|
20
|
+
'NOAUTH',
|
|
21
|
+
'WRONGPASS',
|
|
22
|
+
'NOPERM',
|
|
23
|
+
'WRONGTYPE',
|
|
24
|
+
'NOSCRIPT',
|
|
25
|
+
'EXECABORT',
|
|
26
|
+
'LOADING',
|
|
27
|
+
'BUSY',
|
|
28
|
+
'MASTERDOWN',
|
|
29
|
+
'NOREPLICAS',
|
|
30
|
+
'UNKILLABLE',
|
|
31
|
+
'CROSSSLOT',
|
|
32
|
+
'CLUSTERDOWN',
|
|
33
|
+
'TRYAGAIN',
|
|
34
|
+
'MOVED',
|
|
35
|
+
'ASK',
|
|
36
|
+
'DENIED',
|
|
37
|
+
].join('|');
|
|
4
38
|
function getRedisCliErrorMarkers() {
|
|
5
|
-
return [
|
|
39
|
+
return [
|
|
40
|
+
// A reply LINE that is an error, with or without redis-cli's `(error) `
|
|
41
|
+
// prefix (it prints the prefix interactively and bare when piped).
|
|
42
|
+
new RegExp(`^(?:\\(error\\)\\s*)?(?:${REDIS_ERROR_CODES})\\b`, 'm'),
|
|
43
|
+
// The original unanchored markers, kept exactly as they were so nothing
|
|
44
|
+
// that used to be caught stops being caught.
|
|
45
|
+
/\bNOAUTH\b/,
|
|
46
|
+
/\bWRONGPASS\b/,
|
|
47
|
+
/\bNOPERM\b/,
|
|
48
|
+
/\bACL\b/,
|
|
49
|
+
];
|
|
6
50
|
}
|
|
7
51
|
// Decide whether a resolved username is a real ACL user worth passing to
|
|
8
52
|
// `redis-cli --user`. The placeholder usernames come from the same
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-common.js","sourceRoot":"","sources":["../../../engines/redis/cli-common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAOvD,SAAS,uBAAuB;IAC9B,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"cli-common.js","sourceRoot":"","sources":["../../../engines/redis/cli-common.ts"],"names":[],"mappings":"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"}
|