hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrew Purtell <apurt...@apache.org>
Subject Re: Does compatibility between versions also mean binary compatibility?
Date Thu, 04 Apr 2013 22:21:05 GMT
"Compatible" implies both to my understanding of the term, unless

I don't think we should qualify it. This looks like a regression to me.

On Thu, Apr 4, 2013 at 1:20 PM, Jean-Daniel Cryans <jdcryans@apache.org>wrote:

> tl;dr should two compatible versions be considered both wire and
> binary compatible or just the former?
> Hey devs,
> 0.92 is compatible with 0.94, meaning that you can run a client for
> either against the other and you can roll restart from 0.92 to 0.94.
> What about binary compatibility? Meaning, can you run user code
> compiled against 0.92 with 0.94's jars?
> Unfortunately, the answer is "no" in this case if you invoke setters
> on HColumnDescriptor as you'll get:
> java.lang.NoSuchMethodError:
> org.apache.hadoop.hbase.HColumnDescriptor.setMaxVersions(I)V
> HBASE-5357 "Use builder pattern in HColumnDescriptor" changed the
> method signatures by changing "void" to "HColumnDescriptor" so it' not
> the same methods anymore.
> I don't think we really had talks about binary compatibility before so
> this is why I'm raising it up now.
> Should "compatible" versions be just wire compatible or both wire and
> binary compatible? The latter means we need new tests. I think it
> should be both.
> What do you guys think?
> J-D

Best regards,

   - Andy

Problems worthy of attack prove their worth by hitting back. - Piet Hein
(via Tom White)

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message