@sap/async-xsjs 3.0.2 → 3.0.3
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/CHANGELOG.md +8 -2
- package/lib/xsjs/db/common/connection.js +34 -4
- package/npm-shrinkwrap.json +8 -8
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -5,12 +5,19 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|
|
5
5
|
|
|
6
6
|
The format is based on [Keep a Changelog](http://keepachangelog.com/).
|
|
7
7
|
|
|
8
|
+
<a name="3.0.3"></a>
|
|
9
|
+
## 3.0.3 - 2026-07-06
|
|
10
|
+
|
|
11
|
+
### Updated
|
|
12
|
+
- update @sap/hdbext version to 8.1.14
|
|
13
|
+
- Revised the lib/client-factory.js code to enhance logger information handling
|
|
14
|
+
|
|
8
15
|
<a name="3.0.2"></a>
|
|
9
16
|
## 3.0.2 - 2026-06-29
|
|
10
17
|
|
|
11
18
|
### Updated
|
|
12
19
|
- update axios version to 1.18.1
|
|
13
|
-
|
|
20
|
+
|
|
14
21
|
<a name="3.0.1"></a>
|
|
15
22
|
## 3.0.1 - 2026-06-11
|
|
16
23
|
|
|
@@ -18,7 +25,6 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/).
|
|
|
18
25
|
- update @sap/node-jwt version to 1.6.30
|
|
19
26
|
- update @sap/node-vsi to 1.4.34
|
|
20
27
|
|
|
21
|
-
|
|
22
28
|
<a name="3.0.0"></a>
|
|
23
29
|
## 3.0.0 - 2026-06-08
|
|
24
30
|
|
|
@@ -1,12 +1,42 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var hdbext = require('@sap/hdbext');
|
|
4
|
+
var logger = require('../../../logging').logger;
|
|
4
5
|
|
|
5
6
|
exports = module.exports;
|
|
6
7
|
exports.connect = connect;
|
|
7
8
|
|
|
9
|
+
var MAX_RETRIES = 10;
|
|
10
|
+
var RETRY_DELAY_MS = 100;
|
|
11
|
+
|
|
12
|
+
function delay(ms) {
|
|
13
|
+
return new Promise(function (resolve) { setTimeout(resolve, ms); });
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
function getServerNode(hanaOptions) {
|
|
17
|
+
if (hanaOptions.serverNode) {
|
|
18
|
+
return hanaOptions.serverNode;
|
|
19
|
+
}
|
|
20
|
+
return `${hanaOptions.host}:${hanaOptions.port}`;
|
|
21
|
+
}
|
|
22
|
+
|
|
8
23
|
async function connect (hanaOptions) {
|
|
9
|
-
var
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
24
|
+
var attempt = 0;
|
|
25
|
+
var serverNode = getServerNode(hanaOptions);
|
|
26
|
+
while (attempt <= MAX_RETRIES) {
|
|
27
|
+
try {
|
|
28
|
+
var conn = await hdbext.createConnectionPromise(hanaOptions);
|
|
29
|
+
conn.setAutoCommit(false);
|
|
30
|
+
return conn;
|
|
31
|
+
} catch (err) {
|
|
32
|
+
if (attempt < MAX_RETRIES) {
|
|
33
|
+
attempt++;
|
|
34
|
+
logger.warn('HANA connection attempt ' + attempt + ' to ' + serverNode + ' failed, retrying in ' + (RETRY_DELAY_MS * attempt) + 'ms. Error: ' + err.message);
|
|
35
|
+
await delay(RETRY_DELAY_MS * attempt);
|
|
36
|
+
} else {
|
|
37
|
+
logger.error('HANA connection to ' + serverNode + ' failed after ' + MAX_RETRIES + ' retries. Error: ' + err.message);
|
|
38
|
+
throw err;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sap/async-xsjs",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.3",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@sap/async-xsjs",
|
|
9
|
-
"version": "3.0.
|
|
9
|
+
"version": "3.0.3",
|
|
10
10
|
"license": "SEE LICENSE IN LICENSE file",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@sap/audit-logging": "^7.0.1",
|
|
13
13
|
"@sap/e2e-trace": "^6.2.1",
|
|
14
14
|
"@sap/hana-client": "2.28.21",
|
|
15
|
-
"@sap/hdbext": "8.1.
|
|
15
|
+
"@sap/hdbext": "8.1.14",
|
|
16
16
|
"@sap/instance-manager": "^5.2.6",
|
|
17
17
|
"@sap/jobs-client": "^1.9.1",
|
|
18
18
|
"@sap/logging": "^9.2.1",
|
|
@@ -105,11 +105,11 @@
|
|
|
105
105
|
"license": "MIT"
|
|
106
106
|
},
|
|
107
107
|
"node_modules/@sap/hdbext": {
|
|
108
|
-
"version": "8.1.
|
|
108
|
+
"version": "8.1.14",
|
|
109
109
|
"license": "SEE LICENSE IN LICENSE file",
|
|
110
110
|
"dependencies": {
|
|
111
111
|
"@sap/e2e-trace": "6.0.0",
|
|
112
|
-
"@sap/hana-client": "2.
|
|
112
|
+
"@sap/hana-client": "2.29.23",
|
|
113
113
|
"accept-language": "2.0.16",
|
|
114
114
|
"async": "3.2.6",
|
|
115
115
|
"debug": "4.4.3",
|
|
@@ -131,7 +131,7 @@
|
|
|
131
131
|
}
|
|
132
132
|
},
|
|
133
133
|
"node_modules/@sap/hdbext/node_modules/@sap/hana-client": {
|
|
134
|
-
"version": "2.
|
|
134
|
+
"version": "2.29.23",
|
|
135
135
|
"hasInstallScript": true,
|
|
136
136
|
"license": "SEE LICENSE IN developer-license-3_2.txt",
|
|
137
137
|
"dependencies": {
|
|
@@ -166,7 +166,7 @@
|
|
|
166
166
|
}
|
|
167
167
|
},
|
|
168
168
|
"node_modules/@sap/instance-manager/node_modules/@sap/xssec": {
|
|
169
|
-
"version": "4.13.
|
|
169
|
+
"version": "4.13.1",
|
|
170
170
|
"license": "SAP DEVELOPER LICENSE AGREEMENT",
|
|
171
171
|
"dependencies": {
|
|
172
172
|
"debug": "^4.4.3",
|
|
@@ -1125,7 +1125,7 @@
|
|
|
1125
1125
|
}
|
|
1126
1126
|
},
|
|
1127
1127
|
"node_modules/iconv-lite": {
|
|
1128
|
-
"version": "0.7.
|
|
1128
|
+
"version": "0.7.3",
|
|
1129
1129
|
"license": "MIT",
|
|
1130
1130
|
"dependencies": {
|
|
1131
1131
|
"safer-buffer": ">= 2.1.2 < 3.0.0"
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sap/async-xsjs",
|
|
3
3
|
"description": "Compatibility layer to run XS Classic applications on XS Advanced",
|
|
4
|
-
"version": "3.0.
|
|
4
|
+
"version": "3.0.3",
|
|
5
5
|
"repository": {
|
|
6
6
|
"url": "git@github.wdf.sap.corp:xs2/async-xsjs.git"
|
|
7
7
|
},
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"@sap/audit-logging": "^7.0.1",
|
|
12
12
|
"@sap/e2e-trace": "^6.2.1",
|
|
13
13
|
"@sap/hana-client": "2.28.21",
|
|
14
|
-
"@sap/hdbext": "8.1.
|
|
14
|
+
"@sap/hdbext": "8.1.14",
|
|
15
15
|
"@sap/instance-manager": "^5.2.6",
|
|
16
16
|
"@sap/jobs-client": "^1.9.1",
|
|
17
17
|
"@sap/logging": "^9.2.1",
|