Duo Zhang created HBASE-14759: --------------------------------- Summary: Avoid using Math.abs when selecting SyncRunner in FSHLog Key: HBASE-14759 URL: https://issues.apache.org/jira/browse/HBASE-14759 Project: HBase Issue Type: Bug Components: wal Reporter: Duo Zhang
{code:title=FSHLog.java} int index = Math.abs(this.syncRunnerIndex++) % this.syncRunners.length; try { this.syncRunners[index].offer(sequence, this.syncFutures, this.syncFuturesCount); } catch (Exception e) { // Should NEVER get here. requestLogRoll(); this.exception = new DamagedWALException("Failed offering sync", e); } {code} Math.abs will return Integer.MIN_VALUE if you pass Integer.MIN_VALUE in since the actual absolute value of Integer.MIN_VALUE is out of range. I think {{this.syncRunnerIndex++}} will overflow eventually if we keep the regionserver running for enough time. -- This message was sent by Atlassian JIRA (v6.3.4#6332)