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 88C70D3C4 for ; Mon, 16 Jul 2012 14:15:14 +0000 (UTC) Received: (qmail 13228 invoked by uid 500); 16 Jul 2012 14:15:12 -0000 Delivered-To: apmail-hbase-user-archive@hbase.apache.org Received: (qmail 12951 invoked by uid 500); 16 Jul 2012 14:15:12 -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 12923 invoked by uid 99); 16 Jul 2012 14:15:11 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 16 Jul 2012 14:15:11 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=FSL_RCVD_USER,HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of rj03hou@gmail.com designates 209.85.160.41 as permitted sender) Received: from [209.85.160.41] (HELO mail-pb0-f41.google.com) (209.85.160.41) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 16 Jul 2012 14:15:04 +0000 Received: by pbbrp2 with SMTP id rp2so12228697pbb.14 for ; Mon, 16 Jul 2012 07:14:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=d5G9Opk4FVh7nEoG7Xl7iYOAww1ejsZbsduDmypkUX4=; b=JPUxWDRttF9/gGxl7uFgzHLg4T9SIY90r/rprsL2N7gQcaLR+zTfgkYjaeKZOaNOKs 91l/pAX8dn5afZ1oVob3rTNKzmJsbpuwqJGYvc7JPkVQFMjsh3IReUOD0+MhHdLj3xHp KZ1AX9DzUMo7uFbwYDTBfxzdQ2a9/7OqzFavygm3ZBNqZZrH0R2IWjrB0S6AmYFUgBo2 KTlrXGiHhk3Mrc2RoEsbG8GMWTI3Jy2RpBpQ5Dq4mWtTh1SIUONk12cXpzCesEdUmisM XvnZXmQUb/gqfew80igEExT6PoqVyhfaTgHqpCzh1BPpkgw8+JjGKNhS1PfOqz17RCnh C3OA== MIME-Version: 1.0 Received: by 10.68.194.4 with SMTP id hs4mr26601313pbc.128.1342448084263; Mon, 16 Jul 2012 07:14:44 -0700 (PDT) Received: by 10.142.149.36 with HTTP; Mon, 16 Jul 2012 07:14:44 -0700 (PDT) Date: Mon, 16 Jul 2012 22:14:44 +0800 Message-ID: Subject: Why startRegionOperation get the lock.readLock().lock(),still need row lock? From: Howard To: user@hbase.apache.org Content-Type: multipart/alternative; boundary=047d7b15a8a531244204c4f30d19 X-Virus-Checked: Checked by ClamAV on apache.org --047d7b15a8a531244204c4f30d19 Content-Type: text/plain; charset=ISO-8859-1 *When I use hbase,I found an Error log:* *2012-07-14 15:41:04,023 ERROR org.apache.hadoop.hbase.regionserver.HRegionServer: java.lang.NullPointerException at java.util.concurrent.ConcurrentHashMap.remove(ConcurrentHashMap.java:922) at org.apache.hadoop.hbase.regionserver.HRegion.releaseRowLock(HRegion.java:3044) at org.apache.hadoop.hbase.regionserver.HRegion.delete(HRegion.java:1653) at org.apache.hadoop.hbase.regionserver.HRegionServer.delete(HRegionServer.java:2513) at sun.reflect.GeneratedMethodAccessor26.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.hadoop.hbase.ipc.WritableRpcEngine$Server.call(WritableRpcEngine.java:364) at org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:1376)* *So I read the source code,It because get the row lock timeout in the delete method.* *But I find the startRegionOperation method,"This method needs to be called before any public call that reads or * modifies data.",why we use this method to get the lock.readLock().lock(),we still need the row lock?* --047d7b15a8a531244204c4f30d19--