[ https://issues.apache.org/jira/browse/HBASE-15563?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Matt Warhaftig updated HBASE-15563: ----------------------------------- Attachment: hbase-15563-v2.patch Expanded and reran the benchmark test. Counter resetting with _if_ beat out reseting via mod and was more inline with AtomicLong this run: || Threads || AtomicLong Run Time || Reset With If Run Time || Reset With Mod Run Time || | 1 | 66s | 52s | 76s | | 2 | 194s | 203s | 218s | | 4 | 299s | 302s | 315s | Attached patch 'hbase-15563-v2.patch' uses if statements as this seems the best route. > 'counter' may overflow in BoundedGroupingStrategy > ------------------------------------------------- > > Key: HBASE-15563 > URL: https://issues.apache.org/jira/browse/HBASE-15563 > Project: HBase > Issue Type: Bug > Components: wal > Reporter: Duo Zhang > Assignee: Matt Warhaftig > Priority: Minor > Labels: beginner > Attachments: hbase-15563-v1.patch, hbase-15563-v2.patch > > > {code} > groupName = groupNames[counter.getAndIncrement() % groupNames.length]; > {code} > Theoretically, counter can overflow and becomes negative then causes an > ArrayIndexOutOfBoundsException. > But in practice, we need 2 billions different identifiers to make this > happen, and before the overflow we will run into OOM because of a huge > groupNameCache... > So not sure if it is worth to fix -- This message was sent by Atlassian JIRA (v6.3.4#6332)