ctubbsii commented on code in PR #2737:
URL: https://github.com/apache/accumulo/pull/2737#discussion_r882724642


##########
server/base/src/main/java/org/apache/accumulo/server/conf/codec/VersionedProperties.java:
##########
@@ -106,10 +107,15 @@ public VersionedProperties(final int dataVersion, final 
Instant timestamp,
    * value should be used on data writes as the expected version. If the data 
write fails do to an
    * unexpected version, it signals that the node version has changed since 
the instance was
    * instantiated and encoded.
+   * <p>
+   * Implementation note: The data version is stored and returned is an 
unsigned 32-bit integer
+   * value. Internally, ZooKeeper stores the value as a 32-bit signed value 
that can roll-over and
+   * become negative. The can break applications that rely on the value to 
always increase. This
+   * class ensures that the long returned will increase and will not be 
negative.

Review Comment:
   > Yes it would - but that would require changes to `AccumuloConfiguration` 
and sub-classes like `ConfigurationCopy`, which I thought was agreed that would 
be best left for 3.0
   
   It would be nice to fix for 2.1 if it's not too much trouble, but it depends 
on how big of a change it would be. My guess (without looking at it at all) is 
that it wouldn't be too bad, but I have a habit of biting off more than I can 
chew. :smiley_cat: 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to