Thanks Val! Can you explain more detail how "invoke" works internally comparing with put operation. For we pass a "function" to ignite.
I see below Java Doc about "invoke" * An instance of entry processor must be stateless as it may be invoked multiple times on primary and * backup nodes in the cache. It is guaranteed that the value passed to the entry processor will be always * the same. My question: can we use *outer* object in the function process of EntryProcessor which is visible in its scope? More complex, how to iterate, just like in my code? Thanks Shawn -----邮件原件----- 发件人: vkulichenko [mailto:valentin.kuliche...@gmail.com] 发送时间: 2016年12月22日 2:52 收件人: user@ignite.apache.org 主题: Re: Cache.invoke are terribly slow and can't update cache Hi Shawn, Cache is not updated because you never update it :) i.e. entry.setValue() is never called. Bad performance can be caused by the fact that you do multiple operations one after another in a single thread without any batching. Consider using invokeAll or IgniteDataStreamer. As for OOME, it's hard to tell what's causing it. Did you look at the heap dump? -Val -- View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Cache-invoke-are-terribly-slo w-and-can-t-update-cache-tp9676p9685.html Sent from the Apache Ignite Users mailing list archive at Nabble.com.