[ 
https://issues.apache.org/jira/browse/HBASE-4528?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13128650#comment-13128650
 ] 

[email protected] commented on HBASE-4528:
------------------------------------------------------



bq.  On 2011-10-15 11:55:54, Ted Yu wrote:
bq.  > We're closer.
bq.  > Thanks for the perseverance, Dhruba.

I will post another version of this patch with some typos corrected.


bq.  On 2011-10-15 11:55:54, Ted Yu wrote:
bq.  > /src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java, line 
1884
bq.  > <https://reviews.apache.org/r/2141/diff/5/?file=50446#file50446line1884>
bq.  >
bq.  >     We know that w != null here, so w.getWriteNumber() should be passed 
to rollbackMemstore().

There is no need to explicitly pass in w.getWriteNumber(). All the keys that 
are hanging off the familyMaps variable have their memstoreTS set 
appropriately.  These were set in the call to applyFamilyMapToMemstore(). This 
memstoreTS will be used in the rollback methods to ensure that only keys in the 
memstore that also have a matching memstoreTS value are removed.


bq.  On 2011-10-15 11:55:54, Ted Yu wrote:
bq.  > /src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java, line 
2195
bq.  > <https://reviews.apache.org/r/2141/diff/5/?file=50446#file50446line2195>
bq.  >
bq.  >     We should have memstoreTS parameter here.

No need to pass in memstoreTS. The kvs hanging off the parameter 'familyMaps' 
already have the memstoreTS that was used to insert these keys in the memstore.


bq.  On 2011-10-15 11:55:54, Ted Yu wrote:
bq.  > /src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java, line 
2228
bq.  > <https://reviews.apache.org/r/2141/diff/5/?file=50446#file50446line2228>
bq.  >
bq.  >     I think this should be in a finally block corresponding to the try 
at line 2205.

I do not think a finally block is needed. If the getlock itself threw an 
exception, then there is no reason to do a releaseLock. Nothing else in this 
code section can throw an exception.


- Dhruba


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/2141/#review2611
-----------------------------------------------------------


On 2011-10-15 07:32:28, Dhruba Borthakur wrote:
bq.  
bq.  -----------------------------------------------------------
bq.  This is an automatically generated e-mail. To reply, visit:
bq.  https://reviews.apache.org/r/2141/
bq.  -----------------------------------------------------------
bq.  
bq.  (Updated 2011-10-15 07:32:28)
bq.  
bq.  
bq.  Review request for hbase.
bq.  
bq.  
bq.  Summary
bq.  -------
bq.  
bq.  The changes the multiPut operation so that the sync to the wal occurs 
outside the rowlock.
bq.  
bq.  This enhancement is done only to HRegion.mut(Put[]) because this is the 
only method that gets invoked from an application. The HRegion.put(Put) is used 
only by unit tests and should possibly be deprecated.
bq.  
bq.  
bq.  This addresses bug HBASE-4528.
bq.      https://issues.apache.org/jira/browse/HBASE-4528
bq.  
bq.  
bq.  Diffs
bq.  -----
bq.  
bq.    /src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java 1183585 
bq.    
/src/main/java/org/apache/hadoop/hbase/regionserver/KeyValueSkipListSet.java 
1183585 
bq.    /src/main/java/org/apache/hadoop/hbase/regionserver/MemStore.java 
1183585 
bq.    
/src/main/java/org/apache/hadoop/hbase/regionserver/ReadWriteConsistencyControl.java
 1183585 
bq.    /src/main/java/org/apache/hadoop/hbase/regionserver/Store.java 1183585 
bq.    /src/main/java/org/apache/hadoop/hbase/regionserver/StoreFlusher.java 
1183585 
bq.    /src/test/java/org/apache/hadoop/hbase/regionserver/TestParallelPut.java 
PRE-CREATION 
bq.    /src/test/java/org/apache/hadoop/hbase/regionserver/TestStore.java 
1183585 
bq.    
/src/test/java/org/apache/hadoop/hbase/regionserver/wal/TestLogRolling.java 
1183585 
bq.  
bq.  Diff: https://reviews.apache.org/r/2141/diff
bq.  
bq.  
bq.  Testing
bq.  -------
bq.  
bq.  I ran TestLogRolling over and over again, about 50 times, not failed a 
single time.
bq.  
bq.  
bq.  Thanks,
bq.  
bq.  Dhruba
bq.  
bq.


                
> The put operation can release the rowlock before sync-ing the Hlog
> ------------------------------------------------------------------
>
>                 Key: HBASE-4528
>                 URL: https://issues.apache.org/jira/browse/HBASE-4528
>             Project: HBase
>          Issue Type: Improvement
>          Components: regionserver
>            Reporter: dhruba borthakur
>            Assignee: dhruba borthakur
>             Fix For: 0.94.0
>
>         Attachments: appendNoSync5.txt, appendNoSyncPut1.txt, 
> appendNoSyncPut2.txt, appendNoSyncPut3.txt, appendNoSyncPut4.txt
>
>
> This allows for better throughput when there are hot rows. A single row 
> update improves from 100 puts/sec/server to 5000 puts/sec/server.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to