Return-Path: X-Original-To: apmail-hbase-issues-archive@www.apache.org Delivered-To: apmail-hbase-issues-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 6D3F218756 for ; Tue, 12 May 2015 18:43:01 +0000 (UTC) Received: (qmail 76903 invoked by uid 500); 12 May 2015 18:43:01 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 76866 invoked by uid 500); 12 May 2015 18:43:01 -0000 Mailing-List: contact issues-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list issues@hbase.apache.org Received: (qmail 76854 invoked by uid 99); 12 May 2015 18:43:01 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 12 May 2015 18:43:01 +0000 Date: Tue, 12 May 2015 18:43:01 +0000 (UTC) From: "Hudson (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (HBASE-13662) RSRpcService.scan() throws an OutOfOrderScannerNext if the scan has a retriable failure MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/HBASE-13662?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14540446#comment-14540446 ] Hudson commented on HBASE-13662: -------------------------------- SUCCESS: Integrated in HBase-1.2 #75 (See [https://builds.apache.org/job/HBase-1.2/75/]) HBASE-13662 RSRpcService.scan() throws an OutOfOrderScannerNext if the scan has a retriable failure (matteo.bertozzi: rev 8e8e246248f9fa3dcdf553787d1c7c75c5a128b5) * hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestScannerRetriableFailure.java * hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java > RSRpcService.scan() throws an OutOfOrderScannerNext if the scan has a retriable failure > --------------------------------------------------------------------------------------- > > Key: HBASE-13662 > URL: https://issues.apache.org/jira/browse/HBASE-13662 > Project: HBase > Issue Type: Bug > Affects Versions: 2.0.0, 1.0.1, 1.1.0, 0.98.10.1 > Reporter: Matteo Bertozzi > Assignee: Matteo Bertozzi > Fix For: 2.0.0, 0.98.13, 1.0.2, 1.2.0, 1.1.1 > > Attachments: HBASE-13662-v0.patch, HBASE-13662-v1.patch > > > while fixing HBASE-13651 I noticed that if we have a failure inside the RSRpcService.scan(), when the request has a hasNextCallSeq() the nextCallSeq is incremented and not rolledback, which means that the client retry will send a request with a nextCallSeq not up to date, which result in an OutOfOrderScannerNextException. > {code} > if (rows > 0) { > if (request.hasNextCallSeq()) { > if (request.getNextCallSeq() != rsh.nextCallSeq) { > throw new OutOfOrderScannerNextException(...) > } > // Increment the nextCallSeq value which is the next expected from client. > rsh.nextCallSeq++; > } > } > try { > ...scan code... > } > {code} > after the scanner heartbeat patches HBASE-13090, we seems to be able to recover from that OutOfOrder exception, but the error show up anyway. > After a discussion with [~saint.ack@gmail.com] we ended up saying that decrementing the callSeq on exception seems to be fine. but we had the open question about having that nextCallSeq to be atomic, if that was supposed to prevent concurrent requests with the same id. any thoughts? -- This message was sent by Atlassian JIRA (v6.3.4#6332)