[
https://issues.apache.org/jira/browse/IGNITE-12322?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alexander Lapin resolved IGNITE-12322.
--------------------------------------
Resolution: Duplicate
Duplicate of https://issues.apache.org/jira/browse/IGNITE-12036
> 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)