MCPcopy
hub / github.com/mongodb/node-mongodb-native / isRetryableReadError

Function isRetryableReadError

src/error.ts:1454–1476  ·  view source on GitHub ↗
(error: MongoError)

Source from the content-addressed store, hash-verified

1452
1453/** Determines whether an error is something the driver should attempt to retry */
1454export function isRetryableReadError(error: MongoError): boolean {
1455 const hasRetryableErrorCode =
1456 typeof error.code === 'number' ? RETRYABLE_READ_ERROR_CODES.has(error.code) : false;
1457 if (hasRetryableErrorCode) {
1458 return true;
1459 }
1460
1461 if (error instanceof MongoNetworkError) {
1462 return true;
1463 }
1464
1465 const isNotWritablePrimaryError = LEGACY_NOT_WRITABLE_PRIMARY_ERROR_MESSAGE.test(error.message);
1466 if (isNotWritablePrimaryError) {
1467 return true;
1468 }
1469
1470 const isNodeIsRecoveringError = NODE_IS_RECOVERING_ERROR_MESSAGE.test(error.message);
1471 if (isNodeIsRecoveringError) {
1472 return true;
1473 }
1474
1475 return false;
1476}
1477
1478const SDAM_RECOVERING_CODES = new Set<number>([
1479 MONGODB_ERROR_CODES.ShutdownInProgress,

Callers 2

canRetryFunction · 0.90
error.test.tsFile · 0.85

Calls 2

testMethod · 0.80
hasMethod · 0.45

Tested by

no test coverage detected