(Adding -dev)
On 12 Jul 2013, at 05:04, Hammad Said <hsaid(a)redhat.com> wrote:
I have implemented the change for address ordering in and created the
topic branch optimize_staggered-get in:
https://github.com/hsaid4327/infinispan.git
which branch do you want me to look at?
Or better can you please issue a pull request with your change?
The next part is the configuration change. For the configuration change, there are
certain design decisions that need to be made:
a) We need to introduce two configuration params staggered_get_flag and
staggered_get_timeout. Where exactly are these params specified in the cache configuration
file. At the global or the cache level and under what element. Are they be implemented as
attributes of clustering element, separate element as a child of clustering or cache.
What about something like:
<cluseter>
<remoteReads policy="ALL|STAGGER|MAIN_OWNER"
staggerTimeout="50"/>
</cluster>
What others think?
b) once we read the properties second big question is how to pass
them on to the dispatcher in question i.e CommandAwareRpcDispatacher. There are two
choices here:
1- We change the method signature of invokeRemoteCommands and pass on these two params.
This choice involves making up the calling stack in the classes that invoke this method
namele JGroupsTransport and possible up the calling stream.
2- Another option is to set it on the ResponseFilter which is passed to
CommandAwareRpcDispatcher.
I'm not sure the CARD needs to be aware of the staggering. I'd think it is the
responsibility of the caller (DistributionInterceptor) to orchestrate staggering..
Also, would the changes in configuration would require making a change in XSD schema
file?
Thanks!
Hammad
`
Cheers,
--
Mircea Markus
Infinispan lead (
www.infinispan.org)