]
Gustavo Fernandes closed ISPN-951.
----------------------------------
Resolution: Duplicate Issue
Infinispan Query module should load entities using getAll
---------------------------------------------------------
Key: ISPN-951
URL:
https://issues.jboss.org/browse/ISPN-951
Project: Infinispan
Issue Type: Enhancement
Components: Embedded Querying
Reporter: Sanne Grinovero
Assignee: Gustavo Fernandes
Ideally we should use a method like {{List getAll(Object[] keys)}} from Infinispan core,
but that doesn't exist yet. Such a method would be able to split the keys in such a
way to minimize the number of RPCs needed to "cover" the set of all segments
needed to satisfy the query, so to find the minimum set of nodes available which need to
be contacted to retrieve all entries.
Loading of each entry doesn't necessarily need to happen sequentially, I guess the
minimum set of RPCs should be executed in parallel, then we block until they are all
returned and need to restore the order of the list (the order of the return elements need
to match the order of their respective keys from the parameter).
We should implement such a method, or until that's possible it might be easier to run
each individual get in a {{getAsync}} so that the latency of a Query returning for example
100 entries doesn't scale up to 100 sequential RPCs.
Requires migration to new Loader API from Hibernate Search.