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

ASF GitHub Bot commented on IGNITE-8324:
----------------------------------------

GitHub user Jokser opened a pull request:

    https://github.com/apache/ignite/pull/3880

    IGNITE-8324 Update discovery cache as well as topology version

    

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/gridgain/apache-ignite ignite-8324

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/ignite/pull/3880.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #3880
    
----
commit df540e065c344444ea80fe6c6e874521cd130879
Author: Pavel Kovalenko <jokserfn@...>
Date:   2018-04-19T15:12:06Z

    IGNITE-8324 Update discovery caches as well as topology version. Remove 
unnecessary `updateTopologies` calls.

----


> Ignite Cache Restarts 1 suite hangs with assertion error
> --------------------------------------------------------
>
>                 Key: IGNITE-8324
>                 URL: https://issues.apache.org/jira/browse/IGNITE-8324
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>    Affects Versions: 2.4
>            Reporter: Pavel Kovalenko
>            Assignee: Pavel Kovalenko
>            Priority: Major
>              Labels: MakeTeamcityGreenAgain
>             Fix For: 2.5
>
>
> {noformat}
> [ERROR][exchange-worker-#620749%replicated.GridCacheReplicatedNodeRestartSelfTest0%][GridDhtPartitionsExchangeFuture]
>  Failed to notify listener: 
> o.a.i.i.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture$2@6dd7cc93
> java.lang.AssertionError: Invalid topology version [grp=ignite-sys-cache, 
> topVer=AffinityTopologyVersion [topVer=323, minorTopVer=0], 
> exchTopVer=AffinityTopologyVersion [topVer=322, minorTopVer=0], 
> discoCacheVer=AffinityTopologyVersion [topVer=322, minorTopVer=0], 
> exchDiscoCacheVer=AffinityTopologyVersion [topVer=323, minorTopVer=0], 
> fut=GridDhtPartitionsExchangeFuture [firstDiscoEvt=DiscoveryEvent 
> [evtNode=TcpDiscoveryNode [id=48a5d243-7f63-4069-aba1-868c68900005, 
> addrs=[127.0.0.1], sockAddrs=[/127.0.0.1:47503], discPort=47503, order=322, 
> intOrder=163, lastExchangeTime=1524043684082, loc=false, 
> ver=2.5.0#20180417-sha1:56be24b9, isClient=false], topVer=322, 
> nodeId8=b51b3893, msg=Node joined: TcpDiscoveryNode 
> [id=48a5d243-7f63-4069-aba1-868c68900005, addrs=[127.0.0.1], 
> sockAddrs=[/127.0.0.1:47503], discPort=47503, order=322, intOrder=163, 
> lastExchangeTime=1524043684082, loc=false, ver=2.5.0#20180417-sha1:56be24b9, 
> isClient=false], type=NODE_JOINED, tstamp=1524043684166], 
> crd=TcpDiscoveryNode [id=b51b3893-377a-465f-88ea-316a65600000, 
> addrs=[127.0.0.1], sockAddrs=[/127.0.0.1:47500], discPort=47500, order=1, 
> intOrder=1, lastExchangeTime=1524043633288, loc=true, 
> ver=2.5.0#20180417-sha1:56be24b9, isClient=false], 
> exchId=GridDhtPartitionExchangeId [topVer=AffinityTopologyVersion 
> [topVer=322, minorTopVer=0], discoEvt=DiscoveryEvent 
> [evtNode=TcpDiscoveryNode [id=48a5d243-7f63-4069-aba1-868c68900005, 
> addrs=[127.0.0.1], sockAddrs=[/127.0.0.1:47503], discPort=47503, order=322, 
> intOrder=163, lastExchangeTime=1524043684082, loc=false, 
> ver=2.5.0#20180417-sha1:56be24b9, isClient=false], topVer=322, 
> nodeId8=b51b3893, msg=Node joined: TcpDiscoveryNode 
> [id=48a5d243-7f63-4069-aba1-868c68900005, addrs=[127.0.0.1], 
> sockAddrs=[/127.0.0.1:47503], discPort=47503, order=322, intOrder=163, 
> lastExchangeTime=1524043684082, loc=false, ver=2.5.0#20180417-sha1:56be24b9, 
> isClient=false], type=NODE_JOINED, tstamp=1524043684166], nodeId=48a5d243, 
> evt=NODE_JOINED], added=true, initFut=GridFutureAdapter 
> [ignoreInterrupts=false, state=DONE, res=true, hash=527135060], init=true, 
> lastVer=GridCacheVersion [topVer=135523955, order=1524043694535, 
> nodeOrder=3], partReleaseFut=PartitionReleaseFuture 
> [topVer=AffinityTopologyVersion [topVer=322, minorTopVer=0], 
> futures=[ExplicitLockReleaseFuture [topVer=AffinityTopologyVersion 
> [topVer=322, minorTopVer=0], futures=[]], AtomicUpdateReleaseFuture 
> [topVer=AffinityTopologyVersion [topVer=322, minorTopVer=0], futures=[]], 
> DataStreamerReleaseFuture [topVer=AffinityTopologyVersion [topVer=322, 
> minorTopVer=0], futures=[]], LocalTxReleaseFuture 
> [topVer=AffinityTopologyVersion [topVer=322, minorTopVer=0], futures=[]], 
> AllTxReleaseFuture [topVer=AffinityTopologyVersion [topVer=322, 
> minorTopVer=0], futures=[RemoteTxReleaseFuture 
> [topVer=AffinityTopologyVersion [topVer=322, minorTopVer=0], futures=[]]]]]], 
> exchActions=null, affChangeMsg=null, initTs=1524043684166, 
> centralizedAff=false, forceAffReassignment=false, changeGlobalStateE=null, 
> done=false, state=CRD, evtLatch=0, remaining=[], super=GridFutureAdapter 
> [ignoreInterrupts=false, state=INIT, res=null, hash=1570781250]]]
>       at 
> org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtPartitionTopologyImpl.updateTopologyVersion(GridDhtPartitionTopologyImpl.java:257)
>       at 
> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.updateTopologies(GridDhtPartitionsExchangeFuture.java:845)
>       at 
> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.onAllReceived(GridDhtPartitionsExchangeFuture.java:2461)
>       at 
> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.processSingleMessage(GridDhtPartitionsExchangeFuture.java:2200)
>       at 
> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.access$100(GridDhtPartitionsExchangeFuture.java:127)
>       at 
> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture$2.apply(GridDhtPartitionsExchangeFuture.java:2057)
>       at 
> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture$2.apply(GridDhtPartitionsExchangeFuture.java:2045)
>       at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.notifyListener(GridFutureAdapter.java:383)
>       at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.unblock(GridFutureAdapter.java:347)
>       at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.unblockAll(GridFutureAdapter.java:335)
>       at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.onDone(GridFutureAdapter.java:495)
>       at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.onDone(GridFutureAdapter.java:474)
>       at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.onDone(GridFutureAdapter.java:451)
>       at 
> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.initDone(GridDhtPartitionsExchangeFuture.java:3310)
>       at 
> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.distributedExchange(GridDhtPartitionsExchangeFuture.java:1152)
>       at 
> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:712)
>       at 
> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body0(GridCachePartitionExchangeManager.java:2414)
>       at 
> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:2294)
>       at 
> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
>       at java.lang.Thread.run(Thread.java:745)
> {noformat}
> Fix: In case of merged exchanges we should use result topology version 
> (instead of initial) on coordinator during updating topologies after merge.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to