Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It isn't arbitrary, it is last writer wins, which is reasonable enough to me. How SHOULD conflicts be resolved?

Active Directory is eventually consistent, so it is expected that not all nodes will see changes immediately and could operate on stale data.



lww is arbitrary, because (a) it's unknowable if some local state is actually valid, and (b) resolving conflicts is destructive

conflicts cannot be resolved in general without additional information from the application

in an lww system if a bit of data loses in an lww contest, that data was not just stale, it actually becomes invalid

if you set a=1 and then do a bunch of operations based on the idea that a=1, and i set a=2 and then do a bunch of operations based on the idea that a=2, and lww resolves that my a=2 wins over your a=1, then after that merge, your a=1 is not just stale, it's entirely invalid, erased from history. at no point did a ever equal 1. anything you did with that assumption is similarly invalid. and lww provides no way to manage the causality implications of that decision.

it's fine for many use cases but it's not a general-purpose solution.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: