Skip to content

Commit

Permalink
fix UnknownEndpoint exception not thrown in Node14(aws#3393)
Browse files Browse the repository at this point in the history
  • Loading branch information
AllanZhengYP committed Aug 13, 2020
1 parent 82c0f59 commit c5cd31f
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 1 deletion.
5 changes: 5 additions & 0 deletions .changes/next-release/bugfix-ErrorParser-eb144db2.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"type": "bugfix",
"category": "ErrorParser",
"description": "fix UnknownEndpoint exception not thrown in Node14(#3393)"
}
8 changes: 7 additions & 1 deletion lib/event_listeners.js
Original file line number Diff line number Diff line change
Expand Up @@ -494,7 +494,13 @@ AWS.EventListeners = {
add('EXTRACT_REQUEST_ID', 'extractError', AWS.util.extractRequestId);

add('ENOTFOUND_ERROR', 'httpError', function ENOTFOUND_ERROR(err) {
if (err.code === 'NetworkingError' && err.errno === 'ENOTFOUND') {
function isDNSError(err) {
return err.errno === 'ENOTFOUND' ||
typeof err.errno === 'number' &&
typeof AWS.util.getSystemErrorName === 'function' &&
['EAI_NONAME', 'EAI_NODATA'].indexOf(AWS.util.getSystemErrorName(err.errno) >= 0);
}
if (err.code === 'NetworkingError' && isDNSError(err)) {
var message = 'Inaccessible host: `' + err.hostname +
'\'. This service may not be available in the `' + err.region +
'\' region.';
Expand Down
1 change: 1 addition & 0 deletions lib/node_loader.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ util.clientSideMonitoring = {
configProvider: require('./publisher/configuration'),
};
util.iniLoader = require('./shared-ini').iniLoader;
util.getSystemErrorName = require('util').getSystemErrorName;

var AWS;

Expand Down
18 changes: 18 additions & 0 deletions test/event_listeners.spec.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit c5cd31f

Please sign in to comment.