Thanks for the quick response!
Ah, I didn’t realize, might be worth pointing that out in the documentation, as I didn’t see anything on it. Does that mean we now run 2 x HTTP calls in order to run any mutation?
Also, I’m not exactly clear on what lin_read
is doing, or what I should do with it.
lin_read is initialized by copying the client’s lin_read
I think this means copy the clients lin_read
into the transactions lin_read
. But what should the initial client lin_read be? Can I randomly set it the first time? Do I ever update it independently (e.g. add a new item to the map), or should I only ever merge from a response?
Each transaction needs its own lin_read
The lin_read in the response is {“1”: 14}. The merged result is {“1”: 14}, since we take the max all of the keys.
It looks like at this point you just want me to merge it with the transaction’s lin_read
only but as far as I can see lin_read is only sent in the header for query and not the mutation/commit? So what am I merging it for?
We get another lin_read map, which needs to be merged (the new lin_read map for both the client and transaction
Ok, so when I get a lin_read back from a mutation, then I merge it with the clients lin_read?
Notice that we receive a commit_ts
in the response
Ok, do you want me to do anything with that?
Sorry for so many questions! Just trying to get a handle on this.
Thanks!