RPC return values to use a marshaller as well
---------------------------------------------
Key: JBCACHE-754
URL:
http://jira.jboss.com/jira/browse/JBCACHE-754
Project: JBoss Cache
Issue Type: Feature Request
Security Level: Public (Everyone can see)
Affects Versions: 1.4.0, 2.0.0
Reporter: Manik Surtani
Assigned To: Manik Surtani
Fix For: 2.1.0
Currently, all RPC calls go through the VersionAwareMarshaller which is responsible for
efficiently marshalling JBC internal objects as well as user objects using JBoss
Serialization.
Return values and exceptions, on the other hand, are marshalled/unmarshalled using
JGroups' Util.{to|from}ByteBuffer() which uses standard object serialization.
The problems here are twofold:
1) Relatively inefficient (in speed as well as byte array size) marshalling/unmarshalling
for return values
2) Potential class loader problems
Most RPC calls in JBoss Cache do not have return values so this is not a problem that
comes up often, but certain features (clustered cache loader, data gravitation in buddy
replication) rely on return values.
The solution to this problem is to be able to register a marshaller with the JGroups
RPCDispatcher for return values (and exceptions) as well as for the RPC calls themselves.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira