[jira] [Updated] (HBASE-24578) [WAL] Add a parameter to config RingBufferEventHandler's SyncFuture count

2020-07-16 Thread Reid Chan (Jira)


 [ 
https://issues.apache.org/jira/browse/HBASE-24578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Reid Chan updated HBASE-24578:
--
Release Note: Introduce a new parameter 
"hbase.regionserver.wal.sync.batch.count" to control the wal sync batch size 
which is equals to "hbase.regionserver.handler.count" by default. It should 
work well if you use default wal provider---one wal per regionserver. But if 
you use read/write separated handlers, you can set 
"hbase.regionserver.wal.sync.batch.count" to the number of write handlers. And 
if you use wal-per-groups or wal-per-region, you can consider lower 
"hbase.regionserver.wal.sync.batch.count", the default number will be too big 
and consume more memories as the number of wals grows.  (was: Introduce a new 
parameter "hbase.regionserver.wal.sync.batch.count" to control the wal sync 
batch size which is equals to "hbase.regionserver.handler.count" by default. It 
should work well if you use default wal provider---one wal per regionserver. 
But if you use Read/Write separated handlers, you can set 
"hbase.regionserver.wal.sync.batch.count" to the number of write handlers. And 
if you use wal-per-groups or wal-per-region, you can consider lower 
"hbase.regionserver.wal.sync.batch.count", the default number will be too big 
and consume more memories as the number of wals grows.)

> [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)


[jira] [Updated] (HBASE-24578) [WAL] Add a parameter to config RingBufferEventHandler's SyncFuture count

2020-07-16 Thread Reid Chan (Jira)


 [ 
https://issues.apache.org/jira/browse/HBASE-24578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Reid Chan updated HBASE-24578:
--
Release Note: Introduce a new parameter 
"hbase.regionserver.wal.sync.batch.count" to control the wal sync batch size 
which is equals to "hbase.regionserver.handler.count" by default. It should 
work well if you use default wal provider---one wal per regionserver. But if 
you use Read/Write separated handlers, you can set 
"hbase.regionserver.wal.sync.batch.count" to the number of write handlers. And 
if you use wal-per-groups or wal-per-region, you can consider lower 
"hbase.regionserver.wal.sync.batch.count", the default number will be too big 
and consume more memories as the number of wals grows.  (was: Introduce a new 
parameter "hbase.regionserver.wal.sync.batch.count" to control the wal sync 
batch size which is equals to "hbase.regionserver.handler.count" by default. It 
should work well if you use default wal provider---one wal per regionserver. 
But if you use Read/Write separated handlers, you can set 
"hbase.regionserver.wal.sync.batch.count" to the number of write handlers.)

> [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)


[jira] [Updated] (HBASE-24578) [WAL] Add a parameter to config RingBufferEventHandler's SyncFuture count

2020-07-16 Thread Reid Chan (Jira)


 [ 
https://issues.apache.org/jira/browse/HBASE-24578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Reid Chan updated HBASE-24578:
--
Release Note: Introduce a new parameter 
"hbase.regionserver.wal.sync.batch.count" to control the wal sync batch size 
which is equals to "hbase.regionserver.handler.count" by default. It should 
work well if you use default wal provider---one wal per regionserver. But if 
you use Read/Write separated handlers, you can set 
"hbase.regionserver.wal.sync.batch.count" to the number of write handlers.

> [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)


[jira] [Updated] (HBASE-24578) [WAL] Add a parameter to config RingBufferEventHandler's SyncFuture count

2020-07-16 Thread Reid Chan (Jira)


 [ 
https://issues.apache.org/jira/browse/HBASE-24578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Reid Chan updated HBASE-24578:
--
Fix Version/s: 1.7.0

> [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)


[jira] [Updated] (HBASE-24578) [WAL] Add a parameter to config RingBufferEventHandler's SyncFuture count

2020-07-13 Thread Guanghao Zhang (Jira)


 [ 
https://issues.apache.org/jira/browse/HBASE-24578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Guanghao Zhang updated HBASE-24578:
---
Fix Version/s: (was: 2.2.7)
   2.2.6

> [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, 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)


[jira] [Updated] (HBASE-24578) [WAL] Add a parameter to config RingBufferEventHandler's SyncFuture count

2020-07-13 Thread Guanghao Zhang (Jira)


 [ 
https://issues.apache.org/jira/browse/HBASE-24578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Guanghao Zhang updated HBASE-24578:
---
Fix Version/s: (was: 2.2.6)
   2.2.7

> [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, 2.2.7
>
>
> 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)


[jira] [Updated] (HBASE-24578) [WAL] Add a parameter to config RingBufferEventHandler's SyncFuture count

2020-07-13 Thread Reid Chan (Jira)


 [ 
https://issues.apache.org/jira/browse/HBASE-24578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Reid Chan updated HBASE-24578:
--
Fix Version/s: 2.2.6
   2.3.1
   3.0.0-alpha-1

> [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, 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)


[jira] [Updated] (HBASE-24578) [WAL] Add a parameter to config RingBufferEventHandler's SyncFuture count

2020-06-16 Thread Reid Chan (Jira)


 [ 
https://issues.apache.org/jira/browse/HBASE-24578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Reid Chan updated HBASE-24578:
--
Description: 
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} 

  was:
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 I tried to use WAL group provider, either by group or wal per region, the 
default value was bad. If rs has 100 regions I use wal per region strategy, 
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} 


> [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
>Priority: Major
>
> 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)


[jira] [Updated] (HBASE-24578) [WAL] Add a parameter to config RingBufferEventHandler's SyncFuture count

2020-06-16 Thread Reid Chan (Jira)


 [ 
https://issues.apache.org/jira/browse/HBASE-24578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Reid Chan updated HBASE-24578:
--
Affects Version/s: 1.4.13
   2.2.5

> [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
>Priority: Major
>
> The current value is the value of {{hbase.regionserver.handler.count}}, which 
> works good in default wal provider --- one WAL per regionserver.
> When I tried to use WAL group provider, either by group or wal per region, 
> the default value was bad. If rs has 100 regions I use wal per region 
> strategy, 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)


[jira] [Updated] (HBASE-24578) [WAL] Add a parameter to config RingBufferEventHandler's SyncFuture count

2020-06-16 Thread Reid Chan (Jira)


 [ 
https://issues.apache.org/jira/browse/HBASE-24578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Reid Chan updated HBASE-24578:
--
Description: 
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 I tried to use WAL group provider, either by group or wal per region, the 
default value was bad. If rs has 100 regions I use wal per region strategy, 
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} 

  was:
The current value is the value of {{hbase.regionserver.handler.count}}, which 
works good in default wal provider --- one WAL per regionserver.

When I tried to use WAL group provider, either by group or wal per region, the 
default value was bad. If rs has 100 regions I use wal per region strategy, 
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} 


> [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
>Priority: Major
>
> 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 I tried to use WAL group provider, either by group or wal per region, 
> the default value was bad. If rs has 100 regions I use wal per region 
> strategy, 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)


[jira] [Updated] (HBASE-24578) [WAL] Add a parameter to config RingBufferEventHandler's SyncFuture count

2020-06-16 Thread Reid Chan (Jira)


 [ 
https://issues.apache.org/jira/browse/HBASE-24578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Reid Chan updated HBASE-24578:
--
Component/s: wal

> [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
>Reporter: Reid Chan
>Priority: Major
>
> The current value is the value of {{hbase.regionserver.handler.count}}, which 
> works good in default wal provider --- one WAL per regionserver.
> When I tried to use WAL group provider, either by group or wal per region, 
> the default value was bad. If rs has 100 regions I use wal per region 
> strategy, 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)