[
https://issues.apache.org/jira/browse/IGNITE-8293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16511143#comment-16511143
]
MihkelJ commented on IGNITE-8293:
---------------------------------
It seems this method was a barrier to keep enums from being marked as having
custom serialization. I've updated the pull request to add an explicit check.
Of the listed tests, this change solves everything but
{{BinaryMarshallerNonCompactSelfTest.testWriteReplaceInheritable}}. That test
assumes guava's ImmutableList doesn't use custom serialization, which isn't
really true.
> BinaryUtils#isCustomJavaSerialization fails when only readObject is declared
> in a class
> ---------------------------------------------------------------------------------------
>
> Key: IGNITE-8293
> URL: https://issues.apache.org/jira/browse/IGNITE-8293
> Project: Ignite
> Issue Type: Bug
> Components: binary
> Affects Versions: 2.4
> Reporter: MihkelJ
> Assignee: MihkelJ
> Priority: Minor
> Fix For: 2.6
>
>
> Consider this class:
>
> {code:java}
> public class Test implements Serializable {
> private transient AtomicBoolean dirty = new AtomicBoolean(false);
> private void readObject(java.io.ObjectInputStream in) throws IOException,
> ClassNotFoundException {
> dirty = new AtomicBoolean(false);
> }
> //methods to check and mark class as dirty
> }{code}
> {{isCustomJavaSerialization}} will get a {{NoSuchMethodException}} when
> trying to grab the {{writeObject}} method and falsely conclude that Test
> doesn't use custom serialization.
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)