[jira] [Comment Edited] (HBASE-17449) Add explicit document on different timeout settings
[ https://issues.apache.org/jira/browse/HBASE-17449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16430714#comment-16430714 ] Peter Somogyi edited comment on HBASE-17449 at 4/9/18 3:19 PM: --- I talked with [~appy] and operation timeout works as he said. The problem was that calls to system tables use different operation timeout as default. was (Author: psomogyi): I talked with [~appy] and operation timeout works as he said. The problem what that calls to system tables use different operation timeout as default. > Add explicit document on different timeout settings > --- > > Key: HBASE-17449 > URL: https://issues.apache.org/jira/browse/HBASE-17449 > Project: HBase > Issue Type: Improvement > Components: documentation >Reporter: Yu Li >Assignee: Peter Somogyi >Priority: Critical > Fix For: 2.0.0 > > Attachments: 0001-Standalone.patch, HBASE-17449.master.002.patch, > WIP-HBASE-17499.master.001.patch > > > Currently we have more than one timeout settings, mainly includes: > * hbase.rpc.timeout > * hbase.client.operation.timeout > * hbase.client.scanner.timeout.period > And in latest branch-1 or master branch code, we will have two other > properties: > * hbase.rpc.read.timeout > * hbase.rpc.write.timeout > However, in current refguid we don't have explicit instruction on the > difference of these timeout settings (there're explanations for each > property, but no instruction on when to use which) > In my understanding, for RPC layer timeout, or say each rpc call: > * Scan (openScanner/next): controlled by hbase.client.scanner.timeout.period > * Other operations: >1. For released versions: controlled by hbase.rpc.timeout >2. For 1.4+ versions: read operation controlled by hbase.rpc.read.timeout, > write operation controlled by hbase.rpc.write.timeout, or hbase.rpc.timeout > if the previous two are not set. > And hbase.client.operation.timeout is a higher-level control counting retry > in, or say the overall control for one user call. > After this JIRA, I hope when users ask questions like "What settings I should > use if I don't want to wait for more than 1 second for a single > put/get/scan.next call", we could give a neat answer. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (HBASE-17449) Add explicit document on different timeout settings
[ https://issues.apache.org/jira/browse/HBASE-17449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16409122#comment-16409122 ] Appy edited comment on HBASE-17449 at 3/22/18 7:22 AM: --- So I did some testing to verify functionality. It seemed to be working as intended. Let me put up the patch with tests. In meantime, the patch in this improvement jira - tests and doc - looks fine to get in. Let me commit it and file a dedicated one for investigation/adding tests for behavior of hbase.client.operation.timeout. Edit: Created HBASE-20249 was (Author: appy): So I did some testing to verify functionality. It seemed to be working as intended. Let me put up the patch with tests. In meantime, the patch in this improvement jira - tests and doc - looks fine to get in. Let me commit it and file a dedicated one for investigation/adding tests for behavior of hbase.client.operation.timeout. > Add explicit document on different timeout settings > --- > > Key: HBASE-17449 > URL: https://issues.apache.org/jira/browse/HBASE-17449 > Project: HBase > Issue Type: Improvement > Components: documentation >Reporter: Yu Li >Assignee: Peter Somogyi >Priority: Critical > Fix For: 2.0.0 > > Attachments: 0001-Standalone.patch, HBASE-17449.master.002.patch, > WIP-HBASE-17499.master.001.patch > > > Currently we have more than one timeout settings, mainly includes: > * hbase.rpc.timeout > * hbase.client.operation.timeout > * hbase.client.scanner.timeout.period > And in latest branch-1 or master branch code, we will have two other > properties: > * hbase.rpc.read.timeout > * hbase.rpc.write.timeout > However, in current refguid we don't have explicit instruction on the > difference of these timeout settings (there're explanations for each > property, but no instruction on when to use which) > In my understanding, for RPC layer timeout, or say each rpc call: > * Scan (openScanner/next): controlled by hbase.client.scanner.timeout.period > * Other operations: >1. For released versions: controlled by hbase.rpc.timeout >2. For 1.4+ versions: read operation controlled by hbase.rpc.read.timeout, > write operation controlled by hbase.rpc.write.timeout, or hbase.rpc.timeout > if the previous two are not set. > And hbase.client.operation.timeout is a higher-level control counting retry > in, or say the overall control for one user call. > After this JIRA, I hope when users ask questions like "What settings I should > use if I don't want to wait for more than 1 second for a single > put/get/scan.next call", we could give a neat answer. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (HBASE-17449) Add explicit document on different timeout settings
[ https://issues.apache.org/jira/browse/HBASE-17449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16373433#comment-16373433 ] stack edited comment on HBASE-17449 at 2/22/18 9:00 PM: It is noted above by Duo. Was hoping we'd have a rationalization of it all at the end of this issue. What you think [~psomogyi]? If you search [~yangzhe1991] issues, he was in here and dig a bunch of fixes. I linked them here. In one IIRC, he talked about how operation timeout shouldn't cover scans... Trying to find it. Meantime let me link relevant seeming issues. HBASE-16492 is the umbrella issue. was (Author: stack): It is noted above by Duo. Was hoping we'd have a rationalization of it all at the end of this issue. What you think [~psomogyi]? If you search [~yangzhe1991] issues, he was in here and dig a bunch of fixes. I linked them here. In one IIRC, he talked about how operation timeout shouldn't cover scans... Trying to find it. Meantime let me link relevant seeming issues. > Add explicit document on different timeout settings > --- > > Key: HBASE-17449 > URL: https://issues.apache.org/jira/browse/HBASE-17449 > Project: HBase > Issue Type: Improvement > Components: documentation >Reporter: Yu Li >Assignee: Yu Li >Priority: Critical > Fix For: 2.0.0-beta-2 > > Attachments: 0001-Standalone.patch, WIP-HBASE-17499.master.001.patch > > > Currently we have more than one timeout settings, mainly includes: > * hbase.rpc.timeout > * hbase.client.operation.timeout > * hbase.client.scanner.timeout.period > And in latest branch-1 or master branch code, we will have two other > properties: > * hbase.rpc.read.timeout > * hbase.rpc.write.timeout > However, in current refguid we don't have explicit instruction on the > difference of these timeout settings (there're explanations for each > property, but no instruction on when to use which) > In my understanding, for RPC layer timeout, or say each rpc call: > * Scan (openScanner/next): controlled by hbase.client.scanner.timeout.period > * Other operations: >1. For released versions: controlled by hbase.rpc.timeout >2. For 1.4+ versions: read operation controlled by hbase.rpc.read.timeout, > write operation controlled by hbase.rpc.write.timeout, or hbase.rpc.timeout > if the previous two are not set. > And hbase.client.operation.timeout is a higher-level control counting retry > in, or say the overall control for one user call. > After this JIRA, I hope when users ask questions like "What settings I should > use if I don't want to wait for more than 1 second for a single > put/get/scan.next call", we could give a neat answer. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (HBASE-17449) Add explicit document on different timeout settings
[ https://issues.apache.org/jira/browse/HBASE-17449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15818020#comment-15818020 ] Phil Yang edited comment on HBASE-17449 at 1/11/17 11:16 AM: - Timeout for scan is complex after we having heartbeat in 1.1+. As long as server can responds an heartbeat in time, ResultScanner.next() will always be blocked until we can get a Result to users. So setting scan timeout is only to prevent server not responding, while operation timeout can limit the max blocking time for all the other operations. I think AsyncTable's scan is same that we may take a long time before we call ScanResultConsumer.onNext or ResultScanner.next() or RawScanResultConsumer.onNext()? [~Apache9] +1 for using a new key for scan rpc timeout because now it use same key with scanner TTL at server which confuse users. For read/write timeout, as I said, we need to write in doc what is the timeout for batch/append/increment. was (Author: yangzhe1991): Timeout for scan is complex after we having heartbeat in 1.1+. As long as server can responds an heartbeat in time, ResultScanner.next() will always be blocked until we can get a Result to users. So setting scan timeout is only to prevent server not responding, while operation timeout can limit the max blocking time for all the other operations. +1 for using a new key for scan rpc timeout because now it use same key with scanner TTL at server which confuse users. For read/write timeout, as I said, we need to write in doc what is the timeout for batch/append/increment. > Add explicit document on different timeout settings > --- > > Key: HBASE-17449 > URL: https://issues.apache.org/jira/browse/HBASE-17449 > Project: HBase > Issue Type: Improvement > Components: documentation >Reporter: Yu Li > > Currently we have more than one timeout settings, mainly includes: > * hbase.rpc.timeout > * hbase.client.operation.timeout > * hbase.client.scanner.timeout.period > And in latest branch-1 or master branch code, we will have two other > properties: > * hbase.rpc.read.timeout > * hbase.rpc.write.timeout > However, in current refguid we don't have explicit instruction on the > difference of these timeout settings (there're explanations for each > property, but no instruction on when to use which) > In my understanding, for RPC layer timeout, or say each rpc call: > * Scan (openScanner/next): controlled by hbase.client.scanner.timeout.period > * Other operations: >1. For released versions: controlled by hbase.rpc.timeout >2. For 1.4+ versions: read operation controlled by hbase.rpc.read.timeout, > write operation controlled by hbase.rpc.write.timeout, or hbase.rpc.timeout > if the previous two are not set. > And hbase.client.operation.timeout is a higher-level control counting retry > in, or say the overall control for one user call. > After this JIRA, I hope when users ask questions like "What settings I should > use if I don't want to wait for more than 1 second for a single > put/get/scan.next call", we could give a neat answer. -- This message was sent by Atlassian JIRA (v6.3.4#6332)