hi!
Replay the problem is very easy,I added comment to
https://issues.apache.org/jira/browse/HBASE-3872.
We change code like below to fix the fatal bug:
if (!testing) {
this.journal.add(JournalEntry.PONR);
MetaEditor.offlineParentInMeta(server.getCatalogTracker(),this.parent.getRegionInfo(),
a.getRegionInfo(), b.getRegionInfo());
}
Another bug in current split code will cause the region cann't
read & write,If List<StoreFile> hstoreFilesToSplit =
this.parent.close(false); throw IOException,Split rollback,but it will
not open store file,so client cann't read & write the region,We use
below method to fix the problem:
List<StoreFile> hstoreFilesToSplit = null;
try{
hstoreFilesToSplit = this.parent.close(false);
}
catch(IOException e){
this.journal.add(JournalEntry.CLOSED_PARENT_REGION);
throw e;
}
--
=============================
| BlueDavy |
| http://www.bluedavy.com |
=============================