You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Have you thought about having that in libkv? Simple transactions are possible with Consul, Zookeeper, etcd (v3) and Redis. Looks like pretty common use case?
The text was updated successfully, but these errors were encountered:
Yes, thought about this and ACLs, for now I'll focus on improving the tests and make the foundations more solid. Then if we can add more features such as transactions that would be nice indeed.
Let me know if you are interested in getting started with the implementation. It doesn't have to be for every store at first, we can throw an store.ErrCallNotSupported for other stores.
@mthenw Sorry for the very long wait, was pretty busy with interviews recently. I think you could take a look at how etcd v3 API does transactions (I really like their API), specifically with Put/AtomicPut and how we use the client.Txn method. I think it gives a nice idea of what this might look like on our side.
We would get Op*** methods for Get/Put/AtomicPut, etc.
Will have to think about the AtomicPut case which might be a little trickier to implement (I don't think the solution of etcd v3 with Compare is very intuitive, although I'm not sure yet if there is a better way).
Have you thought about having that in libkv? Simple transactions are possible with Consul, Zookeeper, etcd (v3) and Redis. Looks like pretty common use case?
The text was updated successfully, but these errors were encountered: