[
https://issues.apache.org/jira/browse/IGNITE-27361?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Pavel Tupitsyn updated IGNITE-27361:
------------------------------------
Fix Version/s: 3.2
> Reintroduce check for POJOs without default constructors in MapperBuilder
> -------------------------------------------------------------------------
>
> Key: IGNITE-27361
> URL: https://issues.apache.org/jira/browse/IGNITE-27361
> Project: Ignite
> Issue Type: Improvement
> Components: thin clients ai3
> Affects Versions: 3.2
> Reporter: Tiago Marques Godinho
> Assignee: Tiago Marques Godinho
> Priority: Major
> Labels: ignite-3
> Fix For: 3.2
>
> Time Spent: 50m
> Remaining Estimate: 0h
>
> In IGNITE-26985 the check for requiring default constructors in POJOs was
> removed.
> Previously, the check would produce an IllegalArgumentException for POJOs
> without default constructors in MapperBuilder(MyPojo.class) calls. In the new
> version, the user will not receive any feedback when creating the mapper, the
> error will be delayed until the first operation.
> I'd prefer having the check in the Mapper constructor as previously, but what
> I really dislike, is that we have a bunch of checks there (NativelySupported,
> Arrays, Enums etc) but not the check for default constructors.
> It's also true that we don't explicitly say in the docs that these
> preconditions will be checked, but sort of seems like an inconsistent
> behaviour to me anyway. Specially because we had it, and now we removed it,
> for no obvious reason (at least we should able check if the class is a
> record).
> Notes:
> * PR Link:
> https://github.com/apache/ignite-3/commit/958f1ccfdd9abca26b3895ae27ed81fa7520773d#diff-9265c221dc86711da6417d66dc81bcf9e923c31dda0b7e2161c0341e208f6244
>
>
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)