I have to come up with a “event dupe check” system that handles race conditions 
where two requests come in at the same time.  Obviously this can be solved with 
lightweight transactions (if not exists), however I am concerned that there may 
be costs/issues hidden to me for doing significant amounts of LWT such as locks 
or other contention issues.  If it comes down to pure time and operations, 
after doing some analysis with tracing, it appears that is actually cheaper 
(total time and operations wise) to simply do one LWT than implement a 
check/write/double check and or correct style reconciliation system. 

Are there hidden costs to LWT (paxos) that are not represented in the total 
time and number of operations?  For example, are there some under-the-hood 
locks that could cause contention issues when processing significant quantities 
of LWT under load?

Wayne

Reply via email to