> On 2010-11-10 15:25:07, Ryan Rawson wrote:
> > trunk/src/main/java/org/apache/hadoop/hbase/KeyValue.java, line 1199
> > <http://review.cloudera.org/r/1208/diff/1/?file=17147#file17147line1199>
> >
> >     I'm torn here, this is making the implementation easy, but KeyValues 
> > have been immutable to date.  While no one shares KeyValues between threads 
> > or scanners, and ideally no one should, this seems dangerous.
> >     
> >

It doesn't actually touch the original byte[] so does not actually 
destroy/mutate the underlying data in any way.  Agreed it's still potentially 
"dangerous" but that's why I've added the nice warning message in javadoc :)


- Jonathan


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://review.cloudera.org/r/1208/#review1891
-----------------------------------------------------------


On 2010-11-10 15:19:26, Jonathan Gray wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://review.cloudera.org/r/1208/
> -----------------------------------------------------------
> 
> (Updated 2010-11-10 15:19:26)
> 
> 
> Review request for hbase, stack and Kannan Muthukkaruppan.
> 
> 
> Summary
> -------
> 
> Adds a new filter, KeyOnlyFilter.  The idea is that this will make it so only 
> the key portion of all the KVs are returned.  Could imagine a few use cases 
> where you just need the keys/index not the values.  We have one where we have 
> giant rows with big values and want to just get the qualifiers/versions w/o 
> values.
> 
> Adds a new method in KeyValue, convertToKeyOnly().  From javadoc:
> 
>   /**
>    * Converts this KeyValue to only contain the key portion (the value is
>    * changed to be null).  This method does a full copy of the backing byte
>    * array and does not modify the original byte array of this KeyValue.
>    * <p>
>    * This method is used by {...@link KeyOnlyFilter} and is an advanced 
> feature of
>    * KeyValue, proceed with caution.
>    */
> 
> 
> This addresses bug HBASE-3211.
>     http://issues.apache.org/jira/browse/HBASE-3211
> 
> 
> Diffs
> -----
> 
>   trunk/src/main/java/org/apache/hadoop/hbase/KeyValue.java 1033617 
>   trunk/src/main/java/org/apache/hadoop/hbase/filter/KeyOnlyFilter.java 
> PRE-CREATION 
>   trunk/src/main/java/org/apache/hadoop/hbase/io/HbaseObjectWritable.java 
> 1033617 
>   trunk/src/test/java/org/apache/hadoop/hbase/TestKeyValue.java 1033617 
>   trunk/src/test/java/org/apache/hadoop/hbase/filter/TestFilter.java 1033617 
> 
> Diff: http://review.cloudera.org/r/1208/diff
> 
> 
> Testing
> -------
> 
> Test of the KV method added to TestKeyValue.  Test of KeyOnlyFilter added to 
> TestFilter.  Both passing.
> 
> 
> Thanks,
> 
> Jonathan
> 
>

Reply via email to