Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
HBase >> mail # dev >> Does compatibility between versions also mean binary compatibility?

Copy link to this message
Re: Does compatibility between versions also mean binary compatibility?
"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 <[EMAIL PROTECTED]>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)