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

jirapos...@reviews.apache.org commented on HBASE-4645:
------------------------------------------------------


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


Amit-- thanks for getting a fix out soon. Comments inline. As you mentioned, I 
am assuming you are planning on adding a test as part of the commit itself. 


src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
<https://reviews.apache.org/r/2524/#comment6180>

    Comment: 
    
    Get minimum seqid across all store
    
    should read:
    
    Get minimum of the max seq id for each store.



src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
<https://reviews.apache.org/r/2524/#comment6181>

    trailing white space



src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
<https://reviews.apache.org/r/2524/#comment6183>

    yes, makes sense as a future optimization.



src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
<https://reviews.apache.org/r/2524/#comment6184>

    as Madhu pointed out in a later email, if now edits were were there for 
this region, then this function will simply return minSeqId back as its return 
value.
    
    Like before, we should also track the maxSeqId for all stores in the above 
loop.
    
    And, then change this line to something like:
    
    maxSeqId = Math.max(maxSeqId, replayRecoveredEditsIfAny(...));
    
    


- Kannan


On 2011-10-21 15:01:11, Amitanand Aiyer wrote:
bq.  
bq.  -----------------------------------------------------------
bq.  This is an automatically generated e-mail. To reply, visit:
bq.  https://reviews.apache.org/r/2524/
bq.  -----------------------------------------------------------
bq.  
bq.  (Updated 2011-10-21 15:01:11)
bq.  
bq.  
bq.  Review request for Ted Yu, Michael Stack, Jonathan Gray, Lars Hofhansl, 
Amitanand Aiyer, Kannan Muthukkaruppan, Karthik Ranganathan, and Nicolas 
Spiegelberg.
bq.  
bq.  
bq.  Summary
bq.  -------
bq.  
bq.  There is a data loss happening (for some of the column families) when we 
do the replay logs.
bq.  
bq.  The bug seems to be from the fact that during replay-logs we only choose 
to replay
bq.  the logs from the maximumSequenceID across ALL the stores. This is wrong. 
If a
bq.  column family is ahead of others (because the crash happened before all 
the column
bq.  families were flushed), then we lose data for the column families that 
have not yet
bq.  caught up.
bq.  
bq.  The correct logic for replay should begin the replay from the minimum 
across the
bq.  maximum in each store.
bq.  
bq.  
bq.  This addresses bug hbase-4645.
bq.      https://issues.apache.org/jira/browse/hbase-4645
bq.  
bq.  
bq.  Diffs
bq.  -----
bq.  
bq.    src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java 8c32839 
bq.  
bq.  Diff: https://reviews.apache.org/r/2524/diff
bq.  
bq.  
bq.  Testing
bq.  -------
bq.  
bq.  Initial patch. v1.
bq.  
bq.  mvn test (running).
bq.  
bq.  TBD: add a test case to repro the issue and make sure it fixes.
bq.  
bq.  
bq.  Thanks,
bq.  
bq.  Amitanand
bq.  
bq.


                
> Edits Log recovery losing data across column families
> -----------------------------------------------------
>
>                 Key: HBASE-4645
>                 URL: https://issues.apache.org/jira/browse/HBASE-4645
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.89.20100924, 0.92.0
>            Reporter: Amitanand Aiyer
>            Assignee: Amitanand Aiyer
>
> There is a data loss happening (for some of the column families) when we do 
> the replay logs.
> The bug seems to be from the fact that during replay-logs we only choose to 
> replay
> the logs from the maximumSequenceID across *ALL* the stores. This is wrong. 
> If a
> column family is ahead of others (because the crash happened before all the 
> column
> families were flushed), then we lose data for the column families that have 
> not yet
> caught up.
> The correct logic for replay should begin the replay from the minimum across 
> the
> maximum in each store. 

--
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