Too many paralell discussions in this email thread… changing title…
On Jul 11, 2013, at 12:14 PM, Sanne Grinovero <sanne(a)infinispan.org> wrote:
Thanks Galder for opening the JIRA; but I wonder if we actually have
a way out.
5.3.0.Final was released already, so if you want to "fix" its format
to be compatible with 5.2 in a minor patch version - probably 5.3.1 -
then that would break compatibility with 5.3.0 which is maybe even
worse.
Hold on till we've figured out the cause… and if you're a rigt, a potential fix
could be investigated to make 5.3.0 and 5.3.1 compatible...
Probably the lesser evil is to clearly warn about this and suggest
an
external dump; this way we also save some work as we could drop the
existing CacheStore implementation and move on.. the saved dev time
could be spent on tests to make sure this problem won't occur again as
it clearly is a major problem if it slips into a released version
without being spotted on time.
When we started investigating rolling upgrades we played with the idea of having a
serialized format that's readable between different versions and we created [1]. I
actually created some branches to investigate the feasibility of adding such tests: [2, 3,
4, 5, 6], and of course found incompatibilities. This idea was abandoned and instead we
decided on a Hot Rod based mechanism to transfer the data from one cluster to the other.
Such tests could be added, but there needs to be a limit on how far we want to be
backwards compatible with. IOW, trying for Infinispan 5.3 to be backwards compatible with
4.0 would be a lot of work. The minimum req would possibly be that we're backwards
compatible between minors.
This is something we can try to start imposing from 6.0 onwards. It's a good moment to
start doing it, at the beginning of a major release.
[1]
https://issues.jboss.org/browse/ISPN-2034
[2]
https://github.com/galderz/infinispan/tree/archive/t_2034_40x
[3]
https://github.com/galderz/infinispan/tree/archive/t_2034_41x
[4]
https://github.com/galderz/infinispan/tree/archive/t_2034_42x
[5]
https://github.com/galderz/infinispan/tree/archive/t_2034_50x
[6]
https://github.com/galderz/infinispan/tree/archive/t_2034_51x
Cheers,
Sanne
--
Galder Zamarreño
galder(a)redhat.com
twitter.com/galderz
Project Lead, Escalante
http://escalante.io
Engineer, Infinispan
http://infinispan.org