[jira] [Commented] (IGNITE-8293) BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class
[ https://issues.apache.org/jira/browse/IGNITE-8293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16946720#comment-16946720 ] Maxim Muzafarov commented on IGNITE-8293: - Moved to 2.9 due to inactivity. Please feel free to move back if you will be able to complete the ticket by AI 2.8 code freeze date, December 2, 2019. > 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.8 > > > 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 (v8.3.4#803005)
[jira] [Commented] (IGNITE-8293) BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class
[ https://issues.apache.org/jira/browse/IGNITE-8293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16629968#comment-16629968 ] Vladimir Ozerov commented on IGNITE-8293: - Moved to 2.8 due to inactivity. Please feel free to move back if you will be able to complete the ticket by AI 2.7 code freeze date, September 30, 2018. > 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.8 > > > 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)
[jira] [Commented] (IGNITE-8293) BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class
[ https://issues.apache.org/jira/browse/IGNITE-8293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=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)
[jira] [Commented] (IGNITE-8293) BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class
[ https://issues.apache.org/jira/browse/IGNITE-8293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16511032#comment-16511032 ] ASF GitHub Bot commented on IGNITE-8293: Github user agura closed the pull request at: https://github.com/apache/ignite/pull/4074 > 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)
[jira] [Commented] (IGNITE-8293) BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class
[ https://issues.apache.org/jira/browse/IGNITE-8293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16511026#comment-16511026 ] Andrey Gura commented on IGNITE-8293: - [~MihkelJ] Unfortunately, TC run has failed tests due to your change. At least following changes are failed: {noformat} org.apache.ignite.testsuites.IgniteBinaryObjectsTestSuite: org.apache.ignite.internal.binary (12) BinaryEnumsSelfTest.testDeclaredBodyEnumNotRegistered BinaryEnumsSelfTest.testDeclaredBodyEnumRegistered BinaryEnumsSelfTest.testNestedBuilderNotRegistered BinaryEnumsSelfTest.testNestedNotRegistered BinaryEnumsSelfTest.testSimpleArrayNotRegistered BinaryEnumsSelfTest.testSimpleArrayRegistered BinaryEnumsSelfTest.testSimpleNotRegistered BinaryEnumsSelfTest.testSimpleRegistered BinaryMarshallerSelfTest.testWriteReplaceInheritable BinaryObjectBuilderAdditionalSelfTest.testEnum BinaryObjectBuilderAdditionalSelfTest.testMetadataChanging BinaryObjectBuilderAdditionalSelfTest.testSimpleTypeFieldOverride org.apache.ignite.testsuites.IgniteBinaryObjectsTestSuite: org.apache.ignite.internal.binary.noncompact (4) BinaryMarshallerNonCompactSelfTest.testWriteReplaceInheritable BinaryObjectBuilderAdditionalNonCompactSelfTest.testEnum BinaryObjectBuilderAdditionalNonCompactSelfTest.testMetadataChanging BinaryObjectBuilderAdditionalNonCompactSelfTest.testSimpleTypeFieldOverride {noformat} > 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)
[jira] [Commented] (IGNITE-8293) BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class
[ https://issues.apache.org/jira/browse/IGNITE-8293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16495376#comment-16495376 ] Andrey Gura commented on IGNITE-8293: - Thanks, [~MihkelJ]! Please move ticket to the "Patch available" status using "Submit patch" button. > 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 > > Attachments: IGNITE-8293.patch > > > 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)
[jira] [Commented] (IGNITE-8293) BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class
[ https://issues.apache.org/jira/browse/IGNITE-8293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16494762#comment-16494762 ] MihkelJ commented on IGNITE-8293: - [~agura], I've moved the tests to {{BinaryMarshallerSelfTest}}. > 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 > > Attachments: IGNITE-8293.patch > > > 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)
[jira] [Commented] (IGNITE-8293) BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class
[ https://issues.apache.org/jira/browse/IGNITE-8293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16493947#comment-16493947 ] Andrey Gura commented on IGNITE-8293: - [~MihkelJ], I've reviewed your patch and have a comment: {{BinaryUtilsIsCustomSerializationTest}} doesn't contains Apache 2.0 license header and javadocs. Also this test uses JUnit 4 while we still use JUnit 3. Test is ok, but it isn't related with binary marshaller. I think it would be great if you remove your tests and add test cases to {{BinaryMarshallerSelfTest}}. Use existing test cases as examples. Is there any chance that you fix this comment? > 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 > > Attachments: IGNITE-8293.patch > > > 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)
[jira] [Commented] (IGNITE-8293) BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class
[ https://issues.apache.org/jira/browse/IGNITE-8293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16490851#comment-16490851 ] ASF GitHub Bot commented on IGNITE-8293: GitHub user agura opened a pull request: https://github.com/apache/ignite/pull/4074 IGNITE-8293 BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class You can merge this pull request into a Git repository by running: $ git pull https://github.com/agura/incubator-ignite ignite-8293 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/ignite/pull/4074.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #4074 commit 726e90e0f33ab446a8b41c118789ab450f464588 Author: Mihkel JõhvikDate: 2018-05-02T07:30:59Z IGNITE-8293 BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class > 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 > > Attachments: IGNITE-8293.patch > > > 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)
[jira] [Commented] (IGNITE-8293) BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class
[ https://issues.apache.org/jira/browse/IGNITE-8293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16462533#comment-16462533 ] Andrey Gura commented on IGNITE-8293: - [~MihkelJ] "all" plan is good candidate because marshalling bug can affect any subsystem of Ignite. Unfortunately, we constantly have failed tests on TC so we usually compare failed tests on PR with tests on master (default) branch. I'll check your TC run later and let you know if new tests are failed. > 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 > > Attachments: IGNITE-8293.patch > > > 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)
[jira] [Commented] (IGNITE-8293) BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class
[ https://issues.apache.org/jira/browse/IGNITE-8293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16460624#comment-16460624 ] ASF GitHub Bot commented on IGNITE-8293: GitHub user Celos opened a pull request: https://github.com/apache/ignite/pull/3941 IGNITE-8293 BinaryUtils#isCustomJavaSerialization fails when only rea… …dObject is declared in a class You can merge this pull request into a Git repository by running: $ git pull https://github.com/Celos/ignite ignite-8293 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/ignite/pull/3941.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #3941 commit d501f1c450f4c27bfd7f7efe383453318945cee5 Author: Mihkel JõhvikDate: 2018-05-02T07:30:59Z IGNITE-8293 BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class > 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 > > Attachments: IGNITE-8293.patch > > > 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)
[jira] [Commented] (IGNITE-8293) BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class
[ https://issues.apache.org/jira/browse/IGNITE-8293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16449812#comment-16449812 ] Andrey Gura commented on IGNITE-8293: - [~MihkelJ], thanks for patch. Could you please request adding to contributor list on dev-list? > 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 >Priority: Minor > Fix For: 2.6 > > Attachments: IGNITE-8293.patch > > > 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)
[jira] [Commented] (IGNITE-8293) BinaryUtils#isCustomJavaSerialization fails when only readObject is declared in a class
[ https://issues.apache.org/jira/browse/IGNITE-8293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16440681#comment-16440681 ] MihkelJ commented on IGNITE-8293: - Patch: [^IGNITE-8293.patch] > 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 >Priority: Minor > Attachments: IGNITE-8293.patch > > > 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)