> As Infinispan does only support a fixed number of Commands and I cannot
(and don't want to) add a new command as I am in a <br>> different module,<br>In my implementation of ISPN-200 I had this problem too. I've created a command and to avoid problems with module dependencies, I've put just the command interface in the core module, and the implementation I've put on the query module. But, it seems like a not very good idea... <br>
<br><div class="gmail_quote">On Mon, Sep 13, 2010 at 3:14 PM, Sanne Grinovero <span dir="ltr"><<a href="mailto:sanne.grinovero@gmail.com">sanne.grinovero@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
I'd also love to see some capability to send my own command;<br>
I'm thinking about having a single IndexWriter always open, and<br>
delegate work to it from other nodes, or in other cases distribute the<br>
search request to the remote nodes instead of downloading the needed<br>
index segment (a common problem with Lucene is to have enough memory<br>
to perform a sort operation on huge result sets).<br>
<br>
A "distributable" IndexWriter would be great for Search, and latest<br>
Lucene as some new APIs which could help with this, but I'm not in a<br>
position to be able to tell which commands I need; I would need to<br>
experiment a bit with it, and would love to be able to play with the<br>
commands in a flexible way - currently it looks hard and I desisted<br>
from investigation.<br>
<br>
Maybe it could be possible to reserve some command numbers for<br>
experiments? Or allow pluggable invocations?<br>
I'd especially love an API to send a specific method with parameters<br>
(like RMI) to the node owning a specific key - last time I mentioned<br>
this need Bela mentioned a new sort of multiplexer to reuse the<br>
JGroups channel, but at that time this was yet to be written.<br>
A super cool feature would be for example to start Hibernate Search's<br>
JGroups backend on the same channel as Infinispan, having for example<br>
all data sent to the one machine having a specific key.<br>
<br>
Another extensibility I wish I had is to be able to plug my own<br>
marshaller/externalizer (also had a thread about it).<br>
<br>
Sanne<br>
<br>
2010/9/13 Manik Surtani <<a href="mailto:manik@jboss.org">manik@jboss.org</a>>:<br>
<div><div></div><div class="h5">><br>
> On 13 Sep 2010, at 17:19, Mircea Markus wrote:<br>
><br>
>> Hi,<br>
>><br>
>> I've been working on an POC for continuous-query in ISPN. This runs on top of Drools, and is a independent mvn module.<br>
>> One of the things I needed to do was broadcasting remote commands and make them available in the interceptor chain. As Infinispan does only support a fixed number of Commands and I cannot (and don't want to) add a new command as I am in a different module, I hacked the PutKeyValue: on special key values, my interceptors know that they should handle it. This way, PutKeyValue is not a put per se, but a way to facilitate RPC and an ugly hack :)<br>
><br>
> What "command" is this, what do you need to be able to broadcast?<br>
><br>
>> I was thinking that a GenericCommand that would contain a Map of parameters would be handy for this scenario. Also a method on the visitor, visitGenericCommand. This would allow integration projects (like cq) to be done nicely. If this sounds appealing I can detail..<br>
><br>
> -1. This sounds like it opens a huge can of worms, making things hard to maintain and open to abuse. Commands should be very specific and properly typed.<br>
><br>
><br>
><br>
><br>
> --<br>
> Manik Surtani<br>
> <a href="mailto:manik@jboss.org">manik@jboss.org</a><br>
> Lead, Infinispan<br>
> Lead, JBoss Cache<br>
> <a href="http://www.infinispan.org" target="_blank">http://www.infinispan.org</a><br>
> <a href="http://www.jbosscache.org" target="_blank">http://www.jbosscache.org</a><br>
><br>
><br>
><br>
><br>
><br>
> _______________________________________________<br>
> infinispan-dev mailing list<br>
> <a href="mailto:infinispan-dev@lists.jboss.org">infinispan-dev@lists.jboss.org</a><br>
> <a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/infinispan-dev</a><br>
><br>
<br>
_______________________________________________<br>
infinispan-dev mailing list<br>
<a href="mailto:infinispan-dev@lists.jboss.org">infinispan-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/infinispan-dev</a></div></div></blockquote></div><br>