HBASE-26089 Support RegionCoprocessor on CompactionServer#3499
HBASE-26089 Support RegionCoprocessor on CompactionServer#3499nyl3532016 wants to merge 5 commits intoapache:HBASE-25714from
Conversation
|
💔 -1 overall
This message was automatically generated. |
|
💔 -1 overall
This message was automatically generated. |
|
💔 -1 overall
This message was automatically generated. |
|
🎊 +1 overall
This message was automatically generated. |
|
🎊 +1 overall
This message was automatically generated. |
|
🎊 +1 overall
This message was automatically generated. |
Apache9
left a comment
There was a problem hiding this comment.
I still can not get the whole picture about how to support CP in CompactionServer.
Better have a special section in the design doc on CP support?
| @Override | ||
| public RegionEnvironment createEnvironment(RegionCoprocessor instance, int priority, int seq, | ||
| Configuration conf) { | ||
| if (coprocessorService instanceof HCompactionServer) { |
There was a problem hiding this comment.
Could we add some configs to avoid instanceof here, or we sub class RegionCoprocessorHost?
There was a problem hiding this comment.
Yes, We can introduce RegionCompactionCoprocessorHost which only used for CompactionServer
+1. When we can support CP and when we can not support it. Can you pls explain in a doc |
|
@Apache9 @anoopsjohn, I have supplement Region Coprocessor Support section in design doc, mind have a look at your convenience. |
|
💔 -1 overall
This message was automatically generated. |
1 similar comment
|
💔 -1 overall
This message was automatically generated. |
|
💔 -1 overall
This message was automatically generated. |
|
💔 -1 overall
This message was automatically generated. |
|
💔 -1 overall
This message was automatically generated. |
|
💔 -1 overall
This message was automatically generated. |
|
💔 -1 overall
This message was automatically generated. |
1 similar comment
|
💔 -1 overall
This message was automatically generated. |
|
💔 -1 overall
This message was automatically generated. |
We have two kinds of RegionCoprocessor: CoreCoprocessor or not.
1.The CoreCoprocessor(AccessController, TokenProvider, SecureBulkLoadEndpoint...), They have RegionEnvironmentForCoreCoprocessors which expose RegionServerServices. And they involve authorization, permission, etc, We don't need to support these CoreCoprocessor on compactionServer
2. Not CoreCoprocessor: They have RegionEnvironment which do not expose RegionServerServices, only offer Connection/ OnlineRegions, We can propose RegionCoprocessorService, offer Connection, but the OnlineRegions may not be supported