You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by na...@apache.org on 2025/02/21 10:31:06 UTC
(ignite) branch master updated: IGNITE-24568 Fixed an assertion error on the cluster state command (#11889)
This is an automated email from the ASF dual-hosted git repository.
namelchev pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git
The following commit(s) were added to refs/heads/master by this push:
new a033e215278 IGNITE-24568 Fixed an assertion error on the cluster state command (#11889)
a033e215278 is described below
commit a033e215278add6109192c7ed15e1525adafd667
Author: Nikita Amelchev <ns...@gmail.com>
AuthorDate: Fri Feb 21 13:30:57 2025 +0300
IGNITE-24568 Fixed an assertion error on the cluster state command (#11889)
---
.../java/org/apache/ignite/util/GridCommandHandlerTest.java | 4 +++-
.../org/apache/ignite/internal/management/StateCommand.java | 4 ++--
.../management/cache/CacheConfigurationCollectorTask.java | 6 +++---
.../org/apache/ignite/internal/visor/VisorOneNodeTask.java | 11 +++++++++++
4 files changed, 19 insertions(+), 6 deletions(-)
diff --git a/modules/control-utility/src/test/java/org/apache/ignite/util/GridCommandHandlerTest.java b/modules/control-utility/src/test/java/org/apache/ignite/util/GridCommandHandlerTest.java
index c9fd80c9cc4..48172e9f57c 100644
--- a/modules/control-utility/src/test/java/org/apache/ignite/util/GridCommandHandlerTest.java
+++ b/modules/control-utility/src/test/java/org/apache/ignite/util/GridCommandHandlerTest.java
@@ -1108,7 +1108,9 @@ public class GridCommandHandlerTest extends GridCommandHandlerClusterPerMethodAb
public void testState() throws Exception {
final String newTag = "new_tag";
- Ignite ignite = startGrids(1);
+ Ignite ignite = startGrids(2);
+
+ startClientGrid("client");
assertFalse(ignite.cluster().state().active());
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/StateCommand.java b/modules/core/src/main/java/org/apache/ignite/internal/management/StateCommand.java
index 2c7d5875a27..45c3b8fe70a 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/management/StateCommand.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/management/StateCommand.java
@@ -31,7 +31,7 @@ import org.apache.ignite.internal.visor.misc.VisorIdAndTagViewTask;
import org.apache.ignite.internal.visor.misc.VisorIdAndTagViewTaskResult;
import org.jetbrains.annotations.Nullable;
-import static org.apache.ignite.internal.management.api.CommandUtils.nodes;
+import static java.util.Collections.singleton;
import static org.apache.ignite.internal.util.typedef.internal.U.DELIM;
/** */
@@ -59,7 +59,7 @@ public class StateCommand implements LocalCommand<NoArg, GridTuple3<UUID, String
if (client != null) {
VisorIdAndTagViewTaskResult idAndTag = CommandUtils.execute(client, null,
- VisorIdAndTagViewTask.class, null, nodes(client, ignite));
+ VisorIdAndTagViewTask.class, null, singleton(client.cluster().forServers().node()));
state = client.cluster().state();
id = idAndTag.id();
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheConfigurationCollectorTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheConfigurationCollectorTask.java
index 19e299faebd..f5dac465052 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheConfigurationCollectorTask.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheConfigurationCollectorTask.java
@@ -24,15 +24,15 @@ import java.util.Map;
import org.apache.ignite.IgniteException;
import org.apache.ignite.compute.ComputeJobResult;
import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.visor.VisorOneNodeTask;
+import org.apache.ignite.internal.visor.VisorMultiNodeTask;
import org.jetbrains.annotations.Nullable;
/**
* Task that collect cache metrics from all nodes.
*/
@GridInternal
-public class CacheConfigurationCollectorTask
- extends VisorOneNodeTask<CacheConfigurationCollectorTaskArg, Map<String, CacheConfiguration>> {
+public class CacheConfigurationCollectorTask extends VisorMultiNodeTask<CacheConfigurationCollectorTaskArg,
+ Map<String, CacheConfiguration>, Map<String, CacheConfiguration>> {
/** */
private static final long serialVersionUID = 0L;
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/visor/VisorOneNodeTask.java b/modules/core/src/main/java/org/apache/ignite/internal/visor/VisorOneNodeTask.java
index e9928750564..505e615654d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/visor/VisorOneNodeTask.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/visor/VisorOneNodeTask.java
@@ -17,7 +17,9 @@
package org.apache.ignite.internal.visor;
+import java.util.Collection;
import java.util.List;
+import java.util.UUID;
import org.apache.ignite.compute.ComputeJobResult;
import org.jetbrains.annotations.Nullable;
@@ -25,6 +27,15 @@ import org.jetbrains.annotations.Nullable;
* Base class for Visor tasks intended to query data from a single node.
*/
public abstract class VisorOneNodeTask<A, R> extends VisorMultiNodeTask<A, R, R> {
+ /** {@inheritDoc} */
+ @Override protected Collection<UUID> jobNodes(VisorTaskArgument<A> arg) {
+ Collection<UUID> nodes = super.jobNodes(arg);
+
+ assert nodes.size() == 1 : nodes;
+
+ return nodes;
+ }
+
/** {@inheritDoc} */
@Nullable @Override protected R reduce0(List<ComputeJobResult> results) {
assert results.size() == 1;