|
|
|
|
|
by jeffcutsinger
4772 days ago
|
|
If you clear metadata, the following pathological case results in an inconsistent read: * x = 0 and y = 0, starting out in the "good" state with metadata cleared; * client A reads x with no metadata, then for whatever reason blocks or is delayed; * client B writes x = 1 and y = 1, completes the transaction, and the metadata is cleared; * client A reads y = 1. This shouldn't be an issue unless you aggressively clear metadata and have a long-running client. |
|
Having a heartbeat between the client and the server could also help prevent the write from getting purged from "pending" prematurely.