@pi-r/postgres 0.5.6 → 0.5.8
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
|
@@ -123,9 +123,9 @@ async function executeBatchQuery(batch, options = '', outResult) {
|
|
|
123
123
|
if (length === 0) {
|
|
124
124
|
return [];
|
|
125
125
|
}
|
|
126
|
-
let parallel, connectOnce, errorQuery, sessionKey, outCacheMiss;
|
|
126
|
+
let parallel, connectOnce, errorQuery, errorAsEmpty, sessionKey, outCacheMiss;
|
|
127
127
|
if ((0, types_1.isPlainObject)(options)) {
|
|
128
|
-
({ parallel, connectOnce, errorQuery, sessionKey, outCacheMiss } = options);
|
|
128
|
+
({ parallel, connectOnce, errorQuery, errorAsEmpty, sessionKey, outCacheMiss } = options);
|
|
129
129
|
}
|
|
130
130
|
else {
|
|
131
131
|
if (typeof options === 'string') {
|
|
@@ -283,11 +283,12 @@ async function executeBatchQuery(batch, options = '', outResult) {
|
|
|
283
283
|
}
|
|
284
284
|
}
|
|
285
285
|
return this.processRows(batch, tasks, {
|
|
286
|
+
parallel,
|
|
287
|
+
errorAsEmpty,
|
|
286
288
|
disconnect: () => {
|
|
287
289
|
clients.forEach(item => item.end(err => err && this.writeFail(["Unable to close connnection", "postgres"], err, { type: 65536, fatal: false })));
|
|
288
290
|
pools.forEach(item => item.release());
|
|
289
|
-
}
|
|
290
|
-
parallel
|
|
291
|
+
}
|
|
291
292
|
}, outResult);
|
|
292
293
|
}
|
|
293
294
|
exports.executeBatchQuery = executeBatchQuery;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pi-r/postgres",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.8",
|
|
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.7.
|
|
25
|
-
"@e-mc/types": "^0.7.
|
|
24
|
+
"@e-mc/db": "^0.7.25",
|
|
25
|
+
"@e-mc/types": "^0.7.25",
|
|
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;
|