You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by li...@apache.org on 2012/10/30 07:13:24 UTC
svn commit: r1403625 - in /hbase/branches/0.89-fb/src:
main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
test/java/org/apache/hadoop/hbase/regionserver/wal/TestHLogFiltering.java
Author: liyin
Date: Tue Oct 30 06:13:24 2012
New Revision: 1403625
URL: http://svn.apache.org/viewvc?rev=1403625&view=rev
Log:
[0.89-fb] [master] Update lastFlushedSequenceId again in HRegion
Author: avf
Summary:
Looks like the fix for HBASE-6059 (rev 28942) accidentally removed
the code that updated lastFlushedSequenceId upon every memstore flush,
leading to failures in TestHLogFiltering
This change puts the code back into place and also makes the test more
robust by not assuming that each one of the regions lives on a
distinct server.
Test Plan:
Run TestHLogFiltering and mrunit
Revert Plan:
Reviewers: kannan, lipi, aaiyer
Reviewed By: kannan
CC: hbase-eng@
Differential Revision: https://phabricator.fb.com/D610277
Blame Revision: 28942
Task ID: 1783053
Modified:
hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
hbase/branches/0.89-fb/src/test/java/org/apache/hadoop/hbase/regionserver/wal/TestHLogFiltering.java
Modified: hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java?rev=1403625&r1=1403624&r2=1403625&view=diff
==============================================================================
--- hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java (original)
+++ hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java Tue Oct 30 06:13:24 2012
@@ -1540,6 +1540,12 @@ public class HRegion implements HeapSize
this.getRegionInfo().isMetaRegion());
}
+ // Update the last flushed sequence id for region
+ if (this.regionServer != null) {
+ this.regionServer.getServerInfo().setFlushedSequenceIdForRegion(
+ getRegionName(),
+ completeSequenceId);
+ }
// C. Finally notify anyone waiting on memstore to clear:
// e.g. checkResources().
synchronized (this) {
Modified: hbase/branches/0.89-fb/src/test/java/org/apache/hadoop/hbase/regionserver/wal/TestHLogFiltering.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.89-fb/src/test/java/org/apache/hadoop/hbase/regionserver/wal/TestHLogFiltering.java?rev=1403625&r1=1403624&r2=1403625&view=diff
==============================================================================
--- hbase/branches/0.89-fb/src/test/java/org/apache/hadoop/hbase/regionserver/wal/TestHLogFiltering.java (original)
+++ hbase/branches/0.89-fb/src/test/java/org/apache/hadoop/hbase/regionserver/wal/TestHLogFiltering.java Tue Oct 30 06:13:24 2012
@@ -108,9 +108,11 @@ public class TestHLogFiltering {
new TreeMap<byte[], Long>(Bytes.BYTES_COMPARATOR);
for (int i = 0; i < NUM_RS; ++i) {
SortedMap<byte[], Long> flushedSequenceIds = flushAllRegions(i);
- assertTrue(flushedSequenceIds.size() > 0);
- allFlushedSequenceIds.putAll(flushedSequenceIds);
+ if (flushedSequenceIds.size() > 0) {
+ allFlushedSequenceIds.putAll(flushedSequenceIds);
+ }
}
+ assertTrue(allFlushedSequenceIds.size() > 0);
Thread.sleep(10000);
HMasterRegionInterface master = TEST_UTIL.getMiniHBaseCluster().getMaster();
for (int i = 0; i < NUM_RS; ++i) {