[
https://issues.apache.org/jira/browse/IGNITE-27775?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18100947#comment-18100947
]
Ignite TC Bot commented on IGNITE-27775:
----------------------------------------
I cleared Docs Required and kept Release Notes Required. I checked the merged
PRs #12714/#12721/#12728 and the local Ignite code changes in
modules/codegen/src/main/java/org/apache/ignite/internal/idto/IDTOSerializerGenerator.java,
generated serializer test resources, and ObjectInputStreamFilteringTest. The
change optimizes generated serialization for internal IgniteDataTransferObject
array, collection, and map fields. It does not add or change a public API,
command, configuration property, SQL behavior, operational procedure, or user
documentation page.
> Write typed collections Ignite way
> ----------------------------------
>
> Key: IGNITE-27775
> URL: https://issues.apache.org/jira/browse/IGNITE-27775
> Project: Ignite
> Issue Type: Improvement
> Reporter: Nikolay Izhikov
> Assignee: Nikolay Izhikov
> Priority: Major
> Fix For: 2.19
>
> Time Spent: 3.5h
> Remaining Estimate: 0h
>
> Currently, many typed collections and array written by IDTO autogenerated
> code write in not efficient way:
> {code:java}
> IDTO {
> UUID[] nodeIds;
> }
> IDTOSerializer {
> write() {
> U.writeArray(out, obj.nodeIds);
> }
> }
> U {
> writeArray() {
> for (T t : arr)
> out.writeObject(t);
> }
> }
> {code}
> We can do it more efficiently if generate code based on generic collection
> argument. For example:
> {code:java}
> IDTOSerializer {
> write() {
> for (UUID t : obj.nodeIds)
> U.writeUUID(t);
> }
> }
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)