How to handle Avro schema change in Redisson
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 20/100
Research direction
The issue names Avro, AvroJacksonCodec, SerializationCodec, MarshallingCodec, KryoCodec, and JsonJacksonCodec; start by comparing their schema-evolution behavior against the reported deserialization exception. Done is not defined in the report, so a responder would need to establish a supported codec or configuration and a reproducible demonstration for old data after adding a field.
Written by the indexing model from the issue text.
Description
I am using avro schema. Which looks like below.
{
"name": "TestingData",
"type": "record",
"namespace": "com.avro.testing",
"doc": "testing information",
"fields": [
{
"name": "testingId",
"type": [
"string"
],
"doc": "the unique identifier for the testing"
},
{
"name": "displayName",
"type": [
"string",
"null"
],
"doc": "the display name of participant"
},
{
"name": "updateTimeMillis",
"type": "long",
"doc": "timestamp at which testing started."
}
]
}
Using various codecs available in redisson, I am storing the above object.
Now If I make a change in the schema(adding a new field), I am getting a deserialization exception, while retrieving old object back.
I have tried using AvroJacksonCodec, SerializationCodec, MarshallingCodec.
I have read that using kryoCodec it is possible. But could not find any working demo.
JsonJacksonCodec has some issues with org.apache.avro.util.Utf8. So that is also not helping in schema evolution.
Redisson Version:
3.14.0
- Dominant language
- Java
- Stars
- 24.4k
- Forks
- 5.5k
- Avg merge
- 4d 12h
- Merged PRs (30d)
- 12
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from redisson/redisson
-
Difficulty 3/5 1-2 days Newbie friendliness 64/100
-
Difficulty 3/5 1-2 days Newbie friendliness 74/100
-
Difficulty 4/5 3-5 days Newbie friendliness 48/100
-
Difficulty 4/5 3-5 days Newbie friendliness 62/100
-
Difficulty 4/5 3-5 days Newbie friendliness 55/100
All issues in redisson/redisson
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
bug needs triage
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
Difficulty 1/5 Under an hour Newbie friendliness 94/100
objectionary/hone-maven-plugin#1061 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
spring-projects/spring-modulith#1895 ·