Oracle NoSQL: RMI Registry Filter Failure in Java SE 8u121
(Doc ID 2227233.1)
Last updated on OCTOBER 17, 2019
Applies to:
Oracle NoSQL Database - Version 12.1.4.0.5 and laterInformation in this document applies to any platform.
Symptoms
Java SE Development Kit 8, Update 121 (JDK 8u121) introduces new behavior that can cause failures when running Oracle NoSQL Database in a secure configuration. The failures will produce stack traces like the following:
Jan 25, 2017 11:15:45 AM java.io.ObjectInputStream filterCheck
INFO: ObjectInputFilter REJECTED: class java.lang.Enum, array length: -1, nRefs: 14, depth: 4, bytes: 768, ex: n/a
KVLite: exception in start: java.rmi.RemoteException: Can't rebind snaService at localhost:5000 csf: <SSLClientSocketFactory name=$|sna|main id=1690670528 connectMs=0 readMs=0 kvStoreName=null clientUse=USER> ssf: <SSLServerSocketFactory backlog=1024 port range=0,0 ssl control = oracle.kv.impl.security.ssl.SSLControl@5836ad63>; nested exception is:
java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
java.io.InvalidClassException: filter status: REJECTED
at oracle.kv.impl.util.registry.RegistryUtils.rebind(RegistryUtils.java:853)
at oracle.kv.impl.sna.StorageNodeAgent.bindUnregisteredSNA(StorageNodeAgent.java:974)
at oracle.kv.impl.sna.StorageNodeAgent.startupUnregistered(StorageNodeAgent.java:793)
at oracle.kv.impl.sna.StorageNodeAgent.start(StorageNodeAgent.java:624)
at oracle.kv.impl.sna.StorageNodeAgentImpl.start(StorageNodeAgentImpl.java:133)
at oracle.kv.util.kvlite.KVLite.startSNA(KVLite.java:298)
at oracle.kv.util.kvlite.KVLite.start(KVLite.java:524)
at oracle.kv.util.kvlite.KVLite.start(KVLite.java:513)
at oracle.kv.util.kvlite.KVLite.main(KVLite.java:647)
at oracle.kv.impl.util.KVStoreMain$1.run(KVStoreMain.java:190)
at oracle.kv.impl.util.KVStoreMain.main(KVStoreMain.java:477)
Caused by: java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
java.io.InvalidClassException: filter status: REJECTED
at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:460)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
at sun.rmi.transport.Transport$1.run(Transport.java:200)
at sun.rmi.transport.Transport$1.run(Transport.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:683)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:276)
at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:253)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:379)
at sun.rmi.registry.RegistryImpl_Stub.rebind(Unknown Source)
at oracle.kv.impl.util.registry.RegistryUtils$ExceptionWrappingRegistry.rebind(RegistryUtils.java:1339)
at oracle.kv.impl.util.registry.RegistryUtils.exportAndRebind(RegistryUtils.java:1184)
at oracle.kv.impl.util.registry.RegistryUtils.rebind(RegistryUtils.java:849)
... 10 more
Caused by: java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
java.io.InvalidClassException: filter status: REJECTED
at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:450)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
at sun.rmi.transport.Transport$1.run(Transport.java:200)
at sun.rmi.transport.Transport$1.run(Transport.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:683)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.InvalidClassException: filter status: REJECTED
at java.io.ObjectInputStream.filterCheck(ObjectInputStream.java:1244)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1832)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1713)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1829)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1713)
at java.io.ObjectInputStream.readEnum(ObjectInputStream.java:1938)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1532)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2231)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2155)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2013)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1535)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:422)
at sun.rmi.transport.tcp.TCPEndpoint.read(TCPEndpoint.java:555)
at sun.rmi.transport.LiveRef.read(LiveRef.java:292)
at sun.rmi.server.UnicastRef2.readExternal(UnicastRef2.java:78)
at java.rmi.server.RemoteObject.readObject(RemoteObject.java:455)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1058)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2122)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2013)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1535)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2231)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2155)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2013)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1535)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:422)
... 15 more
Cause
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
In this Document
Symptoms |
Cause |
Solution |