jkosh44 commented on issue #978: Use CompleteableFuture compose to centralize 
commit logic
URL: https://github.com/apache/fluo/issues/978#issuecomment-351726809
 
 
   If anyone's interested I started to try and see how this would look/work in 
code. 
[TransactionImpl](https://github.com/jkosh44/fluo/blob/issue-978/modules/core/src/main/java/org/apache/fluo/core/impl/TransactionImpl.java#L899)
 and 
[AsyncCommitResult](https://github.com/jkosh44/fluo/blob/issue-978/modules/core/src/main/java/org/apache/fluo/core/impl/AsyncCommitResult.java).
 It's still pretty messy, but I've already been thinking of ways to clean it 
up. I didn't open a pull request because it doesn't compile, I have one error 
left that I need to take care of. So I still don't really know if it works but 
I just wanted to show an idea of what I was talking about. 
   
   Some cleanup ideas:
   - Add an AsyncCommitResult as a param to the helper methods to avoid 
recreating one at every step 
   - Move `if(!acr.isFinished())` logic into the helper methods themselves
   - Is it necessary for the acr to have a CommitData field, or is it the same 
cd object through every call?

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to