[ https://issues.apache.org/jira/browse/IGNITE-23245?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17898485#comment-17898485 ]
Evgeny Stanilovsky commented on IGNITE-23245: --------------------------------------------- Why this issue is marked as improvement ? It`s a bug as for me. > Placement driver returns assignments only in MS nodes > ----------------------------------------------------- > > Key: IGNITE-23245 > URL: https://issues.apache.org/jira/browse/IGNITE-23245 > Project: Ignite > Issue Type: Improvement > Reporter: Vladislav Pyatkov > Assignee: Denis Chudov > Priority: Major > Labels: ignite-3 > > h3. Motivation > The placement driver may be used from any nodes, but part of their method > (they are declared in AssignmentsPlacementDriver interface) returns the > correct value only in Meta storage nodes. It is just because the assignments > are tracked only in MS nodes: > {code:java} > placementDriverNodesNamesProvider.get() > .thenCompose(placementDriverNodes -> { > String thisNodeName = > clusterService.topologyService().localMember().name(); > if (!placementDriverNodes.contains(thisNodeName)) { > return nullCompletedFuture(); > } > try { > leaseUpdater.init(); > return raftManager.startRaftGroupService( > replicationGroupId, > PeersAndLearners.fromConsistentIds(placementDriverNodes), > topologyAwareRaftGroupServiceFactory, > null // Use default commands marshaller. > ).thenCompose(client -> > client.subscribeLeader(this::onLeaderChange).thenApply(v -> client)); > } catch (NodeStoppingException e) { > return failedFuture(e); > } > }) > {code} > {code:java} > public void init() { > topologyTracker.startTrack(); > assignmentsTracker.startTrack(); > } > {code} > h3. Implementation notesĀ > I assume we could get rid of using a primary replica instead of assignment in > the SQL module (ExecutionTargetProviderImpl#allReplicas) right after the fix > would have been completed. > It would be great to fix it in this patch and prove it by the green viza. > h3. Definition of done > We ought to start the assignment tracker in all nodes to make all methods > available in any cluster node. -- This message was sent by Atlassian Jira (v8.20.10#820010)