Yoav Zuriel
Yoav Zuriel
https://github.com/yahoo/Oak/blob/d3691702b54010ff0b67ca9b3a3190dc9b903b64/core/src/test/java/com/oath/oak/IteratorModificationTest.java#L194-L236 In line 211, the ``next()`` sometimes returns ``null`` instead of throwing a ``ConcurrentModificationException``. In the picture attached that scenario can be seen. 
https://github.com/yahoo/Oak/blob/d3691702b54010ff0b67ca9b3a3190dc9b903b64/core/src/main/java/com/oath/oak/InternalOakMap.java#L309 https://github.com/yahoo/Oak/blob/d3691702b54010ff0b67ca9b3a3190dc9b903b64/core/src/main/java/com/oath/oak/InternalOakMap.java#L383 https://github.com/yahoo/Oak/blob/d3691702b54010ff0b67ca9b3a3190dc9b903b64/core/src/main/java/com/oath/oak/InternalOakMap.java#L421 In all the lines above, the operation on the handle may return ``false``, meaning that the value is deleted and operation should restart. In particular, in line...
As it seems a user obtains an OakWBufferImpl when calling a compute(). Before returning this buffer to the user a writelock is taken. However, OakWBuffer offers a transform() operation which...