Skip to content

java.io.InvalidClassException: filter status: REJECTED with Java 17 #142

@Sidhardha95

Description

@Sidhardha95

Hi Team ,

We have using this jar within our project which was using Java 11 and recently we tried to migrate to Java 17.

While the whole build is successful , we observed that we are not able to get data from memcached and it fails with below exception

2023-12-01 14:10:39.008+0530 | POST | :PostmanRuntime/7.35.0:dx-prod:FAB-8b5fdf20-1508-4405-a64d-2100d7d5ffd9 | nioEventLoopGroup-3- |  | ERROR | net.rubyeye.xmemcached.transcoders.BaseSerializingTranscoder | Caught IOException decoding 102 bytes of data
java.io.InvalidClassException: filter status: REJECTED
	at java.base/java.io.ObjectInputStream.filterCheck(ObjectInputStream.java:1414)
	at java.base/java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:2055)
	at java.base/java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1909)
	at java.base/java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2235)
	at java.base/java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1744)
	at java.base/java.io.ObjectInputStream.readObject(ObjectInputStream.java:514)
	at java.base/java.io.ObjectInputStream.readObject(ObjectInputStream.java:472)
	at net.rubyeye.xmemcached.transcoders.BaseSerializingTranscoder.deserialize(BaseSerializingTranscoder.java:109)
	at net.rubyeye.xmemcached.transcoders.SerializingTranscoder.decode0(SerializingTranscoder.java:97)
	at net.rubyeye.xmemcached.transcoders.SerializingTranscoder.decode(SerializingTranscoder.java:89)
	at net.rubyeye.xmemcached.XMemcachedClient.fetch0(XMemcachedClient.java:624)
	at net.rubyeye.xmemcached.XMemcachedClient.get0(XMemcachedClient.java:1030)
	at net.rubyeye.xmemcached.XMemcachedClient.get(XMemcachedClient.java:988)
	at net.rubyeye.xmemcached.XMemcachedClient.get(XMemcachedClient.java:999)
	at com.oracle.cx.communications.dx4c.fabric.utils.core.cache.CacheUtil.get(CacheUtil.java:240)
	at com.oracle.cx.industries.framework.routing.utils.InteractionContextEnrichmentUtil.getValueFromCacheAsMap(InteractionContextEnrichmentUtil.java:75)

We are storing Java Map to memcached and the set operation doing that is giving true. And retrieval is failing with above error.

In case if the data stored is in String format , we see both set and get works as expected. We see issue only when we have non Primitive Object is being tried to be retirved.

Current version of memcached: 2.4.7 Tried with 2.4.8 and saw same issue.

Can you please provide with any pointers on what could be the reason and how I could resolve it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions