I did some bechmarking comparing deserialization t...
# jackson-kotlin
r
I did some bechmarking comparing deserialization times between jackson kotlin module and marking all my data classes as @JvmRecord and using stock jackson without kotlin module. The jvm record path clearly is faster (will try to make a GH issue with more formal claims), but this is just a lazy way of putting that the kotlin module ought to be faster… any thoughts on how to approach the same speed?
w
Work on speeding up deserialization is underway for release in 2.13.2. Merging up to the comments below will improve the deserialization speed by up to 2~4 times compared to 2.13.1, as confirmed by a simple benchmark. https://github.com/FasterXML/jackson-module-kotlin/pull/538#issuecomment-1011339275 Also, there seem to be a lot of inefficiencies in the argument parsing process in
KotlinAnnotationIntrospector
and
KotlinNamesAnnotationIntrospector
, so I'm thinking that caching these can be speed things up even more. (However, I think it will be a long time before I can start working on this improvement.)
r
Thanks! But it seems a lot of improvements are already merged for 2.13.2 ?
Is there a maven artifact published somewhere to test and if so, where? Or, if it is better i build myself, which commit is a good one to build from?
w
There is still some content that has not been merged yet. Here's the branch I'm working on. https://github.com/k163377/jackson-module-kotlin/tree/speed_up/3 I seem to remember that it should have run
replacer:replace
before generating the
jar
.