<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">2017-10-10 15:03 GMT+02:00 Radim Vansa <span dir="ltr"><<a href="mailto:rvansa@redhat.com" target="_blank">rvansa@redhat.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="gmail-">On 10/10/2017 11:08 AM, Thomas SEGISMONT wrote:<br>
><br>
><br>
> 2017-10-09 18:30 GMT+02:00 Radim Vansa <<a href="mailto:rvansa@redhat.com">rvansa@redhat.com</a><br>
</span>> <mailto:<a href="mailto:rvansa@redhat.com">rvansa@redhat.com</a>>>:<br>
<div><div class="gmail-h5">><br>
> On 10/09/2017 03:04 PM, Thomas SEGISMONT wrote:<br>
> > Hi,<br>
> ><br>
> > I've created a branch in vertx-infinispan to start incorporating the<br>
> > new features in 9.2.<br>
> ><br>
> > <a href="https://github.com/vert-x3/vertx-infinispan/tree/ispn92" rel="noreferrer" target="_blank">https://github.com/vert-x3/<wbr>vertx-infinispan/tree/ispn92</a><br>
> <<a href="https://github.com/vert-x3/vertx-infinispan/tree/ispn92" rel="noreferrer" target="_blank">https://github.com/vert-x3/<wbr>vertx-infinispan/tree/ispn92</a>><br>
> > <<a href="https://github.com/vert-x3/vertx-infinispan/tree/ispn92" rel="noreferrer" target="_blank">https://github.com/vert-x3/<wbr>vertx-infinispan/tree/ispn92</a><br>
> <<a href="https://github.com/vert-x3/vertx-infinispan/tree/ispn92" rel="noreferrer" target="_blank">https://github.com/vert-x3/<wbr>vertx-infinispan/tree/ispn92</a>>><br>
> ><br>
> > Here are a couple of comments/concerns on MultimapCache:<br>
> > 1/ EmbeddedMultimapCacheManagerFa<wbr>ctory#from returns a raw<br>
> > MultimapCacheManager; it would be nice to have type arguments<br>
> instead,<br>
> > to avoid unchecked assignment warnings<br>
> > 2/ MultimapCache does not accept entry listeners. We use them to<br>
> build<br>
> > a near cache to increase the speed of sending<br>
><br>
> Do you need clustered listeners or only those on owners? Btw., you can<br>
> register a listener on the underlying cache, but I agree that an<br>
> interface that will adapt it correctly (e.g. mapping @EntryModified on<br>
> multi-value to @EntryCreated on the new value) would appear less<br>
> crude.<br>
><br>
><br>
> We need clustered listeners because any member should be able to<br>
> update its near cache.<br>
><br>
> If a listener is registered on the underlying cache, the event payload<br>
> would be the full collection when an element is added/removed from the<br>
> multimap cache?<br>
<br>
</div></div>Yes, by default all the values stored under that key. And the event type<br>
wouldn't be correct. You'd probably want to use addFilteredListener to<br>
diff previous and current value on owner-side and send only the changed<br>
entries.<br></blockquote><div><br></div><div>I ended up doing this and it worked like a charm (see <a href="https://github.com/vert-x3/vertx-infinispan/commit/ff2b541f52086578e1015937c36e1f2550c85b4f">https://github.com/vert-x3/vertx-infinispan/commit/ff2b541f52086578e1015937c36e1f2550c85b4f</a>)</div><div><br></div><div>I explored a suggestion from Will regarding L1 caching. But then I realized we'll always need our own near cache, as we maintain a "ChoosableSet" view of eventbus handlers (to balance the load)<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<span class="gmail-"><br>
><br>
> R.<br>
><br>
> ><br>
> > 1/ is easy, but do you think 2/ could be added in 9.2?<br>
> ><br>
> > Thank you,<br>
> > Thomas<br>
> ><br>
> ><br>
> > ______________________________<wbr>_________________<br>
> > infinispan-dev mailing list<br>
> > <a href="mailto:infinispan-dev@lists.jboss.org">infinispan-dev@lists.jboss.org</a><br>
</span>> <mailto:<a href="mailto:infinispan-dev@lists.jboss.org">infinispan-dev@lists.<wbr>jboss.org</a>><br>
> > <a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/<wbr>mailman/listinfo/infinispan-<wbr>dev</a><br>
> <<a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/<wbr>mailman/listinfo/infinispan-<wbr>dev</a>><br>
><br>
><br>
> --<br>
> Radim Vansa <<a href="mailto:rvansa@redhat.com">rvansa@redhat.com</a> <mailto:<a href="mailto:rvansa@redhat.com">rvansa@redhat.com</a>>><br>
<span class="gmail-">> JBoss Performance Team<br>
><br>
> ______________________________<wbr>_________________<br>
> infinispan-dev mailing list<br>
</span>> <a href="mailto:infinispan-dev@lists.jboss.org">infinispan-dev@lists.jboss.org</a> <mailto:<a href="mailto:infinispan-dev@lists.jboss.org">infinispan-dev@lists.<wbr>jboss.org</a>><br>
> <a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/<wbr>mailman/listinfo/infinispan-<wbr>dev</a><br>
> <<a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/<wbr>mailman/listinfo/infinispan-<wbr>dev</a>><br>
<div class="gmail-HOEnZb"><div class="gmail-h5">><br>
><br>
><br>
><br>
> ______________________________<wbr>_________________<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" rel="noreferrer" target="_blank">https://lists.jboss.org/<wbr>mailman/listinfo/infinispan-<wbr>dev</a><br>
<br>
<br>
--<br>
Radim Vansa <<a href="mailto:rvansa@redhat.com">rvansa@redhat.com</a>><br>
JBoss Performance Team<br>
<br>
______________________________<wbr>_________________<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" rel="noreferrer" target="_blank">https://lists.jboss.org/<wbr>mailman/listinfo/infinispan-<wbr>dev</a><br>
</div></div></blockquote></div><br></div></div>