Apache9 commented on pull request #2274:
URL: https://github.com/apache/hbase/pull/2274#issuecomment-677266826


   > ```
   > Could this really solve the problem?
   > ```
   > 
   > Problem is hard to reproduce.
   > 
   > Reasoning, this patch shoud reduce likelihood of our encountering this 
static loading lockup.
   > 
   > ```
   > ....That is, just move the UNDEFINED field to RegionInfoBuilder. I know 
this breaks the IA.Public rule, so maybe we just leave 2.3.x as is, since this 
is not easy to reproduce and does not cause any data loss. Let's make it clean 
on 2.4+.
   > ```
   > 
   > Yeah, breaks the IA.Public -- hence this patch which does not break 
IA.Public.
   > 
   > Following the rules, we can't move UNDEFINED till 4.0 -- not 2.4. A server 
hung in this manner where all priority handlers are jammed up but heartbeating, 
etc. keeps 'working' broke the cluster; the operator ended up doing cluster 
restart... Disruptive.
   > 
   > Would like to land a workaround/fix for 2.3+.
   > 
   > Perhaps you prefer the first patch which just deprecated UNDEFINED setting 
it to null so as not to reference RegionInfoBuilder?
   > 
   > @Apache9
   > 
   > Thanks
   
   Setting it to null does not make real difference with removing it? If users 
use it, their code will be in trouble...
   
   To me, I think this is a mistake, it should not be placed in RegionInfo, or 
at least should be marked as IA.Private? We have lots of IA.Private fields and 
methods in RegionInfo.
   
   So maybe, we deprecated the field on 2.3, and also marked it as IA.Private, 
to tell users you should not use it directly. This patch will be committed to 
all branches.
   
   And file another issue, to completely move this field from RegionInfo to 
RegionInfoBuilder, and this patch will be committed to branches other than 2.3. 
For me I prefer we commit this to 2.4+, but I'm also fine with committing to 
3.x only, or even 4.x, since this problem is really not easy to reproduce.
   
   Thanks.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to