[
https://jira.jboss.org/browse/ISPN-552?page=com.atlassian.jira.plugin.sys...
]
Galder Zamarreno commented on ISPN-552:
---------------------------------------
There's two ways to solve this: On one hand, you could extend the if statement in
MarshalledValue ctor to cope with Externalizable and instances with @Marshallable. On the
other hand, you could remove the check and let the marshaller decide soon after what is it
that it cannot marshall/serialize. I prefer the latter option cos as the marshaller
evolves, you might have other types that can be marshalled and we'd have to keep
updating this if statement. So, I'll remove the if statement.
Tree facade caches cannot be configured with lazy deserialization
-----------------------------------------------------------------
Key: ISPN-552
URL:
https://jira.jboss.org/browse/ISPN-552
Project: Infinispan
Issue Type: Bug
Components: Marshalling, Tree API
Affects Versions: 4.0.0.Final, 4.1.0.CR2
Reporter: Galder Zamarreno
Assignee: Galder Zamarreno
Fix For: 4.1.0.Final
Creating a tree module facade for a cache configured with lazy deserialization does not
work:
ava.io.NotSerializableException: Marshalled values can only wrap Objects that are
serializable! Instance of class org.infinispan.tree.NodeKey won't Serialize.
at org.infinispan.marshall.MarshalledValue.<init>(MarshalledValue.java:66)
at
org.infinispan.interceptors.MarshalledValueInterceptor.createMarshalledValue(MarshalledValueInterceptor.java:223)
at
org.infinispan.interceptors.MarshalledValueInterceptor.visitGetKeyValueCommand(MarshalledValueInterceptor.java:127)
at
org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:58)
at
org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
at
org.infinispan.interceptors.TxInterceptor.enlistReadAndInvokeNext(TxInterceptor.java:171)
at
org.infinispan.interceptors.TxInterceptor.visitGetKeyValueCommand(TxInterceptor.java:162)
at
org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:58)
at
org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
at
org.infinispan.interceptors.CacheMgmtInterceptor.visitGetKeyValueCommand(CacheMgmtInterceptor.java:83)
at
org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:58)
at
org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
at
org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:48)
at
org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:34)
at
org.infinispan.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:87)
at
org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:58)
at
org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
at
org.infinispan.interceptors.BatchingInterceptor.handleDefault(BatchingInterceptor.java:72)
at
org.infinispan.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:87)
at
org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:58)
at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:269)
at org.infinispan.CacheDelegate.containsKey(CacheDelegate.java:189)
at org.infinispan.tree.TreeStructureSupport.exists(TreeStructureSupport.java:51)
at org.infinispan.tree.TreeCacheImpl.createRoot(TreeCacheImpl.java:364)
at org.infinispan.tree.TreeCacheImpl.<init>(TreeCacheImpl.java:47)
at org.infinispan.tree.TreeCacheFactory.createTreeCache(TreeCacheFactory.java:37)
at com.varolii.copperhead.app.core.cache.CacheService.start(CacheService.java:56)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira