[
https://issues.apache.org/jira/browse/HBASE-9489?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13831823#comment-13831823
]
Ted Yu commented on HBASE-9489:
-------------------------------
nit:
{code}
+ public void
preRollBackMerge(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
+ HRegion regionA, HRegion regionB) throws IOException { }
+
+ @Override
+ public void
preMergeAfterPONR(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
+ HRegion regionA, HRegion regionB, HRegion mergedRegion) throws
IOException { }
+
+ @Override
+ public void
preMergeBeforePONR(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
+ HRegion regionA, HRegion regionB, List<Mutation> metaEntries) throws
IOException { }
+
+ @Override
+ public void
postRollBackMerge(ObserverContext<RegionServerCoprocessorEnvironment> ctx,
+ HRegion regionA, HRegion regionB) throws IOException { }
{code}
Grouping the XXRollBackMerge together would increase readability.
{code}
+ * This will be called after PONR step as part of regions merge transaction
Calling
+ * {@link org.apache.hadoop.hbase.coprocessor.ObserverContext#bypass()} has
no effect in this
{code}
A period is missing before 'Calling'. I think wrapping Calling to next line
would make the javadoc more readable.
{code}
+ if (rsCoprocessorHost == null) {
+ rsCoprocessorHost = server != null ? ((HRegionServer)
server).getCoprocessorHost() : null;
+ }
HRegion mergedRegion = createMergedRegion(server, services);
+ if (rsCoprocessorHost != null) {
+ rsCoprocessorHost.preMergeAfterPONR(this.region_a, this.region_b,
mergedRegion);
{code}
rsCoprocessorHost can be created after the call to createMergedRegion().
{code}
+ LOG.error("Row key of mutation from coprossor is not parsable as
region name."
+ + "Mutations from coprocessor should only for hbase:meta table.");
{code}
Typo: coprossor
'should only for' -> 'should only be for'
Please include e in the error message.
{code}
+ mergeRegionsAndputMetaEntries(server.getCatalogTracker(),
mergedRegion.getRegionInfo(), region_a
{code}
Make the p in 'put' uppercase.
For CPRegionServerObserver in the test, I see some duplicate code in
preMergeBeforePONR(). Can you reuse the code in mergeRegionsAndputMetaEntries()
?
> Add cp hooks in online merge before and after setting PONR
> ----------------------------------------------------------
>
> Key: HBASE-9489
> URL: https://issues.apache.org/jira/browse/HBASE-9489
> Project: HBase
> Issue Type: Sub-task
> Reporter: rajeshbabu
> Assignee: rajeshbabu
> Attachments: HBASE-9489.patch, HBASE-9489_v2.patch
>
>
> As we need to merge index region along with user region we need the hooks
> before and after setting PONR in region merge transtion.
--
This message was sent by Atlassian JIRA
(v6.1#6144)