While reading the definitions, I think it is pretty clear that the
definition HBase is intending is somewhere under the #2 definition link.
HMaster is not a teacher (which implies learning on the "student" side),
but rather orders the RS to do a task.
I think master in this context is still worth changing to coordinator since
in my mind this is actually a more clear definition of what HMaster does.

On Mon, Jun 22, 2020 at 2:09 PM Geoffrey Jacoby <gjac...@apache.org> wrote:

> For most of the proposals (slave -> worker, blacklist -> denylist,
> whitelist-> allowlist), I'm +1 (nonbinding). Denylist and acceptlist even
> have the advantage of being clearer than the terms they're replacing.
>
> However, I'm not convinced about changing "master" to "coordinator", or
> something similar. Unlike "slave", which is negative in any context,
> "master" has many definitions, including some common ones which do not
> appear problematic. See https://www.merriam-webster.com/dictionary/master
> for
> examples. In particular, the progression of an artisan was from
> "apprentice" to "journeyman" to "master". A master smith, carpenter, or
> artist would run a shop managing lots of workers and apprentices who would
> hope to become masters of their own someday. So "master" and "worker" can
> still go together.
>
> Since it's the least problematic term, and by far the hardest term to
> change (both within HBase and with effects on downstream projects such as
> Ambari), I'm -0 (nonbinding) on changing "master".
>
> Geoffrey
>
> On Mon, Jun 22, 2020 at 1:32 PM Rushabh Shah
> <rushabh.s...@salesforce.com.invalid> wrote:
>
> > +1 to renaming.
> >
> >
> > Rushabh Shah
> >
> >    - Software Engineering SMTS | Salesforce
> >    -
> >       - Mobile: 213 422 9052
> >
> >
> >
> > On Mon, Jun 22, 2020 at 1:18 PM Josh Elser <els...@apache.org> wrote:
> >
> > > +1
> > >
> > > On 6/22/20 4:03 PM, Sean Busbey wrote:
> > > > We should change our use of these terms. We can be equally or more
> > clear
> > > in
> > > > what we are trying to convey where they are present.
> > > >
> > > > That they have been used historically is only useful if the advantage
> > we
> > > > gain from using them through that shared context outweighs the
> > potential
> > > > friction they add. They make me personally less enthusiastic about
> > > > contributing. That's enough friction for me to advocate removing
> them.
> > > >
> > > > AFAICT reworking our replication stuff in terms of "active" and
> > "passive"
> > > > clusters did not result in a big spike of folks asking new questions
> > > about
> > > > where authority for state was.
> > > >
> > > > On Mon, Jun 22, 2020, 13:39 Andrew Purtell <apurt...@apache.org>
> > wrote:
> > > >
> > > >> In response to renewed attention at the Foundation toward addressing
> > > >> culturally problematic language and terms often used in technical
> > > >> documentation and discussion, several projects have begun
> discussions,
> > > or
> > > >> made proposals, or started work along these lines.
> > > >>
> > > >> The HBase PMC began its own discussion on private@ on June 9, 2020
> > > with an
> > > >> observation of this activity and this suggestion:
> > > >>
> > > >> There is a renewed push back against classic technology industry
> terms
> > > that
> > > >> have negative modern connotations.
> > > >>
> > > >> In the case of HBase, the following substitutions might be proposed:
> > > >>
> > > >> - Coordinator instead of master
> > > >>
> > > >> - Worker instead of slave
> > > >>
> > > >> Recommendations for these additional substitutions also come up in
> > this
> > > >> type of discussion:
> > > >>
> > > >> - Accept list instead of white list
> > > >>
> > > >> - Deny list instead of black list
> > > >>
> > > >> Unfortunately we have Master all over our code base, baked into
> > various
> > > >> APIs and configuration variable names, so for us the necessary
> changes
> > > >> amount to a new major release and deprecation cycle. It could well
> be
> > > worth
> > > >> it in the long run. We exist only as long as we draw a willing and
> > > >> sufficient contributor community. It also wouldn’t be great to have
> an
> > > >> activist fork appear somewhere, even if unlikely to be successful.
> > > >>
> > > >> Relevant JIRAs are:
> > > >>
> > > >>     - HBASE-12677 <
> https://issues.apache.org/jira/browse/HBASE-12677
> > >:
> > > >>     Update replication docs to clarify terminology
> > > >>     - HBASE-13852 <
> https://issues.apache.org/jira/browse/HBASE-13852
> > >:
> > > >>     Replace master-slave terminology in book, site, and javadoc
> with a
> > > more
> > > >>     modern vocabulary
> > > >>     - HBASE-24576 <
> https://issues.apache.org/jira/browse/HBASE-24576
> > >:
> > > >>     Changing "whitelist" and "blacklist" in our docs and project
> > > >>
> > > >> In response to this proposal, a member of the PMC asked if the term
> > > >> 'master' used by itself would be fine, because we only have use of
> > > 'slave'
> > > >> in replication documentation and that is easily addressed. In
> response
> > > to
> > > >> this question, others on the PMC suggested that even if only
> 'master'
> > is
> > > >> used, in this context it is still a problem.
> > > >>
> > > >> For folks who are surprised or lacking context on the details of
> this
> > > >> discussion, one PMC member offered a link to this draft RFC as
> > > background:
> > > >> https://tools.ietf.org/id/draft-knodel-terminology-00.html
> > > >>
> > > >> There was general support for removing the term "master" / "hmaster"
> > > from
> > > >> our code base and using the terms "coordinator" or "leader" instead.
> > In
> > > the
> > > >> context of replication, "worker" makes less sense and perhaps
> > > "destination"
> > > >> or "follower" would be more appropriate terms.
> > > >>
> > > >> One PMC member's thoughts on language and non-native English
> speakers
> > is
> > > >> worth including in its entirety:
> > > >>
> > > >> While words like blacklist/whitelist/slave clearly have those
> negative
> > > >> references, word master might not have the same impact for non
> native
> > > >> English speakers like myself where the literal translation to my
> > mother
> > > >> tongue does not have this same bad connotation. Replacing all
> > references
> > > >> for word *master *on our docs/codebase is a huge effort, I guess
> such
> > a
> > > >> decision would be more suitable for native English speakers folks,
> and
> > > >> maybe we should consider the opinion of contributors from that
> ethinic
> > > >> minority as well?
> > > >>
> > > >> These are good questions for public discussion.
> > > >>
> > > >> We have a consensus in the PMC, at this time, that is supportive of
> > > making
> > > >> the above discussed terminology changes. However, we also have
> > concerns
> > > >> about what it would take to accomplish meaningful changes. Several
> on
> > > the
> > > >> PMC offered support in the form of cycles to review pull requests
> and
> > > >> patches, and two PMC members offered  personal bandwidth for
> creating
> > > and
> > > >> releasing new code lines as needed to complete a deprecation cycle.
> > > >>
> > > >> Unfortunately, the terms "master" and "hmaster" appear throughout
> our
> > > code
> > > >> base in class names, user facing API subject to our project
> > > compatibility
> > > >> guidelines, and configuration variable names, which are also
> > implicated
> > > by
> > > >> compatibility guidelines given the impact of changes to operators
> and
> > > >> operations. The changes being discussed are not backwards compatible
> > > >> changes and cannot be executed with swiftness while simultaneously
> > > >> preserving compatibility. There must be a deprecation cycle. First,
> we
> > > must
> > > >> tag all implicated public API and configuration variables as
> > deprecated,
> > > >> and release HBase 3 with these deprecations in place. Then, we must
> > > >> undertake rename and removal as appropriate, and release the result
> as
> > > >> HBase 4.
> > > >>
> > > >> One PMC member raised a question in this context included here in
> > > entirety:
> > > >>
> > > >> Are we willing to commit to rolling through the major versions at a
> > pace
> > > >> that's necessary to make this transition as swift as
> > > >> reasonably possible?
> > > >>
> > > >> This is a question for all of us. For the PMC, who would supervise
> the
> > > >> effort, perhaps contribute to it, and certainly vote on the release
> > > >> candidates. For contributors and potential contributors, who would
> > > provide
> > > >> the necessary patches. For committers, who would be required to
> review
> > > and
> > > >> commit the relevant changes.
> > > >>
> > > >> Although there has been some initial discussion, there is no
> singular
> > > >> proposal, or plan, or set of decisions made at this time. Wrestling
> > with
> > > >> this concern and the competing concerns involved with addressing it
> > > >> (motivation for change versus motivation for compatibility) is a
> task
> > > for
> > > >> all of us to undertake (or not) in public on dev@ and user@.
> > > >>
> > > >
> > >
> >
>

Reply via email to