[ 
https://issues.apache.org/jira/browse/IGNITE-12322?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Maxim Muzafarov updated IGNITE-12322:
-------------------------------------
    Ignite Flags: Release Notes Required  (was: Docs Required,Release Notes 
Required)

> Changing baseline via set command may cause NPEs if configured NodeFilter 
> takes node attributes into account
> ------------------------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-12322
>                 URL: https://issues.apache.org/jira/browse/IGNITE-12322
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Alexander Lapin
>            Assignee: Alexander Lapin
>            Priority: Major
>             Fix For: 2.8
>
>
> VisorBaselineTask doesn't allow to add() offline baseline node, but allows to 
> set() collection of nodes where at least one is offline and doesn’t belong to 
> current BLT. 
> We should prohibit passing offline nodes to setBaselineTopology(…) (in case 
> they are not part of current BLT): otherwise we won't be able to calculate 
> affinity in case NodeFilter is configured.
> {code:java}
> 2019-07-16 13:38:01.658 ERROR 16507 --- [exchange-worker-#165] 
> .c.d.d.p.GridDhtPartitionsExchangeFuture : Failed to reinitialize local 
> partitions (rebalancing will be stopped): GridDhtPartitionExchangeId 
> [topVer=AffinityTopologyVersion [topVer=481, minorTopVer=1], 
> discoEvt=DiscoveryEvent [evtNode=TcpDiscoveryNode 
> [id=e53b5aca-9432-4cbe-9626-da480b86d417, addrs=ArrayList [10.12.85.13, 
> 127.0.0.1], sockAddrs=HashSet [lpposput50143.phx.aexp.com/10.12.85.13:47550, 
> /127.0.0.1:47550], discPort=47550, order=288, intOrder=148, 
> lastExchangeTime=1563309481590, loc=true, ver=2.5.7#20190326-sha1:b45b8438, 
> isClient=false], topVer=481, nodeId8=e53b5aca, msg=null, 
> type=DISCOVERY_CUSTOM_EVT, tstamp=1563309481580]DiscoveryCustomEvent 
> [customMsg=ChangeGlobalStateMessage 
> [id=bb76b94db61-f4fff892-04f6-4153-9210-1a19749fec35, 
> reqId=1b5cae87-ad46-4d62-8525-bc1a5015b0d8, 
> initiatingNodeId=e53b5aca-9432-4cbe-9626-da480b86d417, activate=true, 
> baselineTopology=BaselineTopology [id=3, branchingHash=-1403071463, 
> branchingType='New BaselineTopology', 
> baselineNodes=[/dev/shm/ignite/storagepath/lpposput50142.phx.aexp.com, 
> /dev/shm/ignite/storagepath/lpposput50143.phx.aexp.com, 
> /dev/shm/ignite/storagepath/lpposput50133.phx.aexp.com, 
> /dev/shm/ignite/storagepath/lpposput50134.phx.aexp.com, 
> /dev/shm/ignite/storagepath/lpposput50141.phx.aexp.com, 
> /dev/shm/ignite/storagepath/lpposput50140.phx.aexp.com]], 
> forceChangeBaselineTopology=true, timestamp=1563309481551], 
> affTopVer=AffinityTopologyVersion [topVer=481, minorTopVer=1], super=], 
> nodeId=e53b5aca, evt=DISCOVERY_CUSTOM_EVT]
> java.lang.NullPointerException: null
>       at 
> org.apache.ignite.internal.cluster.DetachedClusterNode.attribute(DetachedClusterNode.java:69)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>       at com.aexp.rc.ignite.CacheNodeFilter.apply(CacheNodeFilter.java:14) 
> ~[classes!/:0.1.0-SNAPSHOT]
>       at com.aexp.rc.ignite.CacheNodeFilter.apply(CacheNodeFilter.java:6) 
> ~[classes!/:0.1.0-SNAPSHOT]
>       at 
> org.apache.ignite.internal.processors.cache.GridCacheUtils.affinityNode(GridCacheUtils.java:1362)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>       at 
> org.apache.ignite.internal.processors.cluster.BaselineTopology.createBaselineView(BaselineTopology.java:331)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>       at 
> org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.calculate(GridAffinityAssignmentCache.java:347)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>       at 
> org.apache.ignite.internal.processors.cache.CacheAffinitySharedManager$15.applyx(CacheAffinitySharedManager.java:1899)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>       at 
> org.apache.ignite.internal.processors.cache.CacheAffinitySharedManager$15.applyx(CacheAffinitySharedManager.java:1895)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>       at 
> org.apache.ignite.internal.processors.cache.CacheAffinitySharedManager.lambda$forAllRegisteredCacheGroups$e0a6939d$1(CacheAffinitySharedManager.java:1268)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>       at 
> org.apache.ignite.internal.util.IgniteUtils.lambda$null$1(IgniteUtils.java:10529)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>       at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
> ~[na:1.8.0_161]
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>  ~[na:1.8.0_161]
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>  ~[na:1.8.0_161]
>       at java.lang.Thread.run(Thread.java:748) [na:1.8.0_161]
>       Suppressed: java.lang.NullPointerException: null
>               ... 14 common frames omitted
>       Suppressed: java.lang.NullPointerException: null
>               ... 14 common frames omitted
>       Suppressed: java.lang.NullPointerException: null
>               ... 14 common frames omitted
>       Suppressed: java.lang.NullPointerException: null
>               ... 14 common frames omitted
>       Suppressed: java.lang.NullPointerException: null
>               ... 14 common frames omitted
>       Suppressed: java.lang.NullPointerException: null
>               at 
> org.apache.ignite.internal.cluster.DetachedClusterNode.attribute(DetachedClusterNode.java:69)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>               at 
> com.aexp.rc.ignite.CacheNodeFilter.apply(CacheNodeFilter.java:14) 
> ~[classes!/:0.1.0-SNAPSHOT]
>               at 
> com.aexp.rc.ignite.CacheNodeFilter.apply(CacheNodeFilter.java:6) 
> ~[classes!/:0.1.0-SNAPSHOT]
>               at 
> org.apache.ignite.internal.processors.cache.GridCacheUtils.affinityNode(GridCacheUtils.java:1362)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>               at 
> org.apache.ignite.internal.processors.cluster.BaselineTopology.createBaselineView(BaselineTopology.java:331)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>               at 
> org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.calculate(GridAffinityAssignmentCache.java:347)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>               at 
> org.apache.ignite.internal.processors.cache.CacheAffinitySharedManager$15.applyx(CacheAffinitySharedManager.java:1899)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>               at 
> org.apache.ignite.internal.processors.cache.CacheAffinitySharedManager$15.applyx(CacheAffinitySharedManager.java:1895)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>               at 
> org.apache.ignite.internal.processors.cache.CacheAffinitySharedManager.lambda$forAllRegisteredCacheGroups$e0a6939d$1(CacheAffinitySharedManager.java:1268)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>               at 
> org.apache.ignite.internal.util.IgniteUtils.doInParallel(IgniteUtils.java:10548)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>               at 
> org.apache.ignite.internal.util.IgniteUtils.doInParallel(IgniteUtils.java:10471)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>               at 
> org.apache.ignite.internal.processors.cache.CacheAffinitySharedManager.forAllRegisteredCacheGroups(CacheAffinitySharedManager.java:1267)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>               at 
> org.apache.ignite.internal.processors.cache.CacheAffinitySharedManager.onCentralizedAffinityChange(CacheAffinitySharedManager.java:1895)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>               at 
> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:760)
>  ~[ignite-core-2.5.7.jar!/:2.5.7]
>               at 
> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body0(GridCachePartitionExchangeManager.java:2825)
>  [ignite-core-2.5.7.jar!/:2.5.7]
>               at 
> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:2682)
>  [ignite-core-2.5.7.jar!/:2.5.7]
>               at 
> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) 
> [ignite-core-2.5.7.jar!/:2.5.7]
>               ... 1 common frames omitted
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to