git.net

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Easier configuration of handler executors


Hello folks,

Now that priority can be passed with each hbase operation.  (
https://issues.apache.org/jira/browse/HBASE-15816).  I noticed that setting
up handler pools was very cumbersome.  I have to implement a new
RpcSchedulerFactory and implement a new RpcScheduler.  I believe much of
this work can be done for us through configuration.

For example if I wanted to create a new handler pool named "foo"
Then I should be able to add the following configurations to hbase-site.xml

hbase.regionserver.foo.handler.count

hbase.ipc.server.foo.max.callqueue.length

hbase.ipc.server.foo.callqueue.type

hbase.ipc.server.foo.callqueue.priority

I was thinking of adding a new ConfigurableRpcSchedulerFactory and
ConfigurableRpcScheduler which would read these config values and
construct the scheduler.  Additionally tuning and resizing of handler
pools will become simpler because we can dynamically resize each of
these pools when configurations change.  Would people be interested in
a feature like this?

Thanks
rahul