Jon,

I find your "ship has sailed here" phrasing a bit odd because it was your 
changes to KV comparators that kicked off the original discussion on binary 
compatibility and, then, an agreement that binary API compat not be a criteria 
for 0.98 releases. Otherwise it would have been. :-)

> On Feb 4, 2014, at 2:46 PM, Jonathan Hsieh <j...@cloudera.com> wrote:
> 
> Andrew,
> 
> I basically agree with lars here -- the ship has sailed here. However, there 
> are some patches that restored binary compat in places committed to 0.98 
> already.  (IMO actually this would be an argument to fork earlier in the 
> future)
> 
> I have some comments on HBASE-10460.  Specifically it is on a class that is 
> @InterfaceAudience.Public and @InterfaceStability.Stable -- and I think they 
> fix there should get into 0.98.
> 
> Jon.
> 
> 
> 
>> On Mon, Feb 3, 2014 at 9:46 PM, lars hofhansl <la...@apache.org> wrote:
>> My $0.02...
>> 
>> Wire (client-server and server-server) compatibility is a must have.
>> Binary compatibility should be a best effort. I.e. we shouldn't go out of 
>> our way to break things, but if we want to clean up an API we should do that.
>> So much for 0.98.
>> 
>> Going forward...
>> 
>> Once we go past version 1.0 and to semantic versioning this will need a 
>> bigger discussion.
>> 
>> As discussed in the past there are at least four angles here:
>> 1. Client-server wire compatibility
>> 2. Server-server wire compatibility
>> 3. Client binary compatibility
>> 4. Server interface binary compatibility (for coprocessors)
>> 
>> #4 is surprisingly important as it basically turns into a #1 problem when a 
>> project ships with coprocessors.
>> 
>> Then we need to define compatibility rules for major/minor/patch versions.
>> In the last PMC meeting we had a start on this. We need to finish the 
>> details.
>> 
>> -- Lars
>> 
>> 
>> ----- Original Message -----
>> From: Andrew Purtell <apurt...@apache.org>
>> To: "dev@hbase.apache.org" <dev@hbase.apache.org>
>> Cc:
>> Sent: Monday, February 3, 2014 3:08 PM
>> Subject: Binary API compatibility is not a requirement for any 0.98 release 
>> candidate
>> 
>> If you would like to change this consensus now, we can do so, and add it as
>> a release criterion. That would require undoing the comparator cleanups and
>> related breaking changes that went in as HBASE-9245 and subtasks. So let's
>> not. I am -1 on making a change like this late in the day, after we have
>> already had two RCs and I am hoping to get a third out tomorrow.
>> 
>> --
>> Best regards,
>> 
>>    - Andy
>> 
>> Problems worthy of attack prove their worth by hitting back. - Piet Hein
>> (via Tom White)
> 
> 
> 
> -- 
> // Jonathan Hsieh (shay)
> // HBase Tech Lead, Software Engineer, Cloudera
> // j...@cloudera.com // @jmhsieh
>  

Reply via email to