[ https://issues.apache.org/jira/browse/HBASE-24578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Reid Chan resolved HBASE-24578. ------------------------------- Hadoop Flags: Reviewed Resolution: Fixed > [WAL] Add a parameter to config RingBufferEventHandler's SyncFuture count > ------------------------------------------------------------------------- > > Key: HBASE-24578 > URL: https://issues.apache.org/jira/browse/HBASE-24578 > Project: HBase > Issue Type: Improvement > Components: wal > Affects Versions: 1.4.13, 2.2.5 > Reporter: Reid Chan > Assignee: wenfeiyi666 > Priority: Major > Fix For: 3.0.0-alpha-1, 2.3.1, 1.7.0, 2.2.6 > > > The current value of RingBufferEventHandler's handler is the value of > {{hbase.regionserver.handler.count}}, which works good in default wal > provider --- one WAL per regionserver. > When trying to use WAL group provider, either by group or wal per region, the > default value is bad. If rs has 100 regions and wal per region strategy is > used, then rs will allocate 100 * > SyncFuture[$hbase.regionserver.handler.count] array > {code} > int maxHandlersCount = conf.getInt(HConstants.REGION_SERVER_HANDLER_COUNT, > 200); > this.ringBufferEventHandler = new RingBufferEventHandler( > conf.getInt("hbase.regionserver.hlog.syncer.count", 5), > maxHandlersCount); > ... > ---- > RingBufferEventHandler(final int syncRunnerCount, final int maxHandlersCount) > { > this.syncFutures = new SyncFuture[maxHandlersCount]; > ... > } > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)