[ 
https://issues.apache.org/jira/browse/IGNITE-3222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15312575#comment-15312575
 ] 

Pavel Tupitsyn edited comment on IGNITE-3222 at 6/2/16 4:21 PM:
----------------------------------------------------------------

> _I don't think it is a common task at all_
This task is essentially "UPDATE myTable WHERE ..." in SQL world, and it is 
very useful:
* Move employees from one department to another
* Raise salary for all employees
* Remove all cached entries that depend on SQL table when the table has been 
updated (my use case for Entity Framework caching)
I think there were a couple of user list questions about that.

> _It is not the same as getAll(..) on QueryCursor, because the cursor offers a 
> paginated result_
I don't think so: QueryCursor returns ALL query results in a list. If the query 
contains a lot of data, it will cause OOM.


was (Author: ptupitsyn):
> *I don't think it is a common task at all*
This task is essentially "UPDATE myTable WHERE ..." in SQL world, and it is 
*very* useful:
* Move employees from one department to another
* Raise salary for all employees
* Remove all cached entries that depend on SQL table when the table has been 
updated (my use case for Entity Framework caching)
I think there were a couple of user list questions about that.

> *It is not the same as getAll(..) on QueryCursor, because the cursor offers a 
> paginated result*
I don't think so: QueryCursor returns ALL query results in a list. If the query 
contains a lot of data, it will cause OOM.

> IgniteCache.invokeAll for all cache entries
> -------------------------------------------
>
>                 Key: IGNITE-3222
>                 URL: https://issues.apache.org/jira/browse/IGNITE-3222
>             Project: Ignite
>          Issue Type: Task
>          Components: cache
>    Affects Versions: 1.1.4
>            Reporter: Pavel Tupitsyn
>             Fix For: 1.7
>
>
> Implement an invokeAll overload that processes all cache keys (not some 
> specific set).
> Proposed signature:
> {code}
> public void invokeAll(CacheEntryProcessor<K, V, T> entryProcessor, Object... 
> args);
> public <T> Map<K, EntryProcessorResult<T>> invokeAll(CacheEntryProcessor<K, 
> V, T> entryProcessor, boolean returnAffectedOnly, Object... args);
> {code}
> This will apply the specified processor to all cache entries.
> First method does not return anything.
> Second method either returns all results for all entries, or only for entries 
> that have been changed by the processor in any way.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to