Till now, DurableWAL used Storage Server for finding page versions. If the local cache's max_frame_no is same as storage server's and if a txn's max_frame_no is less or same as cache's max_frame_no, then all reads and writes can proceed using local data itself. Do note that writes from a stale primary will be rejected anyways, since we handle conflicts at Storage Server.
Currently, there is no replication built and it assumes a single primary writer. So, after write, it updates the local cache. In the future PRs, I will add replication.
What's changed:
Update the cache after writes
Use local cache for most operations
What's next:
A primary can lag anytime, so we need replication or way to quickly bring up the cache to speed
If the primary is lagging, we switch to remote mode
Till now,
DurableWAL
used Storage Server for finding page versions. If the local cache'smax_frame_no
is same as storage server's and if a txn'smax_frame_no
is less or same as cache'smax_frame_no
, then all reads and writes can proceed using local data itself. Do note that writes from a stale primary will be rejected anyways, since we handle conflicts at Storage Server.Currently, there is no replication built and it assumes a single primary writer. So, after write, it updates the local cache. In the future PRs, I will add replication.
What's changed:
What's next: