Another factor is documentation. It's hard enough to document new features
and behavior as it is, but we'd have to explain that for the *same*
release, it depends on which version of HBase you're using to know how to
correctly configure local indexes - sometimes you need modify
the hbase-site.xml on the master and sometimes you wouldn't.

It's one thing if we're EOLing these branches, but I don't think we're at
that point yet.

On Wednesday, June 8, 2016, Samarth Jain <samarth.j...@gmail.com> wrote:

> Considering the footprint of PHOENIX-1734, it would make development
> onerous if the feature is merged only to 4.x-HBase-1.2. There is already an
> overhead of having to merge patches in 4 branches. It also has the
> potential of increasing the likelihood of bugs being introduced arising out
> of having to handle many more merge conflicts.
>
> Just my 2 cents :)
>
>
>
> On Tue, Jun 7, 2016 at 8:42 AM, James Taylor <jamestay...@apache.org
> <javascript:;>> wrote:
>
> > I don't understand why HBASE-15600 is needed if we're ok with the local
> > index updates not being transactional with older versions of HBase. Why
> > can't we do the htable.batch() call in ParallelWriterIndexCommitter as we
> > do now? The row keys are different. If this is an issue, then we could
> just
> > enqueue the mutations and let them be submitted outside the row lock. We
> > don't need to have the row lock.
> >
> > Seems to me that it could be made to work without the branches diverging
> so
> > radically.
> >
> > Thanks,
> > James
> >
> > On Tuesday, June 7, 2016, rajeshb...@apache.org <javascript:;> <
> chrajeshbab...@gmail.com <javascript:;>>
> > wrote:
> >
> > > Hi Team,
> > >
> > > As you know prior to PHOENIX-1734 we are storing all  local index data
> in
> > > separate table and colocate data and index regions. To ensure proper
> > > colocation we need customer balancer, custom split and merge logic
> still
> > > these will not ensure 100% colocation. That's why we started working
> > > PHOENIX-1734 to store local index data in separate column families in
> the
> > > same table to ensure 100% colocation.
> > >
> > > As part of PHOENIX-1734 we need to write local index udpates to same
> > region
> > > in preBatchMutate. When I am working with master branch(The HBase
> version
> > > is 1.2.x) it went smooth and I continued the development and ensure new
> > > implementation of local index works properly and committed the patch to
> > > master branch as well.
> > >
> > > But when I started porting it to other branches(HBase versions less
> than
> > > 1.2) I realized that write to same region is in preBatchMutate is not
> > > allowed by HBase versions less than 1.2. There is a dependency of
> > > HBASE-15600 to make the new local index implementation work properly
> for
> > > versions less than 1.2. So I am not able to port it to other branches.
> I
> > > will complete it once the next HBase point releases have HBASE-15600.
> > >
> > > Now code in master branch is not in sync with other branches but the
> > local
> > > indexing feature is much more stable in master branch after
> PHOENIX-1734
> > so
> > > I think it would be better to have PHOENIX-1734 in master branch even
> > > porting it to other branches might delay till upcoming HBase releases
> > > available.
> > >
> > > Wdyt?
> > >
> > > Thanks,
> > > Rajeshbabu.
> > >
> >
>

Reply via email to