Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
HBase, mail # dev - Can master initialization be done after postStartMaster is called?

Copy link to this message
Re: Can master initialization be done after postStartMaster is called?
Gary Helmling 2012-03-19, 18:07
For the specific AccessController case, I think it would still work to
move initialized = true after the call to the postStartMaster() hook
in finishInitialization().  But moving this would prevent
MasterObservers from calling any operation that winds up calling
HMaster.checkInitialized().  This may be fine, just want to be sure we
clearly identify the impact.
On Mon, Mar 19, 2012 at 10:30 AM, Gary Helmling <[EMAIL PROTECTED]> wrote:
> Hi Ram,
> The MasterObserver.postStartMaster() hook was added after we ran into
> a case where we wanted a single initialization point as soon as the
> active master was up for security implementation.  In AccessController
> we use it to create the "_acl_" table if it doesn't exist.  So in this
> case it made sense to wait until the active master was fully up.
> This is admittedly a pretty specific case, so it may be worth
> rethinking some things as we generalize it.  If you're looking to have
> a coprocessor perform some setup work required _before_ the active
> master is available, maybe we should also look at adding a
> MasterObserver.preStartMaster() hook?
> Can you describe more how you're looking at applying this so we can
> all understand the interactions?
> --gh
> On Mon, Mar 19, 2012 at 6:05 AM, Ramkrishna.S.Vasudevan
> <[EMAIL PROTECTED]> wrote:
>> Hi devs
>> Currently we set HMaster initialized=true before calling postStartMaster.
>> But if thro coprocessor we add some more code for some additional
>> initialization or some cleanup work the master gets initialized even before
>> that?
>> Can we initialize the master after postStartMaster?  If it is ok I can file
>> a JIRA for the same?
>> Regards
>> Ram