Andrey, Loading from cache store is usually used only for initial data load, so it's safe to do it only after nodes started and before any other cache operations (puts, transactions, etc.) are performed. Topology should be also stable - if a node joins or fails during the process, most likely you will have to restart it to make sure data is consistent. It works this way because loading from store is supposed to run only once. After it's completed, you can safely change topology - rebalancing will guarantee data consistency even if it happens concurrently with cache updates. If this doesn't work for you, I would recommend to use IgniteDataStreamer instead and load data from a designated client node. This approach is more centralized and allows to load the data concurrently with updates and topology changes.
To trigger preloading from store simply execute IgniteCache.loadCache() method, it will initiate the process on all nodes. The process itself is the same for partitioned and replicated caches.d When loading data, a node stores entries that are primary OR backup for this node. Since replicated cache always has as many backups as many nodes in topology, nothing is discarded, while with partitioned cache a node will save only part of the data. Makes sense? -Val -- View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Cache-preloading-tp1206p1231.html Sent from the Apache Ignite Users mailing list archive at Nabble.com.
