[ https://issues.apache.org/jira/browse/IGNITE-13618?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrey Mashenkov updated IGNITE-13618: -------------------------------------- Description: Let's prototype object serializer for type-system described in IEP-54, and benchmark them to check if generated code approach is a better one. * As we go with Java11 then VarHandles can be used instead of Unsafe. * For generated serializer we can use: JDK compiler + Javapoet project (Java code generator) or Janino compiler or even Prestodb-bytecode module of PrestoDB project, was: Let's prototype object serializer for type-system described in IEP-54, and benchmark them to check if generated code approach is a better one. * For reflection-based serializer we can use Unsafe (see GridUnsafe class) which works fine for previour versions of Ignite. * To keep focus on the ticket needs mainly, we can use Janino project for code generator. * In addition, reflection-based serialized could have a version using Java9+ VanHandles and it's could be hidden under 'java-9+' maven-profile. Hints: Javapoet can be used as codegenerator, Janino as a compiler, class loader. > Provide generated and reflection-based class (de)serializers > ------------------------------------------------------------ > > Key: IGNITE-13618 > URL: https://issues.apache.org/jira/browse/IGNITE-13618 > Project: Ignite > Issue Type: Improvement > Components: sql > Reporter: Alexey Goncharuk > Assignee: Andrey Mashenkov > Priority: Major > Labels: iep-54, ignite-3 > Attachments: benchmark-results.txt > > > Let's prototype object serializer for type-system described in IEP-54, and > benchmark them to check if generated code approach is a better one. > * As we go with Java11 then VarHandles can be used instead of Unsafe. > * For generated serializer we can use: JDK compiler + Javapoet project (Java > code generator) or Janino compiler or even Prestodb-bytecode module of > PrestoDB project, -- This message was sent by Atlassian Jira (v8.3.4#803005)