@dbos-inc/dbos-sdk 4.26.4-preview → 4.26.6-preview
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/src/cli/cli.d.ts.map +1 -1
- package/dist/src/cli/cli.js +4 -10
- package/dist/src/cli/cli.js.map +1 -1
- package/dist/src/database_utils.d.ts +13 -91
- package/dist/src/database_utils.d.ts.map +1 -1
- package/dist/src/database_utils.js +58 -398
- package/dist/src/database_utils.js.map +1 -1
- package/dist/src/datasource.d.ts +1 -1
- package/dist/src/datasource.d.ts.map +1 -1
- package/dist/src/datasource.js +1 -10
- package/dist/src/datasource.js.map +1 -1
- package/dist/src/system_database.d.ts.map +1 -1
- package/dist/src/system_database.js +65 -35
- package/dist/src/system_database.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -1,245 +1,71 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.maskDatabaseUrl = exports.getDatabaseNameFromUrl = exports.deriveDatabaseUrl = exports.ensurePGDatabase = exports.dropPGDatabase = void 0;
|
|
4
4
|
const pg_1 = require("pg");
|
|
5
|
+
const error_1 = require("./error");
|
|
6
|
+
const utils_1 = require("./utils");
|
|
7
|
+
/** Both helpers address the database by name, so a URL without one is a caller error, not a runtime failure. */
|
|
8
|
+
function requireDatabaseName(databaseUrl) {
|
|
9
|
+
const dbName = getDatabaseNameFromUrl(databaseUrl);
|
|
10
|
+
if (!dbName) {
|
|
11
|
+
throw new error_1.DBOSError(`No database name in ${maskDatabaseUrl(databaseUrl)}; expected a path such as /mydb`);
|
|
12
|
+
}
|
|
13
|
+
return dbName;
|
|
14
|
+
}
|
|
5
15
|
/**
|
|
6
|
-
* Drop
|
|
7
|
-
*
|
|
8
|
-
* Environment variables are not currently considered.
|
|
9
|
-
*
|
|
10
|
-
* @param opts - Options for connecting to DB and issuing the drop
|
|
11
|
-
* @returns `DropDatabaseResult` indicating success, failures, and any notes or hints
|
|
16
|
+
* Drop `databaseUrl`'s database, via the admin (`/postgres`) database on the same server.
|
|
17
|
+
* Throws if the drop could not be carried out.
|
|
12
18
|
*/
|
|
13
|
-
async function dropPGDatabase(
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
const log = (msg) => {
|
|
19
|
-
notes.push(msg);
|
|
20
|
-
(opts.logger ?? console.log)(msg);
|
|
21
|
-
};
|
|
22
|
-
function fail(msg, hint) {
|
|
23
|
-
log(`FAIL: ${msg}${hint ? ` | HINT: ${hint}` : ''}`);
|
|
24
|
-
return { message: msg, status: 'failed', notes, hint };
|
|
25
|
-
}
|
|
26
|
-
const adminUrl = opts.adminUrl ?? (opts.urlToDrop ? deriveDatabaseUrl(opts.urlToDrop, 'postgres') : undefined);
|
|
27
|
-
if (!adminUrl) {
|
|
28
|
-
// We could consider the environment, but let's not right now.
|
|
29
|
-
throw new TypeError(`dropPostgresDatabase requires a connection string to a database with permission to perform the DROP`);
|
|
30
|
-
}
|
|
31
|
-
const maybeTemplate1Url = deriveDatabaseUrl(opts.urlToDrop ?? adminUrl, 'template1');
|
|
32
|
-
const tryTemplate1Fallback = opts.tryTemplate1Fallback ?? true;
|
|
33
|
-
const targetDb = opts.dbToDrop ?? getDatabaseNameFromUrl(opts.urlToDrop);
|
|
34
|
-
if (!targetDb) {
|
|
35
|
-
return fail('Target URL has no database name in the path (e.g., /mydb).', 'Fix the target URL and retry.');
|
|
36
|
-
}
|
|
37
|
-
log(`Target DB to drop: ${targetDb}`);
|
|
38
|
-
log(`Admin URL (planned): ${maskDatabaseUrl(adminUrl)}`);
|
|
39
|
-
// 1) Try admin connection first (best detection for existence & privileges)
|
|
40
|
-
let admin = await connectToPGDatabase(adminUrl, log);
|
|
41
|
-
if (!admin && tryTemplate1Fallback) {
|
|
42
|
-
log(`Admin connect failed. Trying template1 as a fallback...`);
|
|
43
|
-
admin = await connectToPGDatabase(maybeTemplate1Url, log);
|
|
44
|
-
}
|
|
45
|
-
// Helper to check DB existence via catalog (requires admin connection)
|
|
46
|
-
const checkExistsViaAdmin = async () => {
|
|
47
|
-
if (!admin)
|
|
48
|
-
return 'unknown';
|
|
49
|
-
const { rows } = await admin.query(`SELECT EXISTS (SELECT 1 FROM pg_database WHERE datname = $1) AS exists`, [targetDb]);
|
|
50
|
-
return rows[0]?.exists ?? false;
|
|
51
|
-
};
|
|
19
|
+
async function dropPGDatabase(databaseUrl, logger) {
|
|
20
|
+
const quoted = quotePGIdentifier(requireDatabaseName(databaseUrl));
|
|
21
|
+
const client = new pg_1.Client((0, utils_1.getClientConfig)(deriveDatabaseUrl(databaseUrl, 'postgres')));
|
|
22
|
+
// An 'error' event with no listener would take down the process.
|
|
23
|
+
client.on('error', (err) => logger.warn(`Unexpected error in admin client: ${err}`));
|
|
52
24
|
try {
|
|
53
|
-
|
|
54
|
-
let exists = 'unknown';
|
|
55
|
-
if (admin) {
|
|
56
|
-
exists = await checkExistsViaAdmin();
|
|
57
|
-
if (exists === false) {
|
|
58
|
-
log(`DB "${targetDb}" does not exist (confirmed via catalog).`);
|
|
59
|
-
return { status: 'did_not_exist', notes, message: 'Success (already dropped)' };
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
// If we couldn't connect as admin, try connecting to target to distinguish "doesn't exist" from failure to connect.
|
|
63
|
-
if (!admin) {
|
|
64
|
-
const probe = await connectToPGAndReportOutcome(opts.urlToDrop ?? deriveDatabaseUrl(adminUrl, targetDb), log, 'probe target (existence test)');
|
|
65
|
-
if (probe.result === 'ok') {
|
|
66
|
-
// We can reach the target DB—so it exists—but we’re connected *to* it; we cannot DROP from within.
|
|
67
|
-
await probe.client.end().catch(() => { });
|
|
68
|
-
return fail(`Database "${targetDb}" exists, but we could not establish an admin connection to drop it.`, `Provide an admin/alternate DB URL (same server) with privileges to DROP DATABASE`);
|
|
69
|
-
}
|
|
70
|
-
else if (probe.code === '3D000') {
|
|
71
|
-
log(`DB "${targetDb}" does not exist (error 3D000 while connecting). Database already does not exist.`);
|
|
72
|
-
return { status: 'did_not_exist', notes, message: 'Success (already dropped)' };
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
// Ambiguous: not proven missing, no admin path to check or drop.
|
|
76
|
-
return fail(`Could not establish any admin connection, and target connect failed with ${probe.code ?? probe.result}.`, networkOrAuthHint(probe.code));
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
// 2) We have an admin connection and the DB likely exists. Check privileges upfront (nice error).
|
|
80
|
-
const who = await currentDBUserIdentity(admin);
|
|
81
|
-
const owner = await getPGDatabaseOwner(admin, targetDb);
|
|
82
|
-
if (!who.isSuperuser && owner && owner !== who.user) {
|
|
83
|
-
log(`Ownership check: DB owned by "${owner}", current_user is "${who.user}" (superuser=${who.isSuperuser}).`);
|
|
84
|
-
// We can still try (maybe you have sufficient rights via membership), but warn early.
|
|
85
|
-
log(`Warning: You might lack privileges to DROP this database unless you are the owner or superuser.`);
|
|
86
|
-
}
|
|
87
|
-
// 3) Attempt the drop
|
|
25
|
+
await client.connect();
|
|
88
26
|
try {
|
|
89
|
-
|
|
90
|
-
await dropWithForce(admin, targetDb);
|
|
27
|
+
await client.query(`DROP DATABASE IF EXISTS ${quoted} WITH (FORCE)`);
|
|
91
28
|
}
|
|
92
|
-
catch (
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
try {
|
|
98
|
-
await terminateAndDrop(admin, targetDb, 3000, log);
|
|
99
|
-
}
|
|
100
|
-
catch (err2) {
|
|
101
|
-
const e2 = err2;
|
|
102
|
-
await admin.end().catch(() => { });
|
|
103
|
-
return fail(`Drop failed even after fallback: ${shortenErr(e2)}`, createDropHintFromSqlState(e2?.code));
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
else {
|
|
107
|
-
await admin.end().catch(() => { });
|
|
108
|
-
return fail(`Drop failed: ${shortenErr(e)}`, createDropHintFromSqlState(e?.code));
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
// 4) Verify postcondition
|
|
112
|
-
const finalExists = await checkExistsViaAdmin();
|
|
113
|
-
if (finalExists === false) {
|
|
114
|
-
log(`Verified: database "${targetDb}" is gone.`);
|
|
115
|
-
return { status: 'dropped', notes, message: 'Success (dropped)' };
|
|
116
|
-
}
|
|
117
|
-
else if (finalExists === true) {
|
|
118
|
-
return fail(`After drop attempt, database "${targetDb}" still exists.`, `Terminate all sessions and retry.`);
|
|
119
|
-
}
|
|
120
|
-
else {
|
|
121
|
-
// Unknown (shouldn't happen with admin connected)
|
|
122
|
-
log(`Could not verify drop due to unexpected state.`);
|
|
123
|
-
return { status: 'dropped', notes, message: 'Success (dropped)' }; // we did our best; treat as success if we didn't see errors
|
|
29
|
+
catch (e) {
|
|
30
|
+
// CockroachDB and Postgres before 13 reject WITH (FORCE), and drop an idle database without it.
|
|
31
|
+
if (e.code !== '42601')
|
|
32
|
+
throw e;
|
|
33
|
+
await client.query(`DROP DATABASE IF EXISTS ${quoted}`);
|
|
124
34
|
}
|
|
125
35
|
}
|
|
126
36
|
finally {
|
|
127
|
-
await
|
|
37
|
+
await client.end().catch(() => { });
|
|
128
38
|
}
|
|
129
39
|
}
|
|
130
40
|
exports.dropPGDatabase = dropPGDatabase;
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
}
|
|
144
|
-
const targetDb = opts.dbToEnsure ?? getDatabaseNameFromUrl(opts.urlToEnsure);
|
|
145
|
-
if (!targetDb) {
|
|
146
|
-
return fail('Target URL has no database name in the path (e.g., /mydb).', 'Fix the target URL and retry.');
|
|
147
|
-
}
|
|
148
|
-
// Try a quick connect attempt first; this requires the least assumptions and has the least chance of messing us up.
|
|
149
|
-
if (opts.urlToEnsure) {
|
|
150
|
-
try {
|
|
151
|
-
const probe = await connectToPGAndReportOutcome(opts.urlToEnsure, log, 'probe target (existence test)');
|
|
152
|
-
if (probe.result === 'ok') {
|
|
153
|
-
// CockroachDB lets you connect to (and SELECT 1 from) a nonexistent database;
|
|
154
|
-
// hit a catalog that requires the current database to exist to verify.
|
|
155
|
-
try {
|
|
156
|
-
await probe.client.query('SELECT 1 FROM information_schema.schemata LIMIT 1');
|
|
157
|
-
await probe.client.end().catch(() => { });
|
|
158
|
-
return { status: 'already_exists', notes, message: 'Success (already existed)' };
|
|
159
|
-
}
|
|
160
|
-
catch (qerr) {
|
|
161
|
-
await probe.client.end().catch(() => { });
|
|
162
|
-
log(`Probe connect succeeded but verification query failed: ${qerr.message}; attempting create.`);
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
catch (e) {
|
|
167
|
-
log(`Caught error probing database: (e as Error).message; attempting create.`);
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
// At this point, we know we need an admin URL, if only as a base of the real URL
|
|
171
|
-
const adminUrl = opts.adminUrl ?? (opts.urlToEnsure ? deriveDatabaseUrl(opts.urlToEnsure, 'postgres') : undefined);
|
|
172
|
-
if (!adminUrl) {
|
|
173
|
-
// We could consider the environment, but let's not right now.
|
|
174
|
-
throw new TypeError(`dropPostgresDatabase requires a connection string to a database with permission to perform the DROP`);
|
|
175
|
-
}
|
|
176
|
-
const maybeTemplate1Url = deriveDatabaseUrl(opts.urlToEnsure ?? adminUrl, 'template1');
|
|
177
|
-
const tryTemplate1Fallback = opts.tryTemplate1Fallback ?? true;
|
|
178
|
-
// 1) Try admin connection first (best detection for existence & privileges)
|
|
179
|
-
let admin = await connectToPGDatabase(adminUrl, log);
|
|
180
|
-
if (!admin && tryTemplate1Fallback) {
|
|
181
|
-
log(`Admin connect failed. Trying template1 as a fallback...`);
|
|
182
|
-
admin = await connectToPGDatabase(maybeTemplate1Url, log);
|
|
183
|
-
}
|
|
184
|
-
// Helper to check DB existence via catalog (requires admin connection)
|
|
185
|
-
const checkExistsViaAdmin = async () => {
|
|
186
|
-
if (!admin)
|
|
187
|
-
return 'unknown';
|
|
188
|
-
const { rows } = await admin.query(`SELECT EXISTS (SELECT 1 FROM pg_database WHERE datname = $1) AS exists`, [targetDb]);
|
|
189
|
-
return rows[0]?.exists ?? false;
|
|
190
|
-
};
|
|
41
|
+
/**
|
|
42
|
+
* Create `databaseUrl`'s database if it does not already exist, via the admin (`/postgres`)
|
|
43
|
+
* database on the same server. Best-effort: a database we cannot provision may still be one
|
|
44
|
+
* we can connect to and use, so connection and creation failures are logged rather than thrown.
|
|
45
|
+
* A URL carrying no database name is a caller error and does throw.
|
|
46
|
+
*/
|
|
47
|
+
async function ensurePGDatabase(databaseUrl, logger) {
|
|
48
|
+
const dbName = requireDatabaseName(databaseUrl);
|
|
49
|
+
const client = new pg_1.Client((0, utils_1.getClientConfig)(deriveDatabaseUrl(databaseUrl, 'postgres')));
|
|
50
|
+
// An 'error' event with no listener would take down the process.
|
|
51
|
+
client.on('error', (err) => logger.warn(`Unexpected error in startup client: ${err}`));
|
|
52
|
+
let creating = false;
|
|
191
53
|
try {
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
if (
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
return { status: 'already_exists', notes, message: 'Success (already existed)' };
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
// If we couldn't connect as admin, try connecting to target to distinguish "doesn't exist" from failure to connect.
|
|
202
|
-
if (!admin) {
|
|
203
|
-
const dbUrl = opts.urlToEnsure ?? deriveDatabaseUrl(adminUrl, targetDb);
|
|
204
|
-
const probe = await connectToPGAndReportOutcome(dbUrl, log, 'probe target (existence test)');
|
|
205
|
-
if (probe.result === 'ok') {
|
|
206
|
-
// We can reach the target DB.... via a URL derived from admin
|
|
207
|
-
await probe.client.end().catch(() => { });
|
|
208
|
-
log(`Probe of database ${targetDb} via ${maskDatabaseUrl(dbUrl)} succeeds.`);
|
|
209
|
-
return { status: 'already_exists', notes, message: 'Success (already existed)' };
|
|
210
|
-
}
|
|
211
|
-
else {
|
|
212
|
-
// Ambiguous: We do not know it to be there, and we can't make an admin connection to proceed.
|
|
213
|
-
return fail(`Could not establish any admin connection, and target connect failed with ${probe.code ?? probe.result}.`, networkOrAuthHint(probe.code));
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
// 3) Attempt the CREATE
|
|
217
|
-
try {
|
|
218
|
-
log(`Attempting CREATE.`);
|
|
219
|
-
await createDb(admin, targetDb);
|
|
220
|
-
}
|
|
221
|
-
catch (err) {
|
|
222
|
-
const e = err;
|
|
223
|
-
await admin.end().catch(() => { });
|
|
224
|
-
return fail(`Create failed: ${shortenErr(e)}`, createDropHintFromSqlState(e?.code));
|
|
225
|
-
}
|
|
226
|
-
// 4) Verify postcondition
|
|
227
|
-
const finalExists = await checkExistsViaAdmin();
|
|
228
|
-
if (finalExists === true) {
|
|
229
|
-
log(`Verified: database "${targetDb}" exists.`);
|
|
230
|
-
return { status: 'created', notes, message: 'Success (created)' };
|
|
231
|
-
}
|
|
232
|
-
else if (finalExists === false) {
|
|
233
|
-
return fail(`After create attempt, database "${targetDb}" does not exist still.`);
|
|
234
|
-
}
|
|
235
|
-
else {
|
|
236
|
-
// Unknown (shouldn't happen with admin connected)
|
|
237
|
-
log(`Could not verify creation due to unexpected state.`);
|
|
238
|
-
return { status: 'created', notes, message: 'Success (unverified)' };
|
|
54
|
+
await client.connect();
|
|
55
|
+
const { rowCount } = await client.query(`SELECT 1 FROM pg_database WHERE datname = $1`, [dbName]);
|
|
56
|
+
if (!rowCount) {
|
|
57
|
+
creating = true;
|
|
58
|
+
await client.query(`CREATE DATABASE ${quotePGIdentifier(dbName)}`);
|
|
59
|
+
logger.info(`Created database ${dbName}`);
|
|
239
60
|
}
|
|
240
61
|
}
|
|
62
|
+
catch (e) {
|
|
63
|
+
// Name the operation that failed: "verify" and "create" need very different fixes.
|
|
64
|
+
const attempted = creating ? `create database ${dbName}` : `verify the existence of database ${dbName}`;
|
|
65
|
+
logger.warn(`Could not ${attempted}, continuing: ${e.message}`);
|
|
66
|
+
}
|
|
241
67
|
finally {
|
|
242
|
-
await
|
|
68
|
+
await client.end().catch(() => { });
|
|
243
69
|
}
|
|
244
70
|
}
|
|
245
71
|
exports.ensurePGDatabase = ensurePGDatabase;
|
|
@@ -254,29 +80,15 @@ function deriveDatabaseUrl(urlStr, otherDbName) {
|
|
|
254
80
|
}
|
|
255
81
|
}
|
|
256
82
|
exports.deriveDatabaseUrl = deriveDatabaseUrl;
|
|
257
|
-
// The `pg` package we use does not parse the connect_timeout parameter, so we need to handle it ourselves.
|
|
258
|
-
function getPGClientConfig(databaseUrl) {
|
|
259
|
-
const connectionString = typeof databaseUrl === 'string' ? databaseUrl : databaseUrl.toString();
|
|
260
|
-
const timeout = getTimeout(typeof databaseUrl === 'string' ? new URL(databaseUrl) : databaseUrl);
|
|
261
|
-
return {
|
|
262
|
-
connectionString,
|
|
263
|
-
connectionTimeoutMillis: timeout ? timeout * 1000 : 10000,
|
|
264
|
-
};
|
|
265
|
-
function getTimeout(url) {
|
|
266
|
-
try {
|
|
267
|
-
const $timeout = url.searchParams.get('connect_timeout');
|
|
268
|
-
return $timeout ? parseInt($timeout, 10) : undefined;
|
|
269
|
-
}
|
|
270
|
-
catch {
|
|
271
|
-
// Ignore errors in parsing the connect_timeout parameter
|
|
272
|
-
return undefined;
|
|
273
|
-
}
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
exports.getPGClientConfig = getPGClientConfig;
|
|
277
83
|
function getDatabaseNameFromUrl(urlStr) {
|
|
278
|
-
const
|
|
279
|
-
|
|
84
|
+
const pathname = new URL(urlStr).pathname?.replace(/^\//, '') || '';
|
|
85
|
+
// Decode exactly as `pg` does, so we never provision a different database than we connect to.
|
|
86
|
+
try {
|
|
87
|
+
return decodeURI(pathname);
|
|
88
|
+
}
|
|
89
|
+
catch {
|
|
90
|
+
return pathname;
|
|
91
|
+
}
|
|
280
92
|
}
|
|
281
93
|
exports.getDatabaseNameFromUrl = getDatabaseNameFromUrl;
|
|
282
94
|
function maskDatabaseUrl(urlStr) {
|
|
@@ -292,159 +104,7 @@ function maskDatabaseUrl(urlStr) {
|
|
|
292
104
|
}
|
|
293
105
|
}
|
|
294
106
|
exports.maskDatabaseUrl = maskDatabaseUrl;
|
|
295
|
-
async function connectToPGDatabase(url, log) {
|
|
296
|
-
log(`Connecting: ${maskDatabaseUrl(url)}`);
|
|
297
|
-
const client = new pg_1.Client(getPGClientConfig(url));
|
|
298
|
-
client.on('error', (err) => {
|
|
299
|
-
log(`Unexpected error in startup client: ${err}`);
|
|
300
|
-
});
|
|
301
|
-
try {
|
|
302
|
-
await client.connect();
|
|
303
|
-
return client;
|
|
304
|
-
}
|
|
305
|
-
catch (err) {
|
|
306
|
-
const e = err;
|
|
307
|
-
log(`Connect failed: ${shortenErr(e)}${e?.code ? ` (code ${e.code})` : ''}`);
|
|
308
|
-
try {
|
|
309
|
-
await client.end();
|
|
310
|
-
}
|
|
311
|
-
catch { }
|
|
312
|
-
return null;
|
|
313
|
-
}
|
|
314
|
-
}
|
|
315
|
-
exports.connectToPGDatabase = connectToPGDatabase;
|
|
316
|
-
async function connectToPGAndReportOutcome(url, log, label) {
|
|
317
|
-
log(`Connecting to ${label}: ${maskDatabaseUrl(url)}`);
|
|
318
|
-
const client = new pg_1.Client(getPGClientConfig(url));
|
|
319
|
-
client.on('error', (err) => {
|
|
320
|
-
log(`Unexpected error in startup client: ${err}`);
|
|
321
|
-
});
|
|
322
|
-
try {
|
|
323
|
-
await client.connect();
|
|
324
|
-
return { result: 'ok', client };
|
|
325
|
-
}
|
|
326
|
-
catch (err) {
|
|
327
|
-
const e = err;
|
|
328
|
-
try {
|
|
329
|
-
await client.end();
|
|
330
|
-
}
|
|
331
|
-
catch { }
|
|
332
|
-
return { result: 'error', code: e?.code, message: e?.message ?? String(e) };
|
|
333
|
-
}
|
|
334
|
-
}
|
|
335
|
-
exports.connectToPGAndReportOutcome = connectToPGAndReportOutcome;
|
|
336
|
-
function shortenErr(e) {
|
|
337
|
-
const m = e?.message ?? String(e);
|
|
338
|
-
return m.length > 500 ? `${m.slice(0, 500)}…` : m;
|
|
339
|
-
}
|
|
340
|
-
async function currentDBUserIdentity(client) {
|
|
341
|
-
const { rows: userRows } = await client.query(`SELECT current_user AS user`);
|
|
342
|
-
const user = userRows[0]?.user ?? '';
|
|
343
|
-
const { rows: roleRows } = await client.query(`SELECT rolsuper FROM pg_roles WHERE rolname = current_user`);
|
|
344
|
-
return { user, isSuperuser: !!roleRows[0]?.rolsuper };
|
|
345
|
-
}
|
|
346
|
-
exports.currentDBUserIdentity = currentDBUserIdentity;
|
|
347
|
-
async function getPGDatabaseOwner(admin, dbName) {
|
|
348
|
-
const { rows } = await admin.query(`SELECT r.rolname AS owner
|
|
349
|
-
FROM pg_database d JOIN pg_roles r ON r.oid = d.datdba
|
|
350
|
-
WHERE d.datname = $1`, [dbName]);
|
|
351
|
-
return rows[0]?.owner ?? null;
|
|
352
|
-
}
|
|
353
|
-
exports.getPGDatabaseOwner = getPGDatabaseOwner;
|
|
354
107
|
function quotePGIdentifier(name) {
|
|
355
108
|
return `"${name.replace(/"/g, '""')}"`;
|
|
356
109
|
}
|
|
357
|
-
async function dropWithForce(admin, dbName) {
|
|
358
|
-
await admin.query(`DROP DATABASE IF EXISTS ${quotePGIdentifier(dbName)} WITH (FORCE)`);
|
|
359
|
-
}
|
|
360
|
-
async function createDb(admin, dbName) {
|
|
361
|
-
await admin.query(`CREATE DATABASE ${quotePGIdentifier(dbName)}`);
|
|
362
|
-
}
|
|
363
|
-
function isForceSyntaxError(e) {
|
|
364
|
-
return e?.code === '42601' /* syntax_error */ || /WITH\s*\(\s*FORCE\s*\)/i.test(e?.message ?? '');
|
|
365
|
-
}
|
|
366
|
-
async function terminateAndDrop(admin, dbName, settleMs, log) {
|
|
367
|
-
// Prevent new connections (best-effort; ignore errors)
|
|
368
|
-
try {
|
|
369
|
-
await admin.query(`ALTER DATABASE ${quotePGIdentifier(dbName)} WITH ALLOW_CONNECTIONS = false`);
|
|
370
|
-
}
|
|
371
|
-
catch (e) {
|
|
372
|
-
log(`ALTER DATABASE ... ALLOW_CONNECTIONS=false failed (continuing): ${shortenErr(e)}`);
|
|
373
|
-
}
|
|
374
|
-
// Terminate existing sessions (best-effort; not all servers expose pg_terminate_backend, e.g. CockroachDB)
|
|
375
|
-
try {
|
|
376
|
-
await admin.query(`SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname = $1 AND pid <> pg_backend_pid()`, [dbName]);
|
|
377
|
-
}
|
|
378
|
-
catch (e) {
|
|
379
|
-
log(`pg_terminate_backend failed (continuing): ${shortenErr(e)}`);
|
|
380
|
-
}
|
|
381
|
-
if (settleMs > 0) {
|
|
382
|
-
log(`Waiting ${settleMs}ms for backends to terminate...`);
|
|
383
|
-
await new Promise((r) => setTimeout(r, settleMs));
|
|
384
|
-
}
|
|
385
|
-
// Try DROP, and if "being accessed" shows up, retry once after an extra wait
|
|
386
|
-
try {
|
|
387
|
-
await admin.query(`DROP DATABASE IF EXISTS ${quotePGIdentifier(dbName)}`);
|
|
388
|
-
}
|
|
389
|
-
catch (err) {
|
|
390
|
-
const e = err;
|
|
391
|
-
if (e?.code === '55006') {
|
|
392
|
-
log(`DB still "being accessed by other users"; retrying after extra wait...`);
|
|
393
|
-
await new Promise((r) => setTimeout(r, Math.max(1000, settleMs)));
|
|
394
|
-
try {
|
|
395
|
-
await admin.query(`SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname = $1 AND pid <> pg_backend_pid()`, [dbName]);
|
|
396
|
-
}
|
|
397
|
-
catch (e2) {
|
|
398
|
-
log(`pg_terminate_backend failed (continuing): ${shortenErr(e2)}`);
|
|
399
|
-
}
|
|
400
|
-
await admin.query(`DROP DATABASE IF EXISTS ${quotePGIdentifier(dbName)}`);
|
|
401
|
-
}
|
|
402
|
-
else {
|
|
403
|
-
throw e;
|
|
404
|
-
}
|
|
405
|
-
}
|
|
406
|
-
}
|
|
407
|
-
function networkOrAuthHint(code) {
|
|
408
|
-
if (!code)
|
|
409
|
-
return;
|
|
410
|
-
switch (code) {
|
|
411
|
-
case 'ECONNREFUSED':
|
|
412
|
-
return 'Server not reachable. Check host/port or firewall.';
|
|
413
|
-
case 'ENOTFOUND':
|
|
414
|
-
return 'Hostname not resolvable. Check DNS/host.';
|
|
415
|
-
case 'ETIMEDOUT':
|
|
416
|
-
return 'Connection timed out. Check network/firewall.';
|
|
417
|
-
case '28P01':
|
|
418
|
-
return 'Invalid password.';
|
|
419
|
-
case '28000':
|
|
420
|
-
return 'Authentication rejected (pg_hba.conf or method).';
|
|
421
|
-
default: {
|
|
422
|
-
if (code.substring(0, 2) === '28')
|
|
423
|
-
return 'Other connection security error';
|
|
424
|
-
return undefined;
|
|
425
|
-
}
|
|
426
|
-
}
|
|
427
|
-
}
|
|
428
|
-
function createDropHintFromSqlState(code) {
|
|
429
|
-
switch (code?.substring(0, 5)) {
|
|
430
|
-
case '42501':
|
|
431
|
-
return 'Insufficient privilege. You must be the owner or a superuser.';
|
|
432
|
-
case '53300':
|
|
433
|
-
return 'Too many connections to server; free some slots.';
|
|
434
|
-
default:
|
|
435
|
-
break;
|
|
436
|
-
}
|
|
437
|
-
switch (code?.substring(0, 2)) {
|
|
438
|
-
case '42':
|
|
439
|
-
return 'Syntax error or access rule violation.';
|
|
440
|
-
case '3D':
|
|
441
|
-
return 'Target database does not exist (already gone).';
|
|
442
|
-
case '55':
|
|
443
|
-
return 'Database is in use. Terminate sessions or use PG13+ WITH (FORCE).';
|
|
444
|
-
case '53':
|
|
445
|
-
return 'Insufficient resources.';
|
|
446
|
-
default:
|
|
447
|
-
return undefined;
|
|
448
|
-
}
|
|
449
|
-
}
|
|
450
110
|
//# sourceMappingURL=database_utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database_utils.js","sourceRoot":"","sources":["../../src/database_utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"database_utils.js","sourceRoot":"","sources":["../../src/database_utils.ts"],"names":[],"mappings":"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"}
|
package/dist/src/datasource.d.ts
CHANGED
|
@@ -105,5 +105,5 @@ export declare function createTransactionCompletionTablePG(schemaName?: string):
|
|
|
105
105
|
export declare function isPGRetriableTransactionError(error: unknown): boolean;
|
|
106
106
|
export declare function isPGKeyConflictError(error: unknown): boolean;
|
|
107
107
|
export declare function isPGFailedSqlTransactionError(error: unknown): boolean;
|
|
108
|
-
export {
|
|
108
|
+
export {};
|
|
109
109
|
//# sourceMappingURL=datasource.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datasource.d.ts","sourceRoot":"","sources":["../../src/datasource.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"datasource.d.ts","sourceRoot":"","sources":["../../src/datasource.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,YAAY,EAKb,MAAM,cAAc,CAAC;AAItB;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzB;;OAEG;IACH,yBAAyB,CAAC,IAAI,EAAE,IAAI,SAAS,OAAO,EAAE,EAAE,MAAM,EAC5D,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,IAAI,EACZ,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,EACpD,GAAG,IAAI,EAAE,IAAI,GACZ,OAAO,CAAC,MAAM,CAAC,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc,CAAC,MAAM,SAAS;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE;IAC9D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;;;;;OAMG;IACH,cAAc,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAE3E;;;;;;;;;;OAUG;IACH,mBAAmB,CAAC,IAAI,EAAE,IAAI,SAAS,OAAO,EAAE,EAAE,MAAM,EACtD,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,EACpD,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,GAC7B,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAElD;;;OAGG;IACH,WAAW,CACT,MAAM,CAAC,EAAE,MAAM,GACd,CAAC,IAAI,EAAE,IAAI,SAAS,OAAO,EAAE,EAAE,MAAM,EACtC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,uBAAuB,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,KAChF,uBAAuB,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;CAa9E;AAID;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CAAC,CAAC,EACpC,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC1B,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,cA+DpD;AAGD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,IAAI,SAAS,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,SAAS,YAAY,EACnG,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,EACpD,MAAM,CAAC,EAAE,MAAM,GACd,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CA4EhD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,4BAA4B,QAElE;AAID,6DAA6D;AAC7D,eAAO,MAAM,gBAAgB;;;;;EAKlB,CAAC;AAEZ,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAC9B,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,8DAA8D;IAC9D,cAAc,CAAC,EAAE,gBAAgB,CAAC;IAClC,yEAAyE;IACzE,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,6BAA6B;IAC5C,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,yBAAyB,CAAC,UAAU,GAAE,MAAe,GAAG,MAAM,CAe7E;AAED,wBAAgB,mCAAmC,CAAC,UAAU,GAAE,MAAe,GAAG,MAAM,CAEvF;AAED,wBAAgB,kCAAkC,CAAC,UAAU,GAAE,MAAe,GAAG,MAAM,CAWtF;AAMD,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAErE;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE5D;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAErE"}
|
package/dist/src/datasource.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.isPGFailedSqlTransactionError = exports.isPGKeyConflictError = exports.isPGRetriableTransactionError = exports.createTransactionCompletionTablePG = exports.createTransactionCompletionSchemaPG = exports.checkSchemaInstallationPG = exports.PGIsolationLevel = exports.registerDataSource = exports.registerTransaction = exports.runTransaction = void 0;
|
|
4
4
|
const context_1 = require("./context");
|
|
5
5
|
const dbos_1 = require("./dbos");
|
|
6
6
|
const dbos_executor_1 = require("./dbos-executor");
|
|
@@ -191,13 +191,4 @@ function isPGFailedSqlTransactionError(error) {
|
|
|
191
191
|
return getPGErrorCode(error) === '25P02';
|
|
192
192
|
}
|
|
193
193
|
exports.isPGFailedSqlTransactionError = isPGFailedSqlTransactionError;
|
|
194
|
-
var database_utils_1 = require("./database_utils");
|
|
195
|
-
Object.defineProperty(exports, "maskDatabaseUrl", { enumerable: true, get: function () { return database_utils_1.maskDatabaseUrl; } });
|
|
196
|
-
Object.defineProperty(exports, "getDatabaseNameFromUrl", { enumerable: true, get: function () { return database_utils_1.getDatabaseNameFromUrl; } });
|
|
197
|
-
Object.defineProperty(exports, "deriveDatabaseUrl", { enumerable: true, get: function () { return database_utils_1.deriveDatabaseUrl; } });
|
|
198
|
-
Object.defineProperty(exports, "getPGClientConfig", { enumerable: true, get: function () { return database_utils_1.getPGClientConfig; } });
|
|
199
|
-
Object.defineProperty(exports, "connectToPGDatabase", { enumerable: true, get: function () { return database_utils_1.connectToPGDatabase; } });
|
|
200
|
-
Object.defineProperty(exports, "connectToPGAndReportOutcome", { enumerable: true, get: function () { return database_utils_1.connectToPGAndReportOutcome; } });
|
|
201
|
-
Object.defineProperty(exports, "dropPGDatabase", { enumerable: true, get: function () { return database_utils_1.dropPGDatabase; } });
|
|
202
|
-
Object.defineProperty(exports, "ensurePGDatabase", { enumerable: true, get: function () { return database_utils_1.ensurePGDatabase; } });
|
|
203
194
|
//# sourceMappingURL=datasource.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datasource.js","sourceRoot":"","sources":["../../src/datasource.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"datasource.js","sourceRoot":"","sources":["../../src/datasource.ts"],"names":[],"mappings":"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"}
|