This issue is that if the frontend receives an error, e.g. due to timeout of an operation, it halts. This patch changes the behavior to log errors non-fatally and propagate an error back to the client.
Additionally, if any operation in a BatchRead fails, all operations return error. It might be better to keep each error for each batch operation and return them separately, but the typical failure mode is a timeout reading or writing to a replica, so all the operations have failed.
fixes #100
This issue is that if the frontend receives an error, e.g. due to timeout of an operation, it halts. This patch changes the behavior to log errors non-fatally and propagate an error back to the client.
Additionally, if any operation in a BatchRead fails, all operations return error. It might be better to keep each error for each batch operation and return them separately, but the typical failure mode is a timeout reading or writing to a replica, so all the operations have failed.