Andreas Neumann created TEPHRA-256:
--------------------------------------

             Summary: Transaction Log Synchronization is overly complex and too 
restrictive
                 Key: TEPHRA-256
                 URL: https://issues.apache.org/jira/browse/TEPHRA-256
             Project: Tephra
          Issue Type: Bug
            Reporter: Andreas Neumann
            Assignee: Poorna Chandra


It is had to understand what is going on in this code. There is a lot of 
synchronization, which essentially makes the log writing a bottleneck under 
high load (and we have seen that in some deployments). 

Also, some threads my return from the sync() before all the edits have been 
synced. This is because there is no synchronization around the sync() on the 
file system, and multiple threads my call it at the same time. 
SequenceFileWriter does not appear to be thread-safe, so some calls may return 
before the sync is actually done. However, it is hard to argue because because 
sync() is not documented well, and it is also deprecated and replaced with 
hflush() and hsync(), which have clearer semantics. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to