[
https://issues.jboss.org/browse/ISPN-2282?page=com.atlassian.jira.plugin....
]
Galder Zamarreño commented on ISPN-2282:
----------------------------------------
@Erik, I'd argue that to get the best performance out of the system, you should be
using the advanced externalizers
(
https://docs.jboss.org/author/display/ISPN/Plugging+Infinispan+With+User+...),
as opposed to the user friendly ones that are annotated with @SerializeWith :). With
advanced externalizers one of the reasons you get getting better performance is cos the
externalizer does not require to be marshalled, hence no need to mark it Serializable.
We think you have a point though and we'll revert back since having Externalizer
extend Serializable has no negative impact on AdvancedExternalizers, however, i'd
recommend you switch to the latter option asap :)
Custom Externalizers cause NotSerializableException
---------------------------------------------------
Key: ISPN-2282
URL:
https://issues.jboss.org/browse/ISPN-2282
Project: Infinispan
Issue Type: Enhancement
Components: Marshalling
Affects Versions: 5.2.0.Alpha3
Reporter: Erik Salter
Assignee: Galder Zamarreño
Fix For: 5.2.0.Alpha4
Since org.infinispan.marshall.Externalizer no longer extends Serializable, my custom
Externalizers throw NotSerialazbleExceptions.
Example:
Caused by: org.infinispan.marshall.NotSerializableException:
net.beaumaris.odrm.resmanagement.type.ODRMSessionData$ODRMSessionDataExternalizer
Caused by: an exception which occurred:
in field externalizer
in object org.infinispan.marshall.jboss.JBossExternalizerAdapter@2c370555
-> toString =
org.infinispan.marshall.jboss.JBossExternalizerAdapter@2c370555
in object net.beaumaris.odrm.resmanagement.type.ODRMSessionData@62c91115
-> toString = ODRMSessionData [sopId=999991, segmentIndex=0,
streamerId=99999]
in object org.infinispan.commands.write.PutKeyValueCommand@cf4d21f7
-> toString =
PutKeyValueCommand{key=9d3d0a41-4d2a-4320-aa38-64a5203c49bf, value=ODRMSessionData
[sopId=999991, segmentIndex=0, streamerId=99999], flags=[SKIP_REMOTE_LOOKUP],
putIfAbsent=false, lifespanMillis=-1, maxIdleTimeMillis=-1}
in object org.infinispan.commands.remote.SingleRpcCommand@280f4ad0
-> toString = SingleRpcCommand{cacheName='ODRM_SESSION',
command=PutKeyValueCommand{key=9d3d0a41-4d2a-4320-aa38-64a5203c49bf, value=ODRMSessionData
[sopId=999991, segmentIndex=0, streamerId=99999], flags=[SKIP_REMOTE_LOOKUP],
putIfAbsent=false, lifespanMillis=-1, maxIdleTimeMillis=-1}}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira