@axinom/mosaic-db-common 0.23.1-rc.3 → 0.23.1
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pg-pool.middleware.d.ts","sourceRoot":"","sources":["../../src/middleware/pg-pool.middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAE/C,OAAO,EACL,QAAQ,EACR,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,WAAW,EACX,WAAW,EACZ,MAAM,WAAW,CAAC;AAEnB;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,uCACL,MAAM,wBAEhB,QAAQ,mBACC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"pg-pool.middleware.d.ts","sourceRoot":"","sources":["../../src/middleware/pg-pool.middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAE/C,OAAO,EACL,QAAQ,EACR,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,WAAW,EACX,WAAW,EACZ,MAAM,WAAW,CAAC;AAEnB;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,uCACL,MAAM,wBAEhB,QAAQ,mBACC,iBAAiB,sBAkDnC,CAAC;AAMF;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAS,OAAO,GAAG,WAAW,KAAG,WAE3D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,QACpB,WAAW,aACL,WAAW,KACrB,IAEF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,QACvB,OAAO,GAAG,WAAW,KACzB,cAEF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,QACvB,WAAW,gBACF,cAAc,KAC3B,IAEF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAS,OAAO,GAAG,WAAW,KAAG,WAE3D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,QACpB,WAAW,aACL,WAAW,KACrB,IAEF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,QACtB,OAAO,GAAG,WAAW,oBACR,MAAM,UAChB,QAAQ,mBACC,iBAAiB,KACjC,WAQF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,QACzB,OAAO,GAAG,WAAW,oBACR,MAAM,UAChB,QAAQ,mBACC,iBAAiB,KACjC,cAQF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,QACtB,OAAO,GAAG,WAAW,oBACR,MAAM,UAChB,QAAQ,mBACC,iBAAiB,KACjC,WAQF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,qBACV,MAAM,UAChB,QAAQ,mBACC,iBAAiB,KACjC,WAEF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,qBACb,MAAM,UAChB,QAAQ,mBACC,iBAAiB,KACjC,cAEF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,qBACV,MAAM,UAChB,QAAQ,mBACC,iBAAiB,KACjC,WAEF,CAAC"}
|
|
@@ -12,7 +12,25 @@ const pg_1 = require("pg");
|
|
|
12
12
|
* @returns
|
|
13
13
|
*/
|
|
14
14
|
const createPgPool = (connectionString, poolLabel, logger, shutdownActions) => {
|
|
15
|
-
const
|
|
15
|
+
const poolConfig = {
|
|
16
|
+
connectionString,
|
|
17
|
+
/**
|
|
18
|
+
* **IMPORTANT**
|
|
19
|
+
*
|
|
20
|
+
* This is a temporary workaround we do to reduce the number of ETIMEDOUT errors we're seeing right now in TEST+CB instances
|
|
21
|
+
* and will be removed once the root cause if identified.
|
|
22
|
+
*
|
|
23
|
+
* We may consider to potentially still provide the option to supply such PoolConfig object from the consumer and make Pool
|
|
24
|
+
* management more extensible.
|
|
25
|
+
*/
|
|
26
|
+
idleTimeoutMillis: process.env.HOTFIX_DB_IDLE_TIMEOUT_MILLIS
|
|
27
|
+
? parseInt(process.env.HOTFIX_DB_IDLE_TIMEOUT_MILLIS)
|
|
28
|
+
: undefined,
|
|
29
|
+
};
|
|
30
|
+
if (process.env.HOTFIX_DB_IDLE_TIMEOUT_MILLIS) {
|
|
31
|
+
logger.log(`Detected HOTFIX_DB_IDLE_TIMEOUT_MILLIS=${poolConfig.idleTimeoutMillis} for poolLabel=${poolLabel}.`);
|
|
32
|
+
}
|
|
33
|
+
const pgPool = new pg_1.Pool(poolConfig);
|
|
16
34
|
pgPool.label = poolLabel;
|
|
17
35
|
// If a pg pool error happens and triggers the exit of node process (e.g postgres server stopped while postgraphile service is running) -
|
|
18
36
|
// it is possible for it to not be caught using this handler, because node process will close faster.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pg-pool.middleware.js","sourceRoot":"","sources":["../../src/middleware/pg-pool.middleware.ts"],"names":[],"mappings":";;;AAEA,
|
|
1
|
+
{"version":3,"file":"pg-pool.middleware.js","sourceRoot":"","sources":["../../src/middleware/pg-pool.middleware.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@axinom/mosaic-db-common",
|
|
3
|
-
"version": "0.23.1
|
|
3
|
+
"version": "0.23.1",
|
|
4
4
|
"description": "This library encapsulates database-related functionality to develop Mosaic based services.",
|
|
5
5
|
"author": "Axinom",
|
|
6
6
|
"license": "PROPRIETARY",
|
|
@@ -51,5 +51,5 @@
|
|
|
51
51
|
"publishConfig": {
|
|
52
52
|
"access": "public"
|
|
53
53
|
},
|
|
54
|
-
"gitHead": "
|
|
54
|
+
"gitHead": "6ec06d92eede105fe9fc85a91967a7f956b6cc2a"
|
|
55
55
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* eslint-disable no-console */
|
|
2
2
|
import { Application, Express } from 'express';
|
|
3
|
-
import { Pool } from 'pg';
|
|
3
|
+
import { Pool, PoolConfig } from 'pg';
|
|
4
4
|
import {
|
|
5
5
|
DbLogger,
|
|
6
6
|
DbShutdownActions,
|
|
@@ -25,7 +25,30 @@ export const createPgPool = <T extends string>(
|
|
|
25
25
|
logger: DbLogger,
|
|
26
26
|
shutdownActions: DbShutdownActions,
|
|
27
27
|
): LabelledPgPool<T> => {
|
|
28
|
-
const
|
|
28
|
+
const poolConfig: PoolConfig = {
|
|
29
|
+
connectionString,
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* **IMPORTANT**
|
|
33
|
+
*
|
|
34
|
+
* This is a temporary workaround we do to reduce the number of ETIMEDOUT errors we're seeing right now in TEST+CB instances
|
|
35
|
+
* and will be removed once the root cause if identified.
|
|
36
|
+
*
|
|
37
|
+
* We may consider to potentially still provide the option to supply such PoolConfig object from the consumer and make Pool
|
|
38
|
+
* management more extensible.
|
|
39
|
+
*/
|
|
40
|
+
idleTimeoutMillis: process.env.HOTFIX_DB_IDLE_TIMEOUT_MILLIS
|
|
41
|
+
? parseInt(process.env.HOTFIX_DB_IDLE_TIMEOUT_MILLIS)
|
|
42
|
+
: undefined,
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
if (process.env.HOTFIX_DB_IDLE_TIMEOUT_MILLIS) {
|
|
46
|
+
logger.log(
|
|
47
|
+
`Detected HOTFIX_DB_IDLE_TIMEOUT_MILLIS=${poolConfig.idleTimeoutMillis} for poolLabel=${poolLabel}.`,
|
|
48
|
+
);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
const pgPool = new Pool(poolConfig) as LabelledPgPool<T>;
|
|
29
52
|
pgPool.label = poolLabel;
|
|
30
53
|
|
|
31
54
|
// If a pg pool error happens and triggers the exit of node process (e.g postgres server stopped while postgraphile service is running) -
|