I am testing IndexingSpi in cluster of 2 nodes for the the following cache
config:
private IgniteCache<String, BinaryObject> createCache() {
CacheConfiguration<String, BinaryObject> cCfg = new
CacheConfiguration<>();
cCfg.setName("MyCache");
cCfg.setStoreKeepBinary(true);
cCfg.setCacheMode(CacheMode.PARTITIONED);
cCfg.setOnheapCacheEnabled(false);
cCfg.setCopyOnRead(false);
cCfg.setBackups(1);
cCfg.setWriteBehindEnabled(false);
cCfg.setReadThrough(false);
return ignite.getOrCreateCache(cCfg).withKeepBinary();
}
I have observed that method org.apache.ignite.spi.indexing.IndexingSpi#store
is called for all keys, both primay and backup,
resulting in both nodes having built duplicated index. In addition,
org.apache.ignite.spi.indexing.IndexingSpi#remove is not called when the
keys migrate to another node (for example due to second node joining the
cluster).
Is that by design or rather a bug? I would expect the receive remove()
callback when primary keys migrate from the node, so I can free resources
occupied by corresponding index.
Thank you in advance for your help,
zbyszek
--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/