Details
Description
The TransactionRouter re-throws non internally retryable snapshot and stale database/shard version errors in a transaction with the NoSuchTransaction error code for consistency with the other causes of the TransientTransactionError label. This makes debugging failures more difficult however, because the original error is not returned to the client. Instead the final error message should include the original error's context.