On Feb 18, 2014, at 12:02 PM, Adrian Nistor <anis...@redhat.com> wrote:
> Well, OGM and Infinispan are different species :) So, Infinispan being what > it is today - a non-homogenous, schema-less KV store, without support for > entity associations (except embedding) - which simplifies the whole thing a > lot, should we or should we not provide transparent cross-cacheManager search > capabilities, in this exact context? Vote? TBH I think users should push us for this if they need it. -1 to do it right now. > > There were some points raised previously like "if you search for more than > one cache transparently, then you probably need to CRUD for more than one > cache transparently as well". In the SQL world you would also probably CRUD > against a table or set of tables and then query against a view - a bit like > what we're doing here. > I don't see any problem with this in principle. There is however something > currently missing in the query result set API - it currently does not provide > you the keys of the matching entities. would be nice to have an option for that, indeed. > People work around this by storing the key in the entity. Now with the > addition of the cross-cacheManager search we'll probably need to fix the > result api and also provide a reference to the cache (or just the name?) > where the entity is stored. > > The (enforced) one entity type per cache rule is not conceptually or > technically required for implementing this, so I won't start raving against > it :) Sane users should apply it however. > > > On 02/18/2014 12:13 AM, Emmanuel Bernard wrote: >> By the way, Mircea, Sanne and I had quite a long discussion about this one >> and the idea of one cache per entity. It turns out that the right (as in >> easy) solution does involve a higher level programming model like OGM >> provides. You can simulate it yourself using the Infinispan APIs but it is >> just cumbersome. >> >> >>> On 17 févr. 2014, at 18:51, Emmanuel Bernard <emman...@hibernate.org> >>> wrote: >>> >>> >>>> On Mon 2014-02-17 18:43, Galder Zamarreño wrote: >>>> >>>> >>>>> On 05 Feb 2014, at 17:30, Emmanuel Bernard <emman...@hibernate.org> >>>>> wrote: >>>>> >>>>> >>>>>> On Wed 2014-02-05 15:53, Mircea Markus wrote: >>>>>> >>>>>> >>>>>>> On Feb 3, 2014, at 9:32 AM, Emmanuel Bernard <emman...@hibernate.org> >>>>>>> wrote: >>>>>>> >>>>>>> Sure searching for any cache is useful. What I was advocating is that >>>>>>> if you search for more than one cache transparently, then you probably >>>>>>> need to CRUD for more than one cache transparently as well. And this is >>>>>>> not being discussed. >>>>>>> >>>>>> Not sure what you mean by CRUD over multiple caches? ATM one can run a >>>>>> TX over multiple caches, but I think there's something else you have in >>>>>> mind :-) >>>>>> >>>>> >>>>> //some unified query giving me entries pointing by fk copy to bar and >>>>> //buz objects. So I need to manually load these references. >>>>> >>>>> //happy emmanuel >>>>> Cache unifiedCache = cacheManager.getMotherOfAllCaches(); >>>>> Bar bar = unifiedCache.get(foo); >>>>> Buz buz = unifiedCache.get(baz); >>>>> >>>>> //not so happy emmanuel >>>>> Cache fooCache = cacheManager.getCache("foo"); >>>>> Bar bar = fooCache.get(foo); >>>>> Cache bazCache = cacheManager.getCache("baz"); >>>>> Buz buz = bazCache.put(baz); >>>>> >>>> Would something like what Paul suggests in >>>> https://issues.jboss.org/browse/ISPN-3640 >>>> help you better? IOW, have a single cache, and then have a filtered view >>>> for Bar or Buz types? Not sure I understand the differences in your code >>>> changes in terms of what makes you happy vs not. >>>> >>> Not really. >>> What makes me unhappy is to have to keep in my app all the >>> references to these specific cache store instances. The filtering >>> approach only moves the problem. >>> _______________________________________________ >>> infinispan-dev mailing list >>> >>> infinispan-dev@lists.jboss.org >>> https://lists.jboss.org/mailman/listinfo/infinispan-dev >> _______________________________________________ >> infinispan-dev mailing list >> >> infinispan-dev@lists.jboss.org >> https://lists.jboss.org/mailman/listinfo/infinispan-dev > Cheers, -- Mircea Markus Infinispan lead (www.infinispan.org) _______________________________________________ infinispan-dev mailing list infinispan-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/infinispan-dev