[ https://issues.apache.org/jira/browse/HBASE-18042?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16027399#comment-16027399 ]
Hudson commented on HBASE-18042: -------------------------------- SUCCESS: Integrated in Jenkins build HBase-1.3-IT #53 (See [https://builds.apache.org/job/HBase-1.3-IT/53/]) HBASE-18042 Client Compatibility breaks between versions 1.2 and 1.3 (zhangduo: rev 2277c2b63680df2af9edb3c534f0359e0ea14b5d) * (edit) hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestLeaseRenewal.java * (edit) hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAlwaysSetScannerId.java * (add) hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestScanWithoutFetchingData.java * (edit) hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java > Client Compatibility breaks between versions 1.2 and 1.3 > -------------------------------------------------------- > > Key: HBASE-18042 > URL: https://issues.apache.org/jira/browse/HBASE-18042 > Project: HBase > Issue Type: Bug > Components: regionserver, scan > Affects Versions: 2.0.0, 1.4.0, 1.3.1 > Reporter: Karan Mehta > Assignee: Duo Zhang > Priority: Critical > Fix For: 2.0.0, 1.4.0, 1.3.2 > > Attachments: HBASE-18042-branch-1.3.patch, > HBASE-18042-branch-1.3-v1.patch, HBASE-18042-branch-1.patch, > HBASE-18042-branch-1.patch, HBASE-18042-branch-1-v1.patch, > HBASE-18042-branch-1-v1.patch, HBASE-18042.patch, HBASE-18042-v1.patch, > HBASE-18042-v2.patch > > > OpenTSDB uses AsyncHBase as its client, rather than using the traditional > HBase Client. From version 1.2 to 1.3, the {{ClientProtos}} have been > changed. Newer fields are added to {{ScanResponse}} proto. > For a typical Scan request in 1.2, would require caller to make an > OpenScanner Request, GetNextRows Request and a CloseScanner Request, based on > {{more_rows}} boolean field in the {{ScanResponse}} proto. > However, from 1.3, new parameter {{more_results_in_region}} was added, which > limits the results per region. Therefore the client has to now manage sending > all the requests for each region. Further more, if the results are exhausted > from a particular region, the {{ScanResponse}} will set > {{more_results_in_region}} to false, but {{more_results}} can still be true. > Whenever the former is set to false, the {{RegionScanner}} will also be > closed. > OpenTSDB makes an OpenScanner Request and receives all its results in the > first {{ScanResponse}} itself, thus creating a condition as described in > above paragraph. Since {{more_rows}} is true, it will proceed to send next > request at which point the {{RSRpcServices}} will throw > {{UnknownScannerException}}. The protobuf client compatibility is maintained > but expected behavior is modified. -- This message was sent by Atlassian JIRA (v6.3.15#6346)