-RE: Avro cross-version serialization format compatibility
Scott Arthur 2013-02-27, 17:48
Fantastic. Thank you!
From: Doug Cutting [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, February 27, 2013 12:47 PM
To: [EMAIL PROTECTED]
Subject: Re: Avro cross-version serialization format compatibility
I believe there have been no incompatible changes in the base object serialization format or schema language since Avro 1.0. There was one incompatible change to the file format, from release 1.2 to 1.3. The
1.2 file format is still readable by post-1.2 releases, but the 1.3+ file format is not readable by pre-1.3 releases.
The format of Avro release numbers are major.minor.bugfix. Data formats should only change in major releases. Minor-releases can have incompatible API changes but no format changes. Bugfix releases may include back-compatible API changes but no incompatible API changes and no format changes. In particular, new features may be introduced in bugfix releases.
The change to the file format in 1.3 was an exception to the above policy, the only exception to date.
So, to answer your question: Yes, an object serialized with 1.3 will be readable by 1.7.4 and vice-versa.
On Wed, Feb 27, 2013 at 8:26 AM, Scott Arthur <[EMAIL PROTECTED]> wrote:
> I have a question about serialization compatibility across Avro versions.
> I’m looking to deploy a product across my organization that uses Avro
> to package messages. Existing products in the organization already
> have a customized Avro library a few versions old. I’ve been trying
> to determine if, for example, a message serialized with Avro 1.3.0
> will be deserializeable with version 1.7.4 if they use the same schema definition.
> I found the Change Log page, and it looks like the last version where
> there were “incompatible changes” outside the API was version 1.3.0.
> However, I didn’t find any resource on the Avro pages or the net that
> specifically went through changes to the serialization format for different Avro releases.
> So, is what I’m asking possible? Is there any resource where I can
> find information about breaking changes between Avro versions?
> Thanks in advance,
> Scott Arthur