Determine this is the right repository
Summary of the issue
Context
When the Spanner is unavailable. If we call run_in_transaction, the Spanner client will stuck forever.
We believe the get_session should in the try catch block. Otherwise, the self._local.transaction_running = True will be forever True.
Expected Behavior:
The client will retry when the Spanner DB is back.
Actual Behavior:
The client stuck forever.
API client name and version
No response
Reproduction steps: code
No response
Reproduction steps: supporting files
- Try to create a session when Spanner is unavailable.
- The client will be stuck forever.
Reproduction steps: actual results
No response
Reproduction steps: expected results
No response
OS & version + platform
No response
Python environment
No response
Python dependencies
No response
Additional context
No response
Determine this is the right repository
Summary of the issue
Context
When the Spanner is unavailable. If we call
run_in_transaction, the Spanner client will stuck forever.We believe the get_session should in the try catch block. Otherwise, the
self._local.transaction_running = Truewill be forever True.Expected Behavior:
The client will retry when the Spanner DB is back.
Actual Behavior:
The client stuck forever.
API client name and version
No response
Reproduction steps: code
No response
Reproduction steps: supporting files
Reproduction steps: actual results
No response
Reproduction steps: expected results
No response
OS & version + platform
No response
Python environment
No response
Python dependencies
No response
Additional context
No response