Return-Path: X-Original-To: apmail-hbase-user-archive@www.apache.org Delivered-To: apmail-hbase-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 754C2FE77 for ; Sat, 6 Apr 2013 21:05:48 +0000 (UTC) Received: (qmail 64132 invoked by uid 500); 6 Apr 2013 21:05:47 -0000 Delivered-To: apmail-hbase-user-archive@hbase.apache.org Received: (qmail 63952 invoked by uid 500); 6 Apr 2013 21:05:47 -0000 Mailing-List: contact user-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@hbase.apache.org Delivered-To: mailing list user@hbase.apache.org Received: (qmail 63720 invoked by uid 99); 6 Apr 2013 21:05:47 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 06 Apr 2013 21:05:47 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of yuzhihong@gmail.com designates 209.85.217.173 as permitted sender) Received: from [209.85.217.173] (HELO mail-lb0-f173.google.com) (209.85.217.173) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 06 Apr 2013 21:05:41 +0000 Received: by mail-lb0-f173.google.com with SMTP id w20so4713399lbh.18 for ; Sat, 06 Apr 2013 14:05:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=g/Wo3TxBqlTHynd/K6ZesO+aQZvBWZu+SUq2es0WN88=; b=DXmc/oRGFQ66EV9FMH7uYKPK0g54QBPoJ4nCJWaLMFwQRy9PvyDM0ij3cWhZiR/ezt cOGe4Op5ijilrndi0BWAqGJEEa5WC7PSA3ZL5mDr+az1f+Jmy95hdjFCIT1YdkdBY1Sx zTryIh48z4W6xp2zegasKF6mneJ1UYNaAejORyGJu1o8cOJz+40vK2bQij/QxNkVi3eq 7eiAO8pTxAO6aV/1aJWepiUTGM3ZXcVgkwhwj8Whdq81bHjQP3aZbsWi2LUIYKE6kJlM /DuQPIbd3kD0w+PvSiptgc6DmqznucZCr6gYIFZNiQiSeOo6CtFDswt0x15Q7fkNcaSs 4jmw== MIME-Version: 1.0 X-Received: by 10.112.148.98 with SMTP id tr2mr8769614lbb.123.1365282321320; Sat, 06 Apr 2013 14:05:21 -0700 (PDT) Received: by 10.112.84.133 with HTTP; Sat, 6 Apr 2013 14:05:21 -0700 (PDT) In-Reply-To: References: Date: Sat, 6 Apr 2013 14:05:21 -0700 Message-ID: Subject: Re: Recovery failure during single Get() From: Ted Yu To: "user@hbase.apache.org" Cc: "dev@hbase.apache.org" Content-Type: multipart/alternative; boundary=047d7b3a820cc7cf6804d9b78f27 X-Virus-Checked: Checked by ClamAV on apache.org --047d7b3a820cc7cf6804d9b78f27 Content-Type: text/plain; charset=ISO-8859-1 Thanks for the analysis. I left some comment on HBASE-8285 On Sat, Apr 6, 2013 at 1:36 PM, Varun Sharma wrote: > Hi, > > We are observing this bug for a while when we use HTable.get() operation to > do a single Get call using the "Result get(Get get)" API and I thought its > best to bring it up. > > Steps to reproduce this bug: > 1) Gracefull restart a region server causing regions to get redistributed. > 2) Client call to this region keeps failing since Meta Cache is never > purged on the client for the region that moved. > > Reason behind the bug: > 1) Client continues to hit the old region server. > 2) The old region server throws NotServingRegionException which is not > handled correctly and the META cache entries are never purged for that > server causing the client to keep hitting the old server. > > The reason lies in ServerCallable code since we only purge META cache > entries when there is a RetriesExhaustedException, SocketTimeoutException > or ConnectException. However, there is no case check for > NotServingRegionException(s). > > Why is this not a problem for Scan(s) and Put(s) ? > > a) If a region server is not hosting a region/scanner, then an > UnknownScannerException is thrown which causes a relocateRegion() call > causing a refresh of the META cache for that particular region. > b) For put(s), the processBatchCallback() interface in HConnectionManager > is used which clears out META cache entries for all kinds of exceptions > except DoNotRetryException. > > Created HBASE 8285 for this. > --047d7b3a820cc7cf6804d9b78f27--