Partition map exchange is an absolutely necessary procedure, that cannot be disabled. Functionality of all caches depend on it.
I checked, and a cache destruction is performed as a part of a partition map exchange, and not the opposite. If you see, that nodes join the cluster fast, but cache destruction is slow, then exchange is not the reason of the slowness, since PME also happens every time when nodes join and leave the cluster. How much data do you have in the cache? Cache destruction requires iteration over the whole dataset, so it may take quite a while. Denis On 20 Aug 2019, 08:47 +0300, Shravya Nethula <[email protected]>, wrote: > Hi Denis, > > I have enabled the INFO logs and tried to delete a cache. Please find the > logs below: > > Aug 20, 2019 11:00:17 AM org.apache.ignite.logger.java.JavaLogger info > INFO: Stopped cache [cacheName=Person] > cache deleted in:17280 ms ---->>> This is a print statement from our code > Aug 20, 2019 11:00:17 AM org.apache.ignite.logger.java.JavaLogger info > INFO: Completed partition exchange > [localNode=90c11807-ac10-43a6-b7b6-605d5c07314d, > exchange=GridDhtPartitionsExchangeFuture [topVer=AffinityTopologyVersion > [topVer=5891, minorTopVer=2], evt=DISCOVERY_CUSTOM_EVT, > evtNode=TcpDiscoveryNode [id=90c11807-ac10-43a6-b7b6-605d5c07314d, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.116, 192.168.1.249], > sockAddrs=[device-shravya-hp/192.168.1.249:0, /0:0:0:0:0:0:0:1%lo:0, > /127.0.0.1:0, /192.168.1.116:0], discPort=0, order=5890, intOrder=0, > lastExchangeTime=1566278969558, loc=true, ver=2.7.0#20181201-sha1:256ae401, > isClient=true], done=true], topVer=AffinityTopologyVersion [topVer=5891, > minorTopVer=2], durationFromInit=16882] > Aug 20, 2019 11:00:17 AM org.apache.ignite.logger.java.JavaLogger info > > It looks like partition exchange is taking more time. How can this be avoided? > What is the importance of Partition exchange? > > > Regards, > Shravya Nethula. > > From: Shravya Nethula <[email protected]> > Sent: Monday, August 19, 2019 6:06:36 PM > To: [email protected] <[email protected]> > Subject: Re: IgniteCache.destroy() taking long time > > > The following is the cache configuration: > > CacheConfiguration cacheCfg = new CacheConfiguration(tableName); > cacheCfg.setCacheMode(CacheMode.PARTITIONED); > cacheCfg.setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL); > cacheCfg.setBackups(1); > > cacheCfg.setWriteSynchronizationMode(CacheWriteSynchronizationMode.PRIMARY_SYNC); > cacheCfg.setRebalanceBatchSize(1024 * 1024 * 4); > cacheCfg.setRebalanceMode(CacheRebalanceMode.ASYNC); > cacheCfg.setStatisticsEnabled(true); > cacheCfg.setRebalanceDelay(100); > cacheCfg.setDefaultLockTimeout(5000); > cacheCfg.setReadFromBackup(true); > cacheCfg.setQueryParallelism(16); > cacheCfg.setRebalanceBatchesPrefetchCount(4); > cacheCfg.setNodeFilter(new AttributeNodeFilter("ROLE", "data.compute")); > > There are 2 nodes in our cluster. > > From: Alexander Kor <[email protected]> > Sent: Wednesday, August 14, 2019 8:41:31 PM > To: [email protected] <[email protected]> > Subject: Re: IgniteCache.destroy() taking long time > > Hi, > Can you please share your cache configuration. How many nodes do you > have in your cluster? > If you are running in PARTITONED mode then some exchange of information > will occur. > More details here: https://apacheignite.readme.io/docs/cache-modes > Do you have a reproducer project? > Thanks, Alex > > > On Wed, Aug 14, 2019 at 1:22 AM Shravya Nethula > <[email protected]> wrote: > > Hi, > > > > I have created a cache using the following API: > > IgniteCache<String, Object> cache = (IgniteCache<String, Object>) > > ignite.getOrCreateCache(cacheCfg); > > > > Now when i try to delete the cache using IgniteCache.destroy() API, it is > > taking about 12-13 seconds. > > > > Why is it taking more execution time? Will there be any exchange of cache > > information among the nodes whenever a cache is deleted? > > Is there any way in which, the execution time can be optimized? > > > > Regards, > > Shravya Nethula. > > > > > > Regards, > > Shravya Nethula, > > BigData Developer, > > > > Hyderabad.
