@pi-r/mysql 0.3.6 → 0.3.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 -6
- package/package.json +3 -3
- package/client/pool.js +0 -61
package/client/index.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DB_SOURCE_TYPE = exports.DB_SOURCE_CLIENT = exports.checkTimeout = exports.executeBatchQuery = exports.executeQuery = exports.setCredential = exports.setAuthentication = void 0;
|
|
4
|
+
const main = require("mysql2");
|
|
5
|
+
const mysql = require("mysql2/promise");
|
|
4
6
|
const util_1 = require("@e-mc/db/util");
|
|
5
7
|
const types_1 = require("@e-mc/types");
|
|
6
8
|
const Db = require("@e-mc/db");
|
|
@@ -105,7 +107,6 @@ function setCredential(item) {
|
|
|
105
107
|
}
|
|
106
108
|
const poolKey = getPoolKey(credential);
|
|
107
109
|
if (!(pool = POOL_STATE[poolKey]) || pool.closed) {
|
|
108
|
-
const { createPool } = require("mysql2/promise");
|
|
109
110
|
const config = this.getPoolConfig("mysql", password);
|
|
110
111
|
if (config) {
|
|
111
112
|
const { max, idle, queue_max } = config;
|
|
@@ -119,7 +120,7 @@ function setCredential(item) {
|
|
|
119
120
|
(_d = credential.queueLimit) !== null && _d !== void 0 ? _d : (credential.queueLimit = queue_max);
|
|
120
121
|
}
|
|
121
122
|
}
|
|
122
|
-
new MySQLPool(createPool(removeUUIDKey(credential)), poolKey, username && password ? { username, password } : undefined).add(item).parent = POOL_STATE;
|
|
123
|
+
new MySQLPool(mysql.createPool(removeUUIDKey(credential)), poolKey, username && password ? { username, password } : undefined).add(item).parent = POOL_STATE;
|
|
123
124
|
}
|
|
124
125
|
else {
|
|
125
126
|
pool.add(item);
|
|
@@ -136,7 +137,6 @@ async function executeBatchQuery(batch, options = '', outResult) {
|
|
|
136
137
|
if (length === 0) {
|
|
137
138
|
return [];
|
|
138
139
|
}
|
|
139
|
-
const db = require("mysql2/promise");
|
|
140
140
|
let parallel, connectOnce, errorQuery, sessionKey, outCacheMiss;
|
|
141
141
|
if ((0, types_1.isPlainObject)(options)) {
|
|
142
142
|
({ parallel, connectOnce, errorQuery, sessionKey, outCacheMiss } = options);
|
|
@@ -202,7 +202,7 @@ async function executeBatchQuery(batch, options = '', outResult) {
|
|
|
202
202
|
}
|
|
203
203
|
}
|
|
204
204
|
if (!client) {
|
|
205
|
-
clients.push(client = await
|
|
205
|
+
clients.push(client = await mysql.createConnection(removeUUIDKey(mysqlCredential || credential)));
|
|
206
206
|
}
|
|
207
207
|
if (connectOnce) {
|
|
208
208
|
if (!parallel) {
|
|
@@ -282,8 +282,7 @@ async function executeBatchQuery(batch, options = '', outResult) {
|
|
|
282
282
|
if (streamRow) {
|
|
283
283
|
const rows = [];
|
|
284
284
|
const processRow = typeof streamRow === 'function' && streamRow;
|
|
285
|
-
const
|
|
286
|
-
const client = mysql2Client || createConnection(removeUUIDKey(mysql2Credential || credential));
|
|
285
|
+
const client = mysql2Client || main.createConnection(removeUUIDKey(mysql2Credential || credential));
|
|
287
286
|
clients.push(client);
|
|
288
287
|
if (connectOnce) {
|
|
289
288
|
if (!parallel) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pi-r/mysql",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.8",
|
|
4
4
|
"description": "MySQL 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.6.
|
|
25
|
-
"@e-mc/types": "^0.6.
|
|
24
|
+
"@e-mc/db": "^0.6.19",
|
|
25
|
+
"@e-mc/types": "^0.6.19",
|
|
26
26
|
"mysql2": "^3.10.3"
|
|
27
27
|
}
|
|
28
28
|
}
|
package/client/pool.js
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const types_1 = require("@e-mc/types");
|
|
3
|
-
const util_1 = require("@e-mc/db/util");
|
|
4
|
-
const DbPool = require('@e-mc/db/pool');
|
|
5
|
-
const POOL_ACTIVE = new WeakSet();
|
|
6
|
-
class MySQLPool extends DbPool {
|
|
7
|
-
static CACHE_UNUSED = ['connectTimeout', 'queueLimit', 'waitForConnections', 'connectionLimit', 'maxIdle', 'idleTimeout', 'enableKeepAlive', 'keepAliveInitialDelay', 'Promise'];
|
|
8
|
-
static CACHE_IGNORE = ['authPlugins', 'authSwitchHandler', 'stream', 'infileStreamFactory'];
|
|
9
|
-
static asString(credential) {
|
|
10
|
-
if ((credential.host || credential.socketPath) && credential.user) {
|
|
11
|
-
return JSON.stringify(this.removeUUIDKey(credential));
|
|
12
|
-
}
|
|
13
|
-
return super.asString(credential);
|
|
14
|
-
}
|
|
15
|
-
static sanitize(credential) {
|
|
16
|
-
if (!this.canCache(credential)) {
|
|
17
|
-
return;
|
|
18
|
-
}
|
|
19
|
-
if (!POOL_ACTIVE.has(credential) || credential.uuidKey) {
|
|
20
|
-
return credential;
|
|
21
|
-
}
|
|
22
|
-
const ssl = credential.ssl;
|
|
23
|
-
let result = super.sanitize(credential);
|
|
24
|
-
if ((0, types_1.isObject)(ssl)) {
|
|
25
|
-
if (result === credential) {
|
|
26
|
-
result = { ...credential };
|
|
27
|
-
}
|
|
28
|
-
const cert = ssl.cert;
|
|
29
|
-
if ((0, types_1.isString)(cert)) {
|
|
30
|
-
result.ssl = cert;
|
|
31
|
-
}
|
|
32
|
-
else if (Buffer.isBuffer(cert)) {
|
|
33
|
-
result.ssl = cert.toString('utf8');
|
|
34
|
-
}
|
|
35
|
-
else if ((0, types_1.isArray)(cert)) {
|
|
36
|
-
result.ssl = cert.reduce((a, b) => a + (Buffer.isBuffer(b) ? b.toString('utf8') : b), '');
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
result.ssl = "Unknown";
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
return result;
|
|
43
|
-
}
|
|
44
|
-
async getConnection(credential) {
|
|
45
|
-
if (credential) {
|
|
46
|
-
POOL_ACTIVE.add(credential);
|
|
47
|
-
}
|
|
48
|
-
return this.client.getConnection();
|
|
49
|
-
}
|
|
50
|
-
async close() {
|
|
51
|
-
return this.client.end();
|
|
52
|
-
}
|
|
53
|
-
isEmpty() {
|
|
54
|
-
const pool = this.client.pool;
|
|
55
|
-
return this.closed || (0, util_1.checkEmpty)(pool._allConnections) && (0, util_1.checkEmpty)(pool._connectionQueue);
|
|
56
|
-
}
|
|
57
|
-
get closed() {
|
|
58
|
-
return !!this.client.pool._closed;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
module.exports = MySQLPool;
|