You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Kirk Lund (Jira)" <ji...@apache.org> on 2022/01/20 19:45:00 UTC

[jira] [Comment Edited] (GEODE-9980) pre-8u121 JRE throws java.lang.UnsupportedOperationException even when geode.enableGlobalSerialFilter is false

    [ https://issues.apache.org/jira/browse/GEODE-9980?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17479638#comment-17479638 ] 

Kirk Lund edited comment on GEODE-9980 at 1/20/22, 7:44 PM:
------------------------------------------------------------

All code paths invoking {{ReflectiveObjectInputFilterApiFactory.createObjectInputFilterApi()}} may also be exposed to this bug.


was (Author: klund):
All code paths invoking {{ReflectiveObjectInputFilterApiFactory.createObjectInputFilterApi()}} are similarly exposed to this bug.

> pre-8u121 JRE throws java.lang.UnsupportedOperationException even when geode.enableGlobalSerialFilter is false
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: GEODE-9980
>                 URL: https://issues.apache.org/jira/browse/GEODE-9980
>             Project: Geode
>          Issue Type: Bug
>          Components: serialization
>    Affects Versions: 1.15.0
>            Reporter: Kirk Lund
>            Assignee: Kirk Lund
>            Priority: Major
>              Labels: GeodeOperationAPI
>
> {{sun.misc.ObjectInputFilter}} was not added to Java 8 until 8u121. Using Geode on an older Java release throws {{java.lang.ClassNotFoundException: sun.misc.ObjectInputFilter}}wrapped in an {{UnsupportedOperationException}}.
> This should not be thrown unless the system property {{geode.enableGlobalSerialFilter=true}} is set.
> {code:java}
> java.lang.UnsupportedOperationException: ObjectInputFilter is not available.
>     at org.apache.geode.internal.serialization.filter.ObjectInputFilterUtils.throwUnsupportedOperationException(ObjectInputFilterUtils.java:41)
>     at org.apache.geode.internal.serialization.filter.ReflectiveObjectInputFilterApiFactory.createObjectInputFilterApi(ReflectiveObjectInputFilterApiFactory.java:40)
>     at org.apache.geode.internal.serialization.filter.ReflectiveFacadeObjectInputFilterFactory.<init>(ReflectiveFacadeObjectInputFilterFactory.java:35)
>     at org.apache.geode.internal.InternalDataSerializer.initializeSerializationFilter(InternalDataSerializer.java:435)
>     at org.apache.geode.internal.InternalDataSerializer.initializeSerializationFilter(InternalDataSerializer.java:420)
>     at org.apache.geode.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:717)
>     at org.apache.geode.distributed.internal.InternalDistributedSystem.access$200(InternalDistributedSystem.java:133)
>     at org.apache.geode.distributed.internal.InternalDistributedSystem$Builder.build(InternalDistributedSystem.java:3018)
>     at org.apache.geode.distributed.internal.InternalDistributedSystem.connectInternal(InternalDistributedSystem.java:283)
>     at org.apache.geode.distributed.internal.InternalDistributedSystem.connectInternal(InternalDistributedSystem.java:209)
>     at org.apache.geode.distributed.DistributedSystem.connect(DistributedSystem.java:159)
>     [snip]
> Caused by: java.lang.ClassNotFoundException: sun.misc.ObjectInputFilter
>     at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
>     at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
>     at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>     at java.lang.Class.forName0(Native Method)
>     at java.lang.Class.forName(Class.java:264)
>     at org.apache.geode.internal.serialization.filter.ReflectiveObjectInputFilterApi.ObjectInputFilter(ReflectiveObjectInputFilterApi.java:207)
>     at org.apache.geode.internal.serialization.filter.ReflectiveObjectInputFilterApi.<init>(ReflectiveObjectInputFilterApi.java:65)
>     at org.apache.geode.internal.serialization.filter.ReflectiveObjectInputFilterApiFactory.createObjectInputFilterApi(ReflectiveObjectInputFilterApiFactory.java:37)
>     ... 12 more
> {code}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)