Skip to content
Permalink
Browse files
fix: check for timeout in connection after last statement finished (#…
…1086)

The check whether the previous statement timed out in the Connection API was
done when a statement was submitted to the connection, and not when the statement
was executed. That could cause a race condition, as statements are executed using
a separate thread, while submitting a statement is done using the main thread.

This could cause a statement to return an error with code ABORTED instead of
FAILED_PRECONDITION. A statement on a read/write transaction would always return
an error when a/the previous statement timed out, only the error code could
be different depending on whether the race condition occurred or not. This is
now fixed so that the error code is always FAILED_PRECONDITION and the error
indicates that a read/write transaction is no longer usable after a statement
timeout.

Fixes #1077
  • Loading branch information
olavloite committed Apr 25, 2021
1 parent 51d753c commit aec0b541672d66fe0c34816b1c1b5a6bdeffccd1
Showing with 0 additions and 0 deletions.

0 comments on commit aec0b54

Please sign in to comment.