-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RDSDataService "Communications link failure" when unpausing #2914
Comments
n.b. I'm happy to look into implementing a fix for this, if other's agree that the aws-sdk should be retrying. |
Thank-you for reaching out, can you please provide the HTTP response for this failure? |
Switching on the logging I can see that the log line is:
With the following full request/response object as: {
request: {
service: 'rdsdataservice',
operation: 'executeStatement',
params: {
sql: '...',
resourceArn: '...',
secretArn: '...'
}
},
success: false,
response: null,
error: {
message: 'Communications link failure\n' +
'\n' +
'The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.',
code: 'BadRequestException',
time: '2019-10-22T21:00:00.000Z',
requestId: '...',
statusCode: 400,
retryable: false,
retryDelay: 100
},
attempt: 0,
status: 400,
latency: 100
} |
Would this particular issue occur if: $ ping s3.amazonaws.com
ping: s3.amazonaws.com: Name or service not known ... was happening intermittently instead of resolving? i.e. "has not received any packets from the server" could be a non-existent DNS record or routing issue? |
@Martii - I think it's an artefact of how Aurora Serverless works. As far as I understand it, you get this error because the rdsdataservice endpoint for your database is always availble, but the underlying compute to respond may be in a paused state which can take ~30 seconds to resume. |
@thomasmichaelwallace you are welcome to open a PR for our team to review. |
Cool - @ajredniwja - I've given it a go. See #2931 |
This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs and link to relevant comments in this thread. |
Confirm by changing [ ] to [x] below to ensure that it's a bug:
Describe the bug
Running
AWS.RDSDataService.executeStatement
against a auto-paused Serverless Aurora instance results in the following, unhandled, error:Apparently the
Communications link failure
is expected while compute is being automatically re-provisioned (see additional context), and the client is expected to retry with a delay.Is the issue in the browser/Node.js?
Node.js
If on Node.js, are you running this on AWS Lambda?
Issue can be reproduced on local machine.
Details of the browser/Node.js version
v12.13.0
SDK version number
Example: v2.553.0
To Reproduce (observed behavior)
Expected behavior
I expected the aws-sdk to retry with a delay after receiving the
BadRequestException
.Additional context
*A search across StackOverflow found a response from AWS support that the failure itself is expected behaviour (https://stackoverflow.com/questions/58192747/aws-aurora-serverless-communication-link-failure).
Clients are expected to wait and retry.
The text was updated successfully, but these errors were encountered: