accumulo icon indicating copy to clipboard operation
accumulo copied to clipboard

ZooReaderWriter.putData may create data, timeout, then fail

Open keith-turner opened this issue 6 years ago • 5 comments

ZooUtil.putData() accepts an option to fail on create if a node exists. I am not completely sure but I think the following can happen.

  • Call to Zookeeper to create data timesout, but it was created by on the ZK server side AND it didn't exist
  • Timeout exception causes a retry
  • Retry fails because the node exists.

I noticed this while reviewing #1005

keith-turner avatar Mar 01 '19 19:03 keith-turner

I will look into this on the test cluster we have set up here.

jzgithub1 avatar Mar 12 '19 13:03 jzgithub1

ZooUtil.putData was moved to ZooReaderWriter.putData.

ctubbsii avatar Dec 10 '19 22:12 ctubbsii

I'm currently refactoring some of the ZooReader{Writer,} code to reduce redundancy and simplify things, and saw the problematic code in question. I can look into a fix.

ctubbsii avatar Dec 11 '19 01:12 ctubbsii

I have completed my refactor in #1755. After that is merged, this should be much easier to investigate.

ctubbsii avatar Oct 28 '20 01:10 ctubbsii

I can look at this as part of the configuration changes that I'm going to work on when my current task completes.

EdColeman avatar Oct 28 '20 17:10 EdColeman