Details
-
Bug
-
Status: Resolved
-
Minor
-
Resolution: Cannot Reproduce
-
None
-
None
-
None
-
None
Description
This code does not handle the case where period > 2**31 properly:
long period = Math.min(scanPeriod, Math.max(blockMap.size(),1) * 600 * 1000L); int periodInt = Math.abs((int)period); return System.currentTimeMillis() - scanPeriod + DFSUtil.getRandom().nextInt(periodInt);
So, for example, if period = 0x100000000, we'll map that to 0, and so forth.