Upgrade from redisson 3.14 to 3.45 - Default Codecs not compatible #6520
Unanswered
luisalvatierra
asked this question in
Q&A
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hi Team,
We are working on upgrading the Redisson client from version 3.14 to 3.45 but encountered an error when reading existing data:
java.lang.ClassCastException: class java.lang.Float cannot be cast to class java.lang.String
We realized that version 3.14 uses the Marshalling codec, while version 3.45 uses Kryo5Codec by default. As a result, existing data in Redis (serialized with the Marshalling codec) cannot be read with version 3.45, which uses Kryo5Codec. We are exploring options to upgrade without impacting existing data:
Set up the Marshalling codec for Redisson 3.45:
This option concerns us because the Marshalling codec is deprecated. We are unsure how well it will work with version 3.45 and recognize that we will eventually need to switch to Kryo5Codec or another compatible codec.
Migrate existing data to use Kryo5Codec:
We are considering writing a custom script to migrate existing data in Redis to use Kryo5Codec. This would allow us to upgrade our services to version 3.45 without compatibility issues.
We have a few questions and concerns:
Is version 3.45 using Kryo5Codec backward compatible with all types of data we stored in Redis using version 3.14 with the Marshalling codec?
Is Kryo5Codec the recommended option, or should we consider other codecs based on our requirements?
Do you have any suggestions or advice for the upgrade process, considering the issues we are facing with existing data and the codec change?
Many thanks for your input. It is greatly appreciated.
Beta Was this translation helpful? Give feedback.
All reactions