[
https://issues.apache.org/jira/browse/HBASE-11724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14095893#comment-14095893
]
Matteo Bertozzi commented on HBASE-11724:
-----------------------------------------
{quote}
Give examples in the hbase-defaults.xml for these settings – it would clarify
some of the confusion I've encountered. Give an example settings for scenarios
where you have gets and scans as equals, where gets get a lot more priority and
where scans get a lot more priority. Probably want the same with writes vs
gets/scans as well.
{quote}
The example of the 0.5 value in the read.share seems to have thrown you off...
{code}
<name>hbase.ipc.server.callqueue.read.share</name>
<description>Split the call queues into read and write queues.
A value of 0 indicate to not split the call queues.
A value of 0.5 means there will be the same number of read and write
queues
A value of 1.0 means that all the queues except one are used to dispatch
read requests.
</description>
{code}
adding something like this? "A value > 0.5 means that there will be more read
queues than write queues" and "A value < 0.5 means that there will be less read
queues than write queues".
{code}
<name>hbase.ipc.server.callqueue.scan.share</name>
<value>0</value>
<description>Used in conjunction with hbase.ipc.server.callqueue.read.share
will split the read call queues into small-read and long-read queues.
A value of 0 or 1 indicate to use the same set of queues for gets and scans.
</description>
{code}
Adding something like this? "A value of 0.5 means that there will be the same
number of short-read and long-read queues" and "A value > 0.5 means that there
will be more long-read queues then short-read queues" and "A value < 0.5 means
that there will be less long-read queues then short-read queues"
{quote}
my point is that as a user you are asking me to look at the code. Let's assume
I'm a clever user and looked at the code — you haven't made any of these
invariants known. comments in the hbase-defaults or explicit checks in code
would be helpful.
{quote}
Why? "share" may be interpreted as a boolean but if you see 0 as default
instead of false, it is probably not a boolean.. then you read about the 0 and
1 edge case... and you may start understanding that that probably is the
limit...
otherwise, you are just the fancy user that wants to break things and set
random crap as value...
If you want I can add "the value must be between 0.0 and 1.0" to the doc... but
you may want to add that also to all the other fields that we have in
hbase-default.xml
> Add to RWQueueRpcExecutor the ability to split get and scan handlers
> --------------------------------------------------------------------
>
> Key: HBASE-11724
> URL: https://issues.apache.org/jira/browse/HBASE-11724
> Project: HBase
> Issue Type: New Feature
> Components: IPC/RPC
> Reporter: Matteo Bertozzi
> Assignee: Matteo Bertozzi
> Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-11724-v0.patch
>
>
> RWQueueRpcExecutor has the devision between reads and writes requests, but we
> can split also small-reads and long-reads. This can be useful to force a
> deprioritization of scans on the RS.
--
This message was sent by Atlassian JIRA
(v6.2#6252)