@pi-r/postgres 0.2.13 → 0.2.15
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/client/index.js +5 -4
- package/package.json +3 -3
- package/client/pool.js +0 -55
package/client/index.js
CHANGED
|
@@ -121,9 +121,9 @@ async function executeBatchQuery(batch, options = '', outResult) {
|
|
|
121
121
|
return [];
|
|
122
122
|
}
|
|
123
123
|
const db = require("pg");
|
|
124
|
-
let parallel, connectOnce, errorQuery, sessionKey, outCacheMiss;
|
|
124
|
+
let parallel, connectOnce, errorQuery, errorAsEmpty, sessionKey, outCacheMiss;
|
|
125
125
|
if ((0, types_1.isPlainObject)(options)) {
|
|
126
|
-
({ parallel, connectOnce, errorQuery, sessionKey, outCacheMiss } = options);
|
|
126
|
+
({ parallel, connectOnce, errorQuery, errorAsEmpty, sessionKey, outCacheMiss } = options);
|
|
127
127
|
}
|
|
128
128
|
else {
|
|
129
129
|
if (typeof options === 'string') {
|
|
@@ -281,11 +281,12 @@ async function executeBatchQuery(batch, options = '', outResult) {
|
|
|
281
281
|
}
|
|
282
282
|
}
|
|
283
283
|
return this.processRows(batch, tasks, {
|
|
284
|
+
parallel,
|
|
285
|
+
errorAsEmpty,
|
|
284
286
|
disconnect: () => {
|
|
285
287
|
clients.forEach(item => item.end(err => err && this.writeFail(["Unable to close connnection", "postgres"], err, { type: 65536, fatal: false })));
|
|
286
288
|
pools.forEach(item => item.release());
|
|
287
|
-
}
|
|
288
|
-
parallel
|
|
289
|
+
}
|
|
289
290
|
}, outResult);
|
|
290
291
|
}
|
|
291
292
|
exports.executeBatchQuery = executeBatchQuery;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pi-r/postgres",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.15",
|
|
4
4
|
"description": "PostgreSQL client driver for E-mc.",
|
|
5
5
|
"main": "client/index.js",
|
|
6
6
|
"types": "client/index.d.ts",
|
|
@@ -21,8 +21,8 @@
|
|
|
21
21
|
"license": "MIT",
|
|
22
22
|
"homepage": "https://github.com/anpham6/pi-r#readme",
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@e-mc/db": "^0.5.
|
|
25
|
-
"@e-mc/types": "^0.5.
|
|
24
|
+
"@e-mc/db": "^0.5.23",
|
|
25
|
+
"@e-mc/types": "^0.5.23",
|
|
26
26
|
"pg": "^8.12.0"
|
|
27
27
|
}
|
|
28
28
|
}
|
package/client/pool.js
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const types_1 = require("@e-mc/types");
|
|
3
|
-
const DbPool = require('@e-mc/db/pool');
|
|
4
|
-
const POOL_ACTIVE = new WeakSet();
|
|
5
|
-
class PostgresPool extends DbPool {
|
|
6
|
-
static CACHE_UNUSED = ['statement_timeout', 'query_timeout', 'keepAliveInitialDelayMillis', 'idle_in_transaction_session_timeout', 'connectionTimeoutMillis', 'idleTimeoutMillis', 'keepAlive', 'max', 'min', 'log', 'allowExitOnIdle', 'maxUses'];
|
|
7
|
-
static asString(credential) {
|
|
8
|
-
if (credential.host && credential.user) {
|
|
9
|
-
return JSON.stringify(this.removeUUIDKey(credential));
|
|
10
|
-
}
|
|
11
|
-
return super.asString(credential);
|
|
12
|
-
}
|
|
13
|
-
static sanitize(credential) {
|
|
14
|
-
if (!POOL_ACTIVE.has(credential) || credential.uuidKey) {
|
|
15
|
-
return credential;
|
|
16
|
-
}
|
|
17
|
-
const ssl = credential.ssl;
|
|
18
|
-
let result = super.sanitize(credential);
|
|
19
|
-
if ((0, types_1.isObject)(ssl)) {
|
|
20
|
-
if (result === credential) {
|
|
21
|
-
result = { ...credential };
|
|
22
|
-
}
|
|
23
|
-
const cert = ssl.cert;
|
|
24
|
-
if ((0, types_1.isString)(cert)) {
|
|
25
|
-
result.ssl = { cert };
|
|
26
|
-
}
|
|
27
|
-
else if (Buffer.isBuffer(cert)) {
|
|
28
|
-
result.ssl = { cert: cert.toString('utf8') };
|
|
29
|
-
}
|
|
30
|
-
else if ((0, types_1.isArray)(cert)) {
|
|
31
|
-
result.ssl = { cert: cert.reduce((a, b) => a + (Buffer.isBuffer(b) ? b.toString('utf8') : b), '') };
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
result.ssl = { cert: "Unknown" };
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
return result;
|
|
38
|
-
}
|
|
39
|
-
async getConnection(credential) {
|
|
40
|
-
if (credential) {
|
|
41
|
-
POOL_ACTIVE.add(credential);
|
|
42
|
-
}
|
|
43
|
-
return this.client.connect();
|
|
44
|
-
}
|
|
45
|
-
async close() {
|
|
46
|
-
return this.client.end();
|
|
47
|
-
}
|
|
48
|
-
isEmpty() {
|
|
49
|
-
return this.closed || this.client.totalCount === 0 && this.client.waitingCount === 0 && this.client.idleCount === 0;
|
|
50
|
-
}
|
|
51
|
-
get closed() {
|
|
52
|
-
return this.client.ended;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
module.exports = PostgresPool;
|