That doesn't look right if you exclude coprocessors (which we always should). If I upgrade a 0.92 client and it's application after a recompile on one node to 0.94 but have other client or server nodes still at 0.92, those other nodes won't then encounter a Java linkage problem.
On Wed, Sep 4, 2013 at 2:00 PM, lars hofhansl <[email protected]> wrote: > Shrijeet Paliwal just pointed me to this section in the HBase bookhttp:// > hbase.apache.org/upgrading.html#upgrade0.94 (thanks Shrijeet): > > > ---- > 1.3. Upgrading from 0.92.x to 0.94.x > We used to think that 0.92 and 0.94 were interface compatible and that you > can do a rolling upgrade between these versions but then we figured that > HBASE-5357 Use builder pattern in HColumnDescriptor changed method > signatures so rather than return void they instead return > HColumnDescriptor. This will throw > java.lang.NoSuchMethodError: > org.apache.hadoop.hbase.HColumnDescriptor.setMaxVersions(I)V > .... so 0.92 and 0.94 are NOT compatible. You cannot do a rolling upgrade > between them. > ---- > > > Is that statement actually correct? The issue here is binary code > compatibility, which we indeed do not support, but which does not impede > rolling upgrades between versions (as long as we're wire compatible between > releases, which we are). > > -- Lars > > -- Best regards, - Andy Problems worthy of attack prove their worth by hitting back. - Piet Hein (via Tom White)
