hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Segel <michael_se...@hotmail.com>
Subject Re: HBase reads, isolation levels and RegionScanner internal locking
Date Fri, 12 Sep 2014 07:08:14 GMT
Silly question… 

HBase uses the term RLL (row level locking) to make the writes to a row atomic. 

When you start to get in to isolation, RLL takes on a different meaning. 

So now you have to better define what do you mean by locking. Are you taking about HBase RLL,

or are you talking about Transactional RLL ( RDBMS RLL) ? 

On Sep 11, 2014, at 11:58 PM, Vladimir Rodionov <vladrodionov@gmail.com> wrote:

> Hi, all
> We have two isolation levels in (used to be in Scan) in Query now. See:
> https://issues.apache.org/jira/browse/HBASE-11936
> I moved isolation levels API from Scan upward to Query class. The reason:
> this API was not available for Get operations. The rationals? Improve
> performance of get and multi-gets over the same region.
> As many of you aware, RegionScannerImpl is heavily synchronized on internal
> region's lock.  Now some questions:
> 1. Is it safe to bypass this locking (in next() call) in READ_UNCOMMITTED
> mode?
> We will do all necessary checks, of course, before calling nextRaw().
> 2. What was the reason of this locking in a first place for reads in
> READ_COMMITTED mode? Except obvious - no-dirty-reads allowed? Can someone
> tell me what else bad can happen?
> -Vladimir

View raw message