prostgles-server 4.0.16 → 4.0.18
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/AuthHandler.js +214 -210
- package/dist/AuthHandler.js.map +1 -1
- package/dist/DBEventsManager.js +34 -31
- package/dist/DBEventsManager.js.map +1 -1
- package/dist/DBSchemaBuilder.js +3 -2
- package/dist/DBSchemaBuilder.js.map +1 -1
- package/dist/DboBuilder/QueryBuilder/QueryBuilder.d.ts +19 -14
- package/dist/DboBuilder/QueryBuilder/QueryBuilder.d.ts.map +1 -1
- package/dist/DboBuilder/QueryBuilder/QueryBuilder.js +159 -151
- package/dist/DboBuilder/QueryBuilder/QueryBuilder.js.map +1 -1
- package/dist/DboBuilder/TableHandler.d.ts +9 -14
- package/dist/DboBuilder/TableHandler.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler.js +21 -41
- package/dist/DboBuilder/TableHandler.js.map +1 -1
- package/dist/DboBuilder/ViewHandler.d.ts +3 -3
- package/dist/DboBuilder/ViewHandler.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler.js +24 -9
- package/dist/DboBuilder/ViewHandler.js.map +1 -1
- package/dist/DboBuilder/getSubscribeRelatedTables.d.ts +1 -1
- package/dist/DboBuilder/getSubscribeRelatedTables.d.ts.map +1 -1
- package/dist/DboBuilder/parseUpdateRules.d.ts.map +1 -1
- package/dist/DboBuilder/parseUpdateRules.js.map +1 -1
- package/dist/DboBuilder/runSQL.js +5 -5
- package/dist/DboBuilder/runSQL.js.map +1 -1
- package/dist/DboBuilder.d.ts.map +1 -1
- package/dist/DboBuilder.js +85 -78
- package/dist/DboBuilder.js.map +1 -1
- package/dist/FileManager/FileManager.d.ts +143 -0
- package/dist/FileManager/FileManager.d.ts.map +1 -0
- package/dist/FileManager/FileManager.js +278 -0
- package/dist/FileManager/FileManager.js.map +1 -0
- package/dist/FileManager/initFileManager.d.ts +4 -0
- package/dist/FileManager/initFileManager.d.ts.map +1 -0
- package/dist/FileManager/initFileManager.js +209 -0
- package/dist/FileManager/initFileManager.js.map +1 -0
- package/dist/FileManager/parseFile.d.ts +15 -0
- package/dist/FileManager/parseFile.d.ts.map +1 -0
- package/dist/FileManager/parseFile.js +59 -0
- package/dist/FileManager/parseFile.js.map +1 -0
- package/dist/FileManager/upload.d.ts +6 -0
- package/dist/FileManager/upload.d.ts.map +1 -0
- package/dist/FileManager/upload.js +76 -0
- package/dist/FileManager/upload.js.map +1 -0
- package/dist/FileManager/uploadStream.d.ts +5 -0
- package/dist/FileManager/uploadStream.d.ts.map +1 -0
- package/dist/FileManager/uploadStream.js +70 -0
- package/dist/FileManager/uploadStream.js.map +1 -0
- package/dist/Filtering.d.ts +1 -1
- package/dist/Filtering.d.ts.map +1 -1
- package/dist/PostgresNotifListenManager.js +26 -20
- package/dist/PostgresNotifListenManager.js.map +1 -1
- package/dist/Prostgles.d.ts +2 -2
- package/dist/Prostgles.d.ts.map +1 -1
- package/dist/Prostgles.js +192 -172
- package/dist/Prostgles.js.map +1 -1
- package/dist/PubSubManager/PubSubManager.d.ts +3 -3
- package/dist/PubSubManager/PubSubManager.js +164 -154
- package/dist/PubSubManager/PubSubManager.js.map +1 -1
- package/dist/PublishParser.d.ts +13 -13
- package/dist/PublishParser.d.ts.map +1 -1
- package/dist/PublishParser.js +8 -2
- package/dist/PublishParser.js.map +1 -1
- package/dist/SchemaWatch.js +2 -1
- package/dist/SchemaWatch.js.map +1 -1
- package/dist/TableConfig/TableConfig.d.ts.map +1 -1
- package/dist/TableConfig/TableConfig.js +100 -92
- package/dist/TableConfig/TableConfig.js.map +1 -1
- package/lib/AuthHandler.js +1 -1
- package/lib/AuthHandler.ts +1 -1
- package/lib/DBSchemaBuilder.js +3 -2
- package/lib/DBSchemaBuilder.ts +3 -2
- package/lib/DboBuilder/TableHandler.d.ts +4 -9
- package/lib/DboBuilder/TableHandler.d.ts.map +1 -1
- package/lib/DboBuilder/TableHandler.js +1 -22
- package/lib/DboBuilder/TableHandler.ts +3 -31
- package/lib/DboBuilder/ViewHandler.ts +1 -1
- package/lib/DboBuilder/getSubscribeRelatedTables.d.ts +1 -1
- package/lib/DboBuilder/getSubscribeRelatedTables.d.ts.map +1 -1
- package/lib/DboBuilder/getSubscribeRelatedTables.ts +1 -1
- package/lib/DboBuilder/parseUpdateRules.d.ts.map +1 -1
- package/lib/DboBuilder/parseUpdateRules.ts +2 -2
- package/lib/DboBuilder.d.ts.map +1 -1
- package/lib/DboBuilder.js +0 -13
- package/lib/DboBuilder.ts +1 -16
- package/lib/{FileManager.d.ts → FileManager/FileManager.d.ts} +12 -20
- package/lib/FileManager/FileManager.d.ts.map +1 -0
- package/lib/FileManager/FileManager.js +303 -0
- package/lib/FileManager/FileManager.ts +378 -0
- package/lib/FileManager/initFileManager.d.ts +4 -0
- package/lib/FileManager/initFileManager.d.ts.map +1 -0
- package/lib/FileManager/initFileManager.js +231 -0
- package/lib/FileManager/initFileManager.ts +236 -0
- package/lib/FileManager/parseFile.d.ts +15 -0
- package/lib/FileManager/parseFile.d.ts.map +1 -0
- package/lib/FileManager/parseFile.js +58 -0
- package/lib/FileManager/parseFile.ts +69 -0
- package/lib/FileManager/upload.d.ts +6 -0
- package/lib/FileManager/upload.d.ts.map +1 -0
- package/lib/FileManager/upload.js +98 -0
- package/lib/FileManager/upload.ts +83 -0
- package/lib/FileManager/uploadStream.d.ts +5 -0
- package/lib/FileManager/uploadStream.d.ts.map +1 -0
- package/lib/FileManager/uploadStream.js +92 -0
- package/lib/FileManager/uploadStream.ts +80 -0
- package/lib/Filtering.d.ts +1 -1
- package/lib/Filtering.d.ts.map +1 -1
- package/lib/Filtering.ts +1 -1
- package/lib/JSONBValidation/validate_jsonb_schema_sql.ts +1 -1
- package/lib/Prostgles.d.ts +2 -2
- package/lib/Prostgles.d.ts.map +1 -1
- package/lib/Prostgles.js +8 -5
- package/lib/Prostgles.ts +10 -6
- package/lib/PublishParser.d.ts +13 -13
- package/lib/PublishParser.d.ts.map +1 -1
- package/lib/PublishParser.js +1 -0
- package/lib/PublishParser.ts +13 -12
- package/lib/TableConfig/TableConfig.d.ts.map +1 -1
- package/lib/TableConfig/TableConfig.js +12 -7
- package/lib/TableConfig/TableConfig.ts +13 -8
- package/package.json +3 -3
- package/tests/client/PID.txt +1 -1
- package/tests/client/index.d.ts.map +1 -1
- package/tests/client/index.ts +1 -3
- package/tests/client/package-lock.json +31 -4561
- package/tests/client/package.json +2 -2
- package/tests/client/tsconfig.json +1 -0
- package/tests/isomorphic_queries.d.ts.map +1 -1
- package/tests/isomorphic_queries.ts +3 -3
- package/tests/server/package-lock.json +13 -13
- package/tests/server/package.json +1 -1
- package/tests/server/tsconfig.json +1 -0
- package/tsconfig.json +3 -2
- package/lib/FileManager.d.ts.map +0 -1
- package/lib/FileManager.js +0 -676
- package/lib/FileManager.ts +0 -811
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
* Copyright (c) Stefan L. All rights reserved.
|
|
4
4
|
* Licensed under the MIT License. See LICENSE in the project root for license information.
|
|
5
5
|
*--------------------------------------------------------------------------------------------*/
|
|
6
|
-
var _a;
|
|
7
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
7
|
exports.omitKeys = exports.pickKeys = exports.parseCondition = exports.PubSubManager = exports.log = exports.DEFAULT_SYNC_BATCH_SIZE = exports.asValue = void 0;
|
|
9
8
|
const addSync_1 = require("./addSync");
|
|
@@ -33,63 +32,106 @@ const log = (...args) => {
|
|
|
33
32
|
};
|
|
34
33
|
exports.log = log;
|
|
35
34
|
class PubSubManager {
|
|
35
|
+
static DELIMITER = '|$prstgls$|';
|
|
36
|
+
dboBuilder;
|
|
36
37
|
get db() {
|
|
37
38
|
return this.dboBuilder.db;
|
|
38
39
|
}
|
|
39
40
|
get dbo() {
|
|
40
41
|
return this.dboBuilder.dbo;
|
|
41
42
|
}
|
|
43
|
+
_triggers;
|
|
44
|
+
sockets = {};
|
|
45
|
+
// subs: { [ke: string]: { [ke: string]: { subs: SubscriptionParams[] } } };
|
|
46
|
+
subs = [];
|
|
47
|
+
syncs = [];
|
|
48
|
+
socketChannelPreffix;
|
|
49
|
+
onSchemaChange = undefined;
|
|
50
|
+
postgresNotifListenManager;
|
|
42
51
|
constructor(options) {
|
|
43
|
-
|
|
44
|
-
|
|
52
|
+
const { wsChannelNamePrefix, onSchemaChange, dboBuilder } = options;
|
|
53
|
+
if (!dboBuilder.db || !dboBuilder.dbo) {
|
|
54
|
+
throw 'MISSING: db_pg, db';
|
|
55
|
+
}
|
|
56
|
+
this.onSchemaChange = onSchemaChange;
|
|
57
|
+
this.dboBuilder = dboBuilder;
|
|
58
|
+
this.socketChannelPreffix = wsChannelNamePrefix || "_psqlWS_";
|
|
59
|
+
(0, exports.log)("Created PubSubManager");
|
|
60
|
+
}
|
|
61
|
+
NOTIF_TYPE = {
|
|
62
|
+
data: "data_has_changed",
|
|
63
|
+
schema: "schema_has_changed"
|
|
64
|
+
};
|
|
65
|
+
NOTIF_CHANNEL = {
|
|
66
|
+
preffix: 'prostgles_',
|
|
67
|
+
getFull: (appID) => {
|
|
68
|
+
const finalAppId = appID ?? this.appID;
|
|
69
|
+
if (!finalAppId)
|
|
70
|
+
throw "No appID";
|
|
71
|
+
return this.NOTIF_CHANNEL.preffix + finalAppId;
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* Used facilitate concurrent prostgles connections to the same database
|
|
76
|
+
*/
|
|
77
|
+
appID;
|
|
78
|
+
appCheckFrequencyMS = 10 * 1000;
|
|
79
|
+
appCheck;
|
|
80
|
+
// ,datname
|
|
81
|
+
// ,usename
|
|
82
|
+
// ,client_hostname
|
|
83
|
+
// ,client_port
|
|
84
|
+
// ,backend_start
|
|
85
|
+
// ,query_start
|
|
86
|
+
// ,query
|
|
87
|
+
// ,state
|
|
88
|
+
// console.log(await _db.any(`
|
|
89
|
+
// SELECT pid, application_name, state
|
|
90
|
+
// FROM pg_stat_activity
|
|
91
|
+
// WHERE application_name IS NOT NULL AND application_name != '' -- state = 'active';
|
|
92
|
+
// `))
|
|
93
|
+
static canCreate = async (db) => {
|
|
94
|
+
const canExecute = await (0, DboBuilder_1.canEXECUTE)(db);
|
|
95
|
+
const isSuperUs = await (0, Prostgles_1.isSuperUser)(db);
|
|
96
|
+
return { canExecute, isSuperUs, yes: canExecute && isSuperUs };
|
|
97
|
+
};
|
|
98
|
+
static create = async (options) => {
|
|
99
|
+
const res = new PubSubManager(options);
|
|
100
|
+
return await res.init();
|
|
101
|
+
};
|
|
102
|
+
destroyed = false;
|
|
103
|
+
destroy = () => {
|
|
104
|
+
this.destroyed = true;
|
|
105
|
+
if (this.appCheck) {
|
|
106
|
+
clearInterval(this.appCheck);
|
|
107
|
+
}
|
|
45
108
|
this.subs = [];
|
|
46
109
|
this.syncs = [];
|
|
47
|
-
this.
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
}
|
|
73
|
-
this.postgresNotifListenManager.destroy();
|
|
74
|
-
};
|
|
75
|
-
this.canContinue = () => {
|
|
76
|
-
if (this.destroyed) {
|
|
77
|
-
console.trace("Could not start destroyed instance");
|
|
78
|
-
return false;
|
|
79
|
-
}
|
|
80
|
-
return true;
|
|
81
|
-
};
|
|
82
|
-
this.appChecking = false;
|
|
83
|
-
this.init = initPubSubManager_1.initPubSubManager.bind(this);
|
|
84
|
-
this.prepareTriggers = async () => {
|
|
85
|
-
// SELECT * FROM pg_catalog.pg_event_trigger WHERE evtname
|
|
86
|
-
if (!this.appID)
|
|
87
|
-
throw "prepareTriggers failed: this.appID missing";
|
|
88
|
-
if (this.dboBuilder.prostgles.opts.watchSchema && !(await (0, Prostgles_1.isSuperUser)(this.db))) {
|
|
89
|
-
console.warn("prostgles watchSchema requires superuser db user. Will not watch using event triggers");
|
|
90
|
-
}
|
|
91
|
-
try {
|
|
92
|
-
await this.db.any(`
|
|
110
|
+
if (!this.postgresNotifListenManager) {
|
|
111
|
+
throw "this.postgresNotifListenManager missing";
|
|
112
|
+
}
|
|
113
|
+
this.postgresNotifListenManager.destroy();
|
|
114
|
+
};
|
|
115
|
+
canContinue = () => {
|
|
116
|
+
if (this.destroyed) {
|
|
117
|
+
console.trace("Could not start destroyed instance");
|
|
118
|
+
return false;
|
|
119
|
+
}
|
|
120
|
+
return true;
|
|
121
|
+
};
|
|
122
|
+
appChecking = false;
|
|
123
|
+
init = initPubSubManager_1.initPubSubManager.bind(this);
|
|
124
|
+
static SCHEMA_ALTERING_QUERIES = ['CREATE TABLE', 'ALTER TABLE', 'DROP TABLE', 'CREATE VIEW', 'DROP VIEW', 'ALTER VIEW', 'CREATE TABLE AS', 'SELECT INTO'];
|
|
125
|
+
static EXCLUDE_QUERY_FROM_SCHEMA_WATCH_ID = "prostgles internal query that should be excluded from schema watch ";
|
|
126
|
+
prepareTriggers = async () => {
|
|
127
|
+
// SELECT * FROM pg_catalog.pg_event_trigger WHERE evtname
|
|
128
|
+
if (!this.appID)
|
|
129
|
+
throw "prepareTriggers failed: this.appID missing";
|
|
130
|
+
if (this.dboBuilder.prostgles.opts.watchSchema && !(await (0, Prostgles_1.isSuperUser)(this.db))) {
|
|
131
|
+
console.warn("prostgles watchSchema requires superuser db user. Will not watch using event triggers");
|
|
132
|
+
}
|
|
133
|
+
try {
|
|
134
|
+
await this.db.any(`
|
|
93
135
|
BEGIN;-- ISOLATION LEVEL SERIALIZABLE;
|
|
94
136
|
|
|
95
137
|
/** ${PubSubManager.EXCLUDE_QUERY_FROM_SCHEMA_WATCH_ID}
|
|
@@ -190,90 +232,16 @@ class PubSubManager {
|
|
|
190
232
|
|
|
191
233
|
COMMIT;
|
|
192
234
|
`).catch(e => {
|
|
193
|
-
console.error("prepareTriggers failed: ", e);
|
|
194
|
-
throw e;
|
|
195
|
-
});
|
|
196
|
-
return true;
|
|
197
|
-
}
|
|
198
|
-
catch (e) {
|
|
199
235
|
console.error("prepareTriggers failed: ", e);
|
|
200
236
|
throw e;
|
|
201
|
-
}
|
|
202
|
-
};
|
|
203
|
-
this.notifListener = notifListener_1.notifListener.bind(this);
|
|
204
|
-
this.getSubData = async (sub) => {
|
|
205
|
-
const { table_info, filter, params, table_rules } = sub; //, subOne = false
|
|
206
|
-
const { name: table_name } = table_info;
|
|
207
|
-
if (!this.dbo?.[table_name]?.find) {
|
|
208
|
-
throw new Error(`1107 this.dbo.${table_name}.find`);
|
|
209
|
-
}
|
|
210
|
-
try {
|
|
211
|
-
const data = await this.dbo?.[table_name].find(filter, params, undefined, table_rules);
|
|
212
|
-
return { data };
|
|
213
|
-
}
|
|
214
|
-
catch (err) {
|
|
215
|
-
return { err };
|
|
216
|
-
}
|
|
217
|
-
};
|
|
218
|
-
this.pushSubData = pushSubData_1.pushSubData.bind(this);
|
|
219
|
-
this.addSync = addSync_1.addSync.bind(this);
|
|
220
|
-
this.addSub = addSub_1.addSub.bind(this);
|
|
221
|
-
this.getActiveListeners = () => {
|
|
222
|
-
const result = [];
|
|
223
|
-
const upsert = (t, c) => {
|
|
224
|
-
if (!result.find(r => r.table_name === t && r.condition === c)) {
|
|
225
|
-
result.push({ table_name: t, condition: c });
|
|
226
|
-
}
|
|
227
|
-
};
|
|
228
|
-
(this.syncs || []).map(s => {
|
|
229
|
-
upsert(s.table_name, s.condition);
|
|
230
|
-
});
|
|
231
|
-
this.subs.forEach(s => {
|
|
232
|
-
s.triggers.forEach(trg => {
|
|
233
|
-
upsert(trg.table_name, trg.condition);
|
|
234
|
-
});
|
|
235
237
|
});
|
|
236
|
-
return result;
|
|
237
|
-
};
|
|
238
|
-
this.checkIfTimescaleBug = async (table_name) => {
|
|
239
|
-
const schema = "_timescaledb_catalog", res = await this.db.oneOrNone("SELECT EXISTS( \
|
|
240
|
-
SELECT * \
|
|
241
|
-
FROM information_schema.tables \
|
|
242
|
-
WHERE 1 = 1 \
|
|
243
|
-
AND table_schema = ${schema} \
|
|
244
|
-
AND table_name = 'hypertable' \
|
|
245
|
-
);", { schema });
|
|
246
|
-
if (res.exists) {
|
|
247
|
-
const isHyperTable = await this.db.any("SELECT * FROM " + (0, prostgles_types_1.asName)(schema) + ".hypertable WHERE table_name = ${table_name};", { table_name, schema });
|
|
248
|
-
if (isHyperTable && isHyperTable.length) {
|
|
249
|
-
throw "Triggers do not work on timescaledb hypertables due to bug:\nhttps://github.com/timescale/timescaledb/issues/1084";
|
|
250
|
-
}
|
|
251
|
-
}
|
|
252
238
|
return true;
|
|
253
|
-
};
|
|
254
|
-
/*
|
|
255
|
-
A table will only have a trigger with all conditions (for different subs)
|
|
256
|
-
conditions = ["user_id = 1"]
|
|
257
|
-
fields = ["user_id"]
|
|
258
|
-
*/
|
|
259
|
-
this.getMyTriggerQuery = async () => {
|
|
260
|
-
return pgp.as.format(`
|
|
261
|
-
SELECT * --, ROW_NUMBER() OVER(PARTITION BY table_name ORDER BY table_name, condition ) - 1 as id
|
|
262
|
-
FROM prostgles.v_triggers
|
|
263
|
-
WHERE app_id = $1
|
|
264
|
-
ORDER BY table_name, condition
|
|
265
|
-
`, [this.appID]);
|
|
266
|
-
};
|
|
267
|
-
this.addTriggerPool = undefined;
|
|
268
|
-
const { wsChannelNamePrefix, onSchemaChange, dboBuilder } = options;
|
|
269
|
-
if (!dboBuilder.db || !dboBuilder.dbo) {
|
|
270
|
-
throw 'MISSING: db_pg, db';
|
|
271
239
|
}
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
}
|
|
240
|
+
catch (e) {
|
|
241
|
+
console.error("prepareTriggers failed: ", e);
|
|
242
|
+
throw e;
|
|
243
|
+
}
|
|
244
|
+
};
|
|
277
245
|
isReady() {
|
|
278
246
|
if (!this.postgresNotifListenManager)
|
|
279
247
|
throw "this.postgresNotifListenManager missing";
|
|
@@ -302,6 +270,22 @@ class PubSubManager {
|
|
|
302
270
|
return (this.syncs || [])
|
|
303
271
|
.filter((s) => s.table_name === table_name && s.condition === condition);
|
|
304
272
|
}
|
|
273
|
+
notifListener = notifListener_1.notifListener.bind(this);
|
|
274
|
+
getSubData = async (sub) => {
|
|
275
|
+
const { table_info, filter, params, table_rules } = sub; //, subOne = false
|
|
276
|
+
const { name: table_name } = table_info;
|
|
277
|
+
if (!this.dbo?.[table_name]?.find) {
|
|
278
|
+
throw new Error(`1107 this.dbo.${table_name}.find`);
|
|
279
|
+
}
|
|
280
|
+
try {
|
|
281
|
+
const data = await this.dbo?.[table_name].find(filter, params, undefined, table_rules);
|
|
282
|
+
return { data };
|
|
283
|
+
}
|
|
284
|
+
catch (err) {
|
|
285
|
+
return { err };
|
|
286
|
+
}
|
|
287
|
+
};
|
|
288
|
+
pushSubData = pushSubData_1.pushSubData.bind(this);
|
|
305
289
|
upsertSocket(socket) {
|
|
306
290
|
if (socket && !this.sockets[socket.id]) {
|
|
307
291
|
this.sockets[socket.id] = socket;
|
|
@@ -317,9 +301,61 @@ class PubSubManager {
|
|
|
317
301
|
});
|
|
318
302
|
}
|
|
319
303
|
}
|
|
304
|
+
syncTimeout;
|
|
320
305
|
async syncData(sync, clientData, source) {
|
|
321
306
|
return await (0, SyncReplication_1.syncData)(this, sync, clientData, source);
|
|
322
307
|
}
|
|
308
|
+
addSync = addSync_1.addSync.bind(this);
|
|
309
|
+
addSub = addSub_1.addSub.bind(this);
|
|
310
|
+
getActiveListeners = () => {
|
|
311
|
+
const result = [];
|
|
312
|
+
const upsert = (t, c) => {
|
|
313
|
+
if (!result.find(r => r.table_name === t && r.condition === c)) {
|
|
314
|
+
result.push({ table_name: t, condition: c });
|
|
315
|
+
}
|
|
316
|
+
};
|
|
317
|
+
(this.syncs || []).map(s => {
|
|
318
|
+
upsert(s.table_name, s.condition);
|
|
319
|
+
});
|
|
320
|
+
this.subs.forEach(s => {
|
|
321
|
+
s.triggers.forEach(trg => {
|
|
322
|
+
upsert(trg.table_name, trg.condition);
|
|
323
|
+
});
|
|
324
|
+
});
|
|
325
|
+
return result;
|
|
326
|
+
};
|
|
327
|
+
checkIfTimescaleBug = async (table_name) => {
|
|
328
|
+
const schema = "_timescaledb_catalog", res = await this.db.oneOrNone("SELECT EXISTS( \
|
|
329
|
+
SELECT * \
|
|
330
|
+
FROM information_schema.tables \
|
|
331
|
+
WHERE 1 = 1 \
|
|
332
|
+
AND table_schema = ${schema} \
|
|
333
|
+
AND table_name = 'hypertable' \
|
|
334
|
+
);", { schema });
|
|
335
|
+
if (res.exists) {
|
|
336
|
+
const isHyperTable = await this.db.any("SELECT * FROM " + (0, prostgles_types_1.asName)(schema) + ".hypertable WHERE table_name = ${table_name};", { table_name, schema });
|
|
337
|
+
if (isHyperTable && isHyperTable.length) {
|
|
338
|
+
throw "Triggers do not work on timescaledb hypertables due to bug:\nhttps://github.com/timescale/timescaledb/issues/1084";
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
return true;
|
|
342
|
+
};
|
|
343
|
+
/*
|
|
344
|
+
A table will only have a trigger with all conditions (for different subs)
|
|
345
|
+
conditions = ["user_id = 1"]
|
|
346
|
+
fields = ["user_id"]
|
|
347
|
+
*/
|
|
348
|
+
getMyTriggerQuery = async () => {
|
|
349
|
+
return pgp.as.format(`
|
|
350
|
+
SELECT * --, ROW_NUMBER() OVER(PARTITION BY table_name ORDER BY table_name, condition ) - 1 as id
|
|
351
|
+
FROM prostgles.v_triggers
|
|
352
|
+
WHERE app_id = $1
|
|
353
|
+
ORDER BY table_name, condition
|
|
354
|
+
`, [this.appID]);
|
|
355
|
+
};
|
|
356
|
+
// waitingTriggers: { [key: string]: string[] } = undefined;
|
|
357
|
+
addingTrigger;
|
|
358
|
+
addTriggerPool = undefined;
|
|
323
359
|
async addTrigger(params, viewOptions) {
|
|
324
360
|
try {
|
|
325
361
|
const { table_name } = { ...params };
|
|
@@ -370,32 +406,6 @@ class PubSubManager {
|
|
|
370
406
|
}
|
|
371
407
|
}
|
|
372
408
|
exports.PubSubManager = PubSubManager;
|
|
373
|
-
_a = PubSubManager;
|
|
374
|
-
PubSubManager.DELIMITER = '|$prstgls$|';
|
|
375
|
-
// ,datname
|
|
376
|
-
// ,usename
|
|
377
|
-
// ,client_hostname
|
|
378
|
-
// ,client_port
|
|
379
|
-
// ,backend_start
|
|
380
|
-
// ,query_start
|
|
381
|
-
// ,query
|
|
382
|
-
// ,state
|
|
383
|
-
// console.log(await _db.any(`
|
|
384
|
-
// SELECT pid, application_name, state
|
|
385
|
-
// FROM pg_stat_activity
|
|
386
|
-
// WHERE application_name IS NOT NULL AND application_name != '' -- state = 'active';
|
|
387
|
-
// `))
|
|
388
|
-
PubSubManager.canCreate = async (db) => {
|
|
389
|
-
const canExecute = await (0, DboBuilder_1.canEXECUTE)(db);
|
|
390
|
-
const isSuperUs = await (0, Prostgles_1.isSuperUser)(db);
|
|
391
|
-
return { canExecute, isSuperUs, yes: canExecute && isSuperUs };
|
|
392
|
-
};
|
|
393
|
-
PubSubManager.create = async (options) => {
|
|
394
|
-
const res = new PubSubManager(options);
|
|
395
|
-
return await res.init();
|
|
396
|
-
};
|
|
397
|
-
PubSubManager.SCHEMA_ALTERING_QUERIES = ['CREATE TABLE', 'ALTER TABLE', 'DROP TABLE', 'CREATE VIEW', 'DROP VIEW', 'ALTER VIEW', 'CREATE TABLE AS', 'SELECT INTO'];
|
|
398
|
-
PubSubManager.EXCLUDE_QUERY_FROM_SCHEMA_WATCH_ID = "prostgles internal query that should be excluded from schema watch ";
|
|
399
409
|
const parseCondition = (condition) => condition && condition.trim().length ? condition : "TRUE";
|
|
400
410
|
exports.parseCondition = parseCondition;
|
|
401
411
|
var prostgles_types_2 = require("prostgles-types");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PubSubManager.js","sourceRoot":"","sources":["../../lib/PubSubManager/PubSubManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PubSubManager.js","sourceRoot":"","sources":["../../lib/PubSubManager/PubSubManager.ts"],"names":[],"mappings":"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"}
|
package/dist/PublishParser.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AnyObject, TableSchemaForClient, DBSchemaTable, FullFilter, Method } from "prostgles-types";
|
|
1
|
+
import { AnyObject, TableSchemaForClient, DBSchemaTable, FullFilter, Method, DBSchema } from "prostgles-types";
|
|
2
2
|
import { AuthResult, SessionUser } from "./AuthHandler";
|
|
3
3
|
import { CommonTableRules, LocalParams, PRGLIOSocket, TableOrViewInfo, TableSchemaColumn } from "./DboBuilder";
|
|
4
4
|
import { Prostgles, DBHandlerServer, DB } from "./Prostgles";
|
|
@@ -34,13 +34,13 @@ export type DeleteRequestData = {
|
|
|
34
34
|
filter: object;
|
|
35
35
|
returning: FieldFilter;
|
|
36
36
|
};
|
|
37
|
-
export type UpdateRequestDataOne<R extends AnyObject> = {
|
|
38
|
-
filter: FullFilter<R>;
|
|
37
|
+
export type UpdateRequestDataOne<R extends AnyObject, S extends DBSchema | void = void> = {
|
|
38
|
+
filter: FullFilter<R, S>;
|
|
39
39
|
data: Partial<R>;
|
|
40
40
|
returning: FieldFilter<R>;
|
|
41
41
|
};
|
|
42
|
-
export type UpdateReq<R extends AnyObject> = {
|
|
43
|
-
filter: FullFilter<R>;
|
|
42
|
+
export type UpdateReq<R extends AnyObject, S extends DBSchema | void = void> = {
|
|
43
|
+
filter: FullFilter<R, S>;
|
|
44
44
|
data: Partial<R>;
|
|
45
45
|
};
|
|
46
46
|
export type UpdateRequestDataBatch<R extends AnyObject> = {
|
|
@@ -48,11 +48,11 @@ export type UpdateRequestDataBatch<R extends AnyObject> = {
|
|
|
48
48
|
};
|
|
49
49
|
export type UpdateRequestData<R extends AnyObject = AnyObject> = UpdateRequestDataOne<R> | UpdateRequestDataBatch<R>;
|
|
50
50
|
export type ValidateRow<R extends AnyObject = AnyObject, S = void> = (row: R, dbx: DBOFullyTyped<S>) => R | Promise<R>;
|
|
51
|
-
export type ValidateUpdateRow<R extends AnyObject = AnyObject, S = void> = (args: {
|
|
51
|
+
export type ValidateUpdateRow<R extends AnyObject = AnyObject, S extends DBSchema | void = void> = (args: {
|
|
52
52
|
update: Partial<R>;
|
|
53
|
-
filter: FullFilter<R>;
|
|
53
|
+
filter: FullFilter<R, S>;
|
|
54
54
|
}, dbx: DBOFullyTyped<S>) => R | Promise<R>;
|
|
55
|
-
export type SelectRule<Cols extends AnyObject = AnyObject, S = void> = {
|
|
55
|
+
export type SelectRule<Cols extends AnyObject = AnyObject, S extends DBSchema | void = void> = {
|
|
56
56
|
/**
|
|
57
57
|
* Fields allowed to be selected.
|
|
58
58
|
* Tip: Use false to exclude field
|
|
@@ -107,7 +107,7 @@ export type InsertRule<Cols extends AnyObject = AnyObject, S = void> = {
|
|
|
107
107
|
*/
|
|
108
108
|
postValidate?: ValidateRow<Required<Cols>, S>;
|
|
109
109
|
};
|
|
110
|
-
export type UpdateRule<Cols extends AnyObject = AnyObject, S = void> = {
|
|
110
|
+
export type UpdateRule<Cols extends AnyObject = AnyObject, S extends DBSchema | void = void> = {
|
|
111
111
|
/**
|
|
112
112
|
* Fields allowed to be updated. Tip: Use false/0 to exclude field
|
|
113
113
|
*/
|
|
@@ -150,7 +150,7 @@ export type UpdateRule<Cols extends AnyObject = AnyObject, S = void> = {
|
|
|
150
150
|
*/
|
|
151
151
|
postValidate?: ValidateRow<Required<Cols>, S>;
|
|
152
152
|
};
|
|
153
|
-
export type DeleteRule<Cols extends AnyObject = AnyObject, S = void> = {
|
|
153
|
+
export type DeleteRule<Cols extends AnyObject = AnyObject, S extends DBSchema | void = void> = {
|
|
154
154
|
/**
|
|
155
155
|
* Filter added to every query (e.g. user_id) to restrict access
|
|
156
156
|
*/
|
|
@@ -199,19 +199,19 @@ export type ViewRule<S extends AnyObject = AnyObject> = CommonTableRules & {
|
|
|
199
199
|
*/
|
|
200
200
|
select?: SelectRule<S>;
|
|
201
201
|
};
|
|
202
|
-
export type TableRule<RowType extends AnyObject = AnyObject, S = void> = ViewRule<RowType> & {
|
|
202
|
+
export type TableRule<RowType extends AnyObject = AnyObject, S extends DBSchema | void = void> = ViewRule<RowType> & {
|
|
203
203
|
insert?: InsertRule<RowType, S>;
|
|
204
204
|
update?: UpdateRule<RowType, S>;
|
|
205
205
|
delete?: DeleteRule<RowType, S>;
|
|
206
206
|
sync?: SyncRule<RowType>;
|
|
207
207
|
subscribe?: SubscribeRule;
|
|
208
208
|
};
|
|
209
|
-
export type PublishViewRule<Col extends AnyObject = AnyObject, S = void> = {
|
|
209
|
+
export type PublishViewRule<Col extends AnyObject = AnyObject, S extends DBSchema | void = void> = {
|
|
210
210
|
select?: SelectRule<Col, S> | PublishAllOrNothing;
|
|
211
211
|
getColumns?: PublishAllOrNothing;
|
|
212
212
|
getInfo?: PublishAllOrNothing;
|
|
213
213
|
};
|
|
214
|
-
export type PublishTableRule<Col extends AnyObject = AnyObject, S = void> = PublishViewRule<Col, S> & {
|
|
214
|
+
export type PublishTableRule<Col extends AnyObject = AnyObject, S extends DBSchema | void = void> = PublishViewRule<Col, S> & {
|
|
215
215
|
insert?: InsertRule<Col, S> | PublishAllOrNothing;
|
|
216
216
|
update?: UpdateRule<Col, S> | PublishAllOrNothing;
|
|
217
217
|
delete?: DeleteRule<Col, S> | PublishAllOrNothing;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublishParser.d.ts","sourceRoot":"","sources":["../lib/PublishParser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,SAAS,EAAO,oBAAoB,EAAE,aAAa,EAAwB,UAAU,EAAY,MAAM,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"PublishParser.d.ts","sourceRoot":"","sources":["../lib/PublishParser.ts"],"names":[],"mappings":"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"}
|
package/dist/PublishParser.js
CHANGED
|
@@ -80,6 +80,12 @@ const RULE_TO_METHODS = [
|
|
|
80
80
|
];
|
|
81
81
|
const PubSubManager_1 = require("./PubSubManager/PubSubManager");
|
|
82
82
|
class PublishParser {
|
|
83
|
+
publish;
|
|
84
|
+
publishMethods;
|
|
85
|
+
publishRawSQL;
|
|
86
|
+
dbo;
|
|
87
|
+
db;
|
|
88
|
+
prostgles;
|
|
83
89
|
constructor(publish, publishMethods, publishRawSQL, dbo, db, prostgles) {
|
|
84
90
|
this.publish = publish;
|
|
85
91
|
this.publishMethods = publishMethods;
|
|
@@ -149,6 +155,7 @@ class PublishParser {
|
|
|
149
155
|
throw "INTERNAL ERROR: dbo is missing";
|
|
150
156
|
if (!command || !tableName)
|
|
151
157
|
throw "command OR tableName are missing";
|
|
158
|
+
//@ts-ignore
|
|
152
159
|
const rtm = RULE_TO_METHODS.find(rtms => rtms.methods.includes(command));
|
|
153
160
|
if (!rtm) {
|
|
154
161
|
throw "Invalid command: " + command;
|
|
@@ -293,7 +300,6 @@ class PublishParser {
|
|
|
293
300
|
MY_RULES.map(r => {
|
|
294
301
|
/** THIS IS A MESS -> some methods cannot be dissallowed (unsync, unsubscribe...) */
|
|
295
302
|
r.methods.forEach(method => {
|
|
296
|
-
var _a;
|
|
297
303
|
const isAllowed = tableRules[r.rule] && tableRules[method] === undefined;
|
|
298
304
|
if (isAllowed) {
|
|
299
305
|
if (method === "updateBatch" && !tableRules.update) {
|
|
@@ -303,7 +309,7 @@ class PublishParser {
|
|
|
303
309
|
// not allowed
|
|
304
310
|
}
|
|
305
311
|
else {
|
|
306
|
-
|
|
312
|
+
res[method] ??= true;
|
|
307
313
|
}
|
|
308
314
|
}
|
|
309
315
|
});
|