But yes, chances are, someone could object.
On Wed, 17 Feb 2021 at 10:07 AM, Viraj Jasani <[email protected]> wrote: > Thanks Andrew! That’s it, HBASE-25249 is the only refactoring that broke > compat and since HStore is IA.Private, I could not argue from HBase side to > bring methods back in HStore. If we can do it in 2.4.2, that would be great > and we can skip 2.4.1 support i think. > WDYT Istvan? > > > On Wed, 17 Feb 2021 at 3:28 AM, Andrew Purtell <[email protected]> > wrote: > >> Hmm... I see. This thread is probably about PHOENIX-6359, so the change >> was >> HBASE-25249. >> >> The methods moved from HStore to StoreUtils can be added back to HStore as >> compatibility methods in branch-2.4. >> >> Is there more? >> >> >> On Tue, Feb 16, 2021 at 1:34 PM Andrew Purtell <[email protected]> >> wrote: >> >> > > While supporting a new HBase patch release version (e.g 2.4.1), if it >> > turns out to be incompatible with existing HBase minor release profile >> (e.g >> > profile 2.4), we might have to consider some extra steps. >> > >> > What happened? If we broke something in a public or limited private >> > interface between 2.4.0 and 2.4.1, we can fix it, and you'll be good >> again >> > in 2.4.2 and forward. You could blacklist 2.4.1 in your build of the 2.4 >> > compat module using the enforcer plugin if you like. >> > >> > If the break was a private interface, but it is a simple issue, like >> > removal of a constant field, or removal of a method that's easy to put >> back >> > for sake of compatibility, we can probably just put it back. By >> 'probably' >> > I mean I would not be opposed to it but there's always the chance that >> > someone would object. >> > >> > >> > On Tue, Feb 16, 2021 at 4:07 AM Viraj Jasani <[email protected]> >> wrote: >> > >> >> Hi, >> >> >> >> While supporting a new HBase patch release version (e.g 2.4.1), if it >> >> turns >> >> out to be incompatible with existing HBase minor release profile (e.g >> >> profile 2.4), we might have to consider some extra steps. >> >> >> >> Proposals: >> >> 1. Add a new profile for each compat module >> >> 2. Profile with HBase minor version always support latest supported >> HBase >> >> compat module and HBase patch release (e.g in our case, profile 2.4 >> uses >> >> compat-module 2.4.1, and profile 2.4.0 uses compat module 2.4.0) >> >> 3. We run jenkins tests only for latest minor release profiles (e.g >> with >> >> profiles 2.4 and 2.4.0 in place, we run tests for profile 2.4 only, >> which >> >> points to latest version 2.4.1) >> >> >> >> HBase profile to build compatibility examples: >> >> >> >> *Profile for HBase minor version:* >> >> 2.1 (supports all 2.1.x releases), >> >> 2.3 (supports all 2.3.x releases), >> >> 2.4 (if we have profile 2.4.0, 2.4 profile supports 2.4.1+ releases and >> >> not >> >> 2.4.0) >> >> >> >> *Profile for HBase patch version:* >> >> 2.4.0 (supports only 2.4.0 release) >> >> >> >> Thoughts? >> >> >> > >> > >> > -- >> > Best regards, >> > Andrew >> > >> > Words like orphans lost among the crosstalk, meaning torn from truth's >> > decrepit hands >> > - A23, Crosstalk >> > >> >> >> -- >> Best regards, >> Andrew >> >> Words like orphans lost among the crosstalk, meaning torn from truth's >> decrepit hands >> - A23, Crosstalk >> >
