Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Observed Performance Degradation During Deserialization of Objects with Large Collections
I have observed a significant performance degradation when deserializing objects that contain large collections (lists). In my case, the deserialization time increased by nearly
3x
🧐Interestingly, when deserializing previously created generic objects, the performance drop is not as noticeable. The most significant difference compared to the previous version is for objects serialized with version
2.1.1
and deserialized with version 2.1.1.I added benchmarks on my local branch to measure the performance in version
1.10.1
and compared it to the current implementation (entries with nameAvro4kV1*
). I created a very simple model that contained just an Int list, and the performance drop was already noticeable.I have added the results to the README for comparison. The remaining results (for v2) are comparable to those in the README on my machine, so I think I can include the results for reference.
Interestingly, there was a strange and intriguing result for JacksonAvro serialization (the fastests one). I’m not sure how to interpret it at this moment, but this effect does not seem to occur with more complex models than just an Int list.