Stream: implementers
Topic: Limiting conditional operations to ?identifier
Paul Church (Oct 08 2019 at 16:20):
After thinking about designs for a while I can't see any way to implement conditional operations that simultaneously support transactional consistency, scalability, and general-purpose search. The lock you have to hold to be consistent is simply far too broad and would hold up all write operations. I think most implementations (not that there are very many) compromise on transactional consistency, and we should be compromising on general-purpose search instead.
All of the examples that I've seen are searches on identifier, because what the client wants is to use a business identifier instead of tracking resource IDs on every system they talk to. If this was the only thing supported, would that be useful enough?
Grahame Grieve (Oct 08 2019 at 22:49):
my server just blocks whatever writes run into the locks. using just identifier probably wouldn't change anything for me.
Looking at it more broadly, you don't have to support more than that, but I think it's a little hard to communicate if you don't? I'm not really sure about the use cases.... most of them come out of v2 messaging, for me, but that doesn't always mean just identifier?
Last updated: Apr 12 2022 at 19:14 UTC