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

Reply via email to