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 16b2edd8392 IGNITE-21110 Added the management event to all management commands (#11121) 16b2edd8392 is described below commit 16b2edd8392a6787f316d748f1ca3a6b0d176b98 Author: Nikita Amelchev <nsamelc...@gmail.com> AuthorDate: Wed Feb 7 13:01:13 2024 +0300 IGNITE-21110 Added the management event to all management commands (#11121) --- .../internal/management/ClusterChangeTagTask.java | 2 - .../internal/management/ShutdownPolicyTask.java | 2 - .../ignite/internal/management/SystemViewTask.java | 2 - .../internal/management/api/CommandUtils.java | 4 +- .../internal/management/api/ComputeCommand.java | 5 +- .../internal/management/baseline/BaselineTask.java | 2 - .../management/cache/CacheMetricsTask.java | 3 +- .../internal/management/cache/CacheScanTask.java | 2 - .../internal/management/cache/CacheStopTask.java | 2 - .../defragmentation/DefragmentationTask.java | 2 - .../management/kill/CancelServiceTask.java | 2 - .../management/kill/ClientConnectionDropTask.java | 2 - .../management/kill/ComputeCancelSessionTask.java | 2 - .../management/kill/ContinuousQueryCancelTask.java | 2 - .../kill/QueryCancelOnInitiatorTask.java | 2 - .../management/kill/ScanQueryCancelTask.java | 2 - .../internal/management/metric/MetricTask.java | 2 - .../PerformanceStatisticsTask.java | 2 - .../management/persistence/PersistenceTask.java | 3 +- .../tracing/TracingConfigurationTask.java | 2 - .../managers/deployment/GridDeployment.java | 11 +- .../processors/task/GridVisorManagementTask.java | 38 ------ .../compute/VisorComputeCancelSessionsTask.java | 2 - .../internal/visor/misc/VisorIdAndTagViewTask.java | 2 - .../main/resources/META-INF/classnames.properties | 1 - .../internal/TestManagementVisorMultiNodeTask.java | 66 ----------- .../internal/TestManagementVisorOneNodeTask.java | 2 - .../TestNotManagementVisorMultiNodeTask.java | 64 ---------- .../TestNotManagementVisorOneNodeTask.java | 64 ---------- .../internal/VisorManagementEventSelfTest.java | 132 +++------------------ 30 files changed, 30 insertions(+), 399 deletions(-) diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/ClusterChangeTagTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/ClusterChangeTagTask.java index 9eb20fcc9c7..86d92f10bdd 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/ClusterChangeTagTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/ClusterChangeTagTask.java @@ -21,7 +21,6 @@ import org.apache.ignite.IgniteCheckedException; import org.apache.ignite.IgniteException; import org.apache.ignite.internal.cluster.IgniteClusterEx; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorOneNodeTask; @@ -29,7 +28,6 @@ import org.apache.ignite.internal.visor.VisorOneNodeTask; * */ @GridInternal -@GridVisorManagementTask public class ClusterChangeTagTask extends VisorOneNodeTask<ChangeTagCommandArg, ClusterChangeTagTaskResult> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/ShutdownPolicyTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/ShutdownPolicyTask.java index 27d0046faf1..e648389407c 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/ShutdownPolicyTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/ShutdownPolicyTask.java @@ -20,7 +20,6 @@ package org.apache.ignite.internal.management; import org.apache.ignite.IgniteException; import org.apache.ignite.IgniteLogger; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorOneNodeTask; import org.apache.ignite.resources.LoggerResource; @@ -29,7 +28,6 @@ import org.apache.ignite.resources.LoggerResource; * Shutdown policy task. */ @GridInternal -@GridVisorManagementTask public class ShutdownPolicyTask extends VisorOneNodeTask<ShutdownPolicyCommandArg, ShutdownPolicyTaskResult> { /** Serial version id. */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/SystemViewTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/SystemViewTask.java index ce20ad3412f..31fae2c6963 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/SystemViewTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/SystemViewTask.java @@ -28,7 +28,6 @@ import org.apache.ignite.IgniteException; import org.apache.ignite.compute.ComputeJobResult; import org.apache.ignite.internal.managers.systemview.GridSystemViewManager; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorMultiNodeTask; @@ -46,7 +45,6 @@ import static org.apache.ignite.internal.processors.metric.impl.MetricUtils.toSq /** Reperesents visor task for obtaining system view content. */ @GridInternal -@GridVisorManagementTask public class SystemViewTask extends VisorMultiNodeTask<SystemViewCommandArg, SystemViewTaskResult, SystemViewTaskResult> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/api/CommandUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/management/api/CommandUtils.java index 5d751f30db6..4fb79b9794d 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/api/CommandUtils.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/api/CommandUtils.java @@ -42,7 +42,6 @@ import java.util.stream.Collectors; import org.apache.ignite.Ignite; import org.apache.ignite.IgniteException; import org.apache.ignite.cluster.ClusterNode; -import org.apache.ignite.compute.ComputeTask; import org.apache.ignite.internal.client.GridClient; import org.apache.ignite.internal.client.GridClientCacheMode; import org.apache.ignite.internal.client.GridClientCompute; @@ -54,6 +53,7 @@ import org.apache.ignite.internal.dto.IgniteDataTransferObject; import org.apache.ignite.internal.util.typedef.F; import org.apache.ignite.internal.util.typedef.internal.SB; import org.apache.ignite.internal.util.typedef.internal.U; +import org.apache.ignite.internal.visor.VisorMultiNodeTask; import org.apache.ignite.internal.visor.VisorTaskArgument; import org.apache.ignite.lang.IgniteExperimental; import org.apache.ignite.lang.IgniteUuid; @@ -764,7 +764,7 @@ public class CommandUtils { public static <A, R> R execute( @Nullable GridClient cli, @Nullable Ignite ignite, - Class<? extends ComputeTask<VisorTaskArgument<A>, R>> taskCls, + Class<? extends VisorMultiNodeTask<A, R, ?>> taskCls, A arg, Collection<GridClientNode> nodes ) throws GridClientException { diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/api/ComputeCommand.java b/modules/core/src/main/java/org/apache/ignite/internal/management/api/ComputeCommand.java index 26da81496a8..b773bfd3f4b 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/api/ComputeCommand.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/api/ComputeCommand.java @@ -19,10 +19,9 @@ package org.apache.ignite.internal.management.api; import java.util.Collection; import java.util.function.Consumer; -import org.apache.ignite.compute.ComputeTask; import org.apache.ignite.internal.client.GridClientNode; import org.apache.ignite.internal.dto.IgniteDataTransferObject; -import org.apache.ignite.internal.visor.VisorTaskArgument; +import org.apache.ignite.internal.visor.VisorMultiNodeTask; import org.jetbrains.annotations.Nullable; /** @@ -30,7 +29,7 @@ import org.jetbrains.annotations.Nullable; */ public interface ComputeCommand<A extends IgniteDataTransferObject, R> extends Command<A, R> { /** @return Task class. */ - public Class<? extends ComputeTask<VisorTaskArgument<A>, R>> taskClass(); + public Class<? extends VisorMultiNodeTask<A, R, ?>> taskClass(); /** * Prints command result to the user. diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/baseline/BaselineTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/baseline/BaselineTask.java index e18c3e943fb..abfb8142fbe 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/baseline/BaselineTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/baseline/BaselineTask.java @@ -30,7 +30,6 @@ import org.apache.ignite.internal.cluster.IgniteClusterEx; import org.apache.ignite.internal.management.baseline.BaselineCommand.BaselineTaskArg; import org.apache.ignite.internal.processors.cluster.baseline.autoadjust.BaselineAutoAdjustStatus; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.util.typedef.F; import org.apache.ignite.internal.util.typedef.internal.S; import org.apache.ignite.internal.visor.VisorJob; @@ -41,7 +40,6 @@ import org.jetbrains.annotations.Nullable; * Task that will collect information about baseline topology and can change its state. */ @GridInternal -@GridVisorManagementTask public class BaselineTask extends VisorOneNodeTask<BaselineTaskArg, BaselineTaskResult> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheMetricsTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheMetricsTask.java index 42bc26a33cd..79e18d91260 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheMetricsTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheMetricsTask.java @@ -24,18 +24,17 @@ import java.util.TreeMap; import org.apache.ignite.IgniteException; import org.apache.ignite.internal.processors.cache.IgniteInternalCache; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.util.typedef.F; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorOneNodeTask; import org.jetbrains.annotations.Nullable; + import static org.apache.ignite.internal.management.cache.CacheMetricsOperation.ENABLE; /** * Task for a cache metrics command. */ @GridInternal -@GridVisorManagementTask public class CacheMetricsTask extends VisorOneNodeTask<CacheMetricsCommandArg, CacheMetricsTaskResult> { /** Serial version uid. */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheScanTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheScanTask.java index b419177d46d..646693ed92e 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheScanTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheScanTask.java @@ -30,7 +30,6 @@ import org.apache.ignite.cache.query.QueryCursor; import org.apache.ignite.cache.query.ScanQuery; import org.apache.ignite.internal.binary.BinaryObjectEx; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.util.IgniteUtils; import org.apache.ignite.internal.util.typedef.F; import org.apache.ignite.internal.util.typedef.internal.S; @@ -47,7 +46,6 @@ import static org.apache.ignite.plugin.security.SecurityPermissionSetBuilder.NO_ * Task that scan cache entries. */ @GridInternal -@GridVisorManagementTask public class CacheScanTask extends VisorOneNodeTask<CacheScanCommandArg, CacheScanTaskResult> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheStopTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheStopTask.java index cb7a6973996..39f4fd15bcc 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheStopTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheStopTask.java @@ -21,7 +21,6 @@ import java.util.Arrays; import java.util.Collection; import java.util.HashSet; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.util.typedef.F; import org.apache.ignite.internal.util.typedef.internal.S; import org.apache.ignite.internal.visor.VisorJob; @@ -34,7 +33,6 @@ import static org.apache.ignite.plugin.security.SecurityPermissionSetBuilder.NO_ * Task that stop specified caches on specified node. */ @GridInternal -@GridVisorManagementTask public class CacheStopTask extends VisorOneNodeTask<CacheDestroyCommandArg, Void> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/defragmentation/DefragmentationTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/defragmentation/DefragmentationTask.java index 92195a09569..42a90a5009a 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/defragmentation/DefragmentationTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/defragmentation/DefragmentationTask.java @@ -26,7 +26,6 @@ import org.apache.ignite.internal.management.defragmentation.DefragmentationComm import org.apache.ignite.internal.management.defragmentation.DefragmentationCommand.DefragmentationStatusCommandArg; import org.apache.ignite.internal.processors.cache.persistence.defragmentation.IgniteDefragmentation; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.util.typedef.F; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorMultiNodeTask; @@ -34,7 +33,6 @@ import org.jetbrains.annotations.Nullable; /** */ @GridInternal -@GridVisorManagementTask public class DefragmentationTask extends VisorMultiNodeTask <DefragmentationStatusCommandArg, DefragmentationTaskResult, DefragmentationTaskResult> { /** Serial version uid. */ diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/CancelServiceTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/CancelServiceTask.java index 24a7b95b35b..2cd4f24717d 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/CancelServiceTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/CancelServiceTask.java @@ -19,7 +19,6 @@ package org.apache.ignite.internal.management.kill; import org.apache.ignite.internal.ServiceMXBeanImpl; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.util.typedef.internal.S; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorOneNodeTask; @@ -28,7 +27,6 @@ import org.apache.ignite.internal.visor.VisorOneNodeTask; * Task for cancel services with specified name. */ @GridInternal -@GridVisorManagementTask public class CancelServiceTask extends VisorOneNodeTask<KillServiceCommandArg, Void> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ClientConnectionDropTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ClientConnectionDropTask.java index 7c9a90b06aa..c3bfe8f955b 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ClientConnectionDropTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ClientConnectionDropTask.java @@ -21,7 +21,6 @@ import java.util.List; import org.apache.ignite.IgniteException; import org.apache.ignite.compute.ComputeJobResult; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorMultiNodeTask; import org.apache.ignite.mxbean.ClientProcessorMXBean; @@ -31,7 +30,6 @@ import org.jetbrains.annotations.Nullable; * Task to cancel client connection(s). */ @GridInternal -@GridVisorManagementTask public class ClientConnectionDropTask extends VisorMultiNodeTask<KillClientCommandArg, Void, Boolean> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ComputeCancelSessionTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ComputeCancelSessionTask.java index d2c5f1f210c..2ffc7be8138 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ComputeCancelSessionTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ComputeCancelSessionTask.java @@ -21,7 +21,6 @@ import java.util.List; import org.apache.ignite.compute.ComputeJobResult; import org.apache.ignite.internal.ComputeMXBeanImpl; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.util.typedef.internal.S; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorOneNodeTask; @@ -31,7 +30,6 @@ import org.jetbrains.annotations.Nullable; * Cancels given tasks sessions on all cluster nodes. */ @GridInternal -@GridVisorManagementTask public class ComputeCancelSessionTask extends VisorOneNodeTask<KillComputeCommandArg, Void> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ContinuousQueryCancelTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ContinuousQueryCancelTask.java index ab406e9a19a..986fe57484f 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ContinuousQueryCancelTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ContinuousQueryCancelTask.java @@ -21,7 +21,6 @@ import org.apache.ignite.IgniteException; import org.apache.ignite.IgniteLogger; import org.apache.ignite.internal.QueryMXBeanImpl; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorOneNodeTask; import org.jetbrains.annotations.Nullable; @@ -30,7 +29,6 @@ import org.jetbrains.annotations.Nullable; * Task to cancel continuous query. */ @GridInternal -@GridVisorManagementTask public class ContinuousQueryCancelTask extends VisorOneNodeTask<KillContinuousCommandArg, Void> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/QueryCancelOnInitiatorTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/QueryCancelOnInitiatorTask.java index 97a3ce1c44d..76f26d6edc5 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/QueryCancelOnInitiatorTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/QueryCancelOnInitiatorTask.java @@ -22,7 +22,6 @@ import org.apache.ignite.IgniteException; import org.apache.ignite.compute.ComputeJobResult; import org.apache.ignite.internal.QueryMXBeanImpl; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorOneNodeTask; import org.jetbrains.annotations.Nullable; @@ -31,7 +30,6 @@ import org.jetbrains.annotations.Nullable; * Task to cancel queries on initiator node. */ @GridInternal -@GridVisorManagementTask public class QueryCancelOnInitiatorTask extends VisorOneNodeTask<KillSqlCommandArg, Void> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ScanQueryCancelTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ScanQueryCancelTask.java index cc0c8a59894..8b9946f2ee0 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ScanQueryCancelTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ScanQueryCancelTask.java @@ -20,7 +20,6 @@ package org.apache.ignite.internal.management.kill; import org.apache.ignite.IgniteException; import org.apache.ignite.internal.QueryMXBeanImpl; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorOneNodeTask; @@ -28,7 +27,6 @@ import org.apache.ignite.internal.visor.VisorOneNodeTask; * Task to cancel scan queries. */ @GridInternal -@GridVisorManagementTask public class ScanQueryCancelTask extends VisorOneNodeTask<KillScanCommandArg, Void> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/metric/MetricTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/metric/MetricTask.java index c06b0f55709..cd3e66b5c8c 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/metric/MetricTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/metric/MetricTask.java @@ -24,7 +24,6 @@ import org.apache.ignite.IgniteCheckedException; import org.apache.ignite.IgniteException; import org.apache.ignite.internal.processors.metric.GridMetricManager; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorOneNodeTask; import org.apache.ignite.spi.metric.BooleanMetric; @@ -43,7 +42,6 @@ import static org.apache.ignite.spi.metric.jmx.MetricRegistryMBean.searchHistogr /** Reperesents visor task for obtaining metric values. */ @GridInternal -@GridVisorManagementTask public class MetricTask extends VisorOneNodeTask<MetricCommandArg, Map<String, ?>> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/performancestatistics/PerformanceStatisticsTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/performancestatistics/PerformanceStatisticsTask.java index b13455d44b2..2cbe5dd2ec6 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/performancestatistics/PerformanceStatisticsTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/performancestatistics/PerformanceStatisticsTask.java @@ -25,14 +25,12 @@ import org.apache.ignite.internal.management.performancestatistics.PerformanceSt import org.apache.ignite.internal.management.performancestatistics.PerformanceStatisticsCommand.PerformanceStatisticsStatusCommandArg; import org.apache.ignite.internal.management.performancestatistics.PerformanceStatisticsCommand.PerformanceStatisticsStopCommandArg; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorOneNodeTask; /** Represents visor task to manage performance statistics. */ @GridInternal -@GridVisorManagementTask public class PerformanceStatisticsTask extends VisorOneNodeTask<IgniteDataTransferObject, String> { /** Performance statistics enabled status. */ public static final String STATUS_ENABLED = "Enabled."; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/persistence/PersistenceTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/persistence/PersistenceTask.java index 39adab4a45d..4394e4c0af3 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/persistence/PersistenceTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/persistence/PersistenceTask.java @@ -46,7 +46,6 @@ import org.apache.ignite.internal.processors.cache.persistence.CheckCorruptedCac import org.apache.ignite.internal.processors.cache.persistence.CleanCacheStoresMaintenanceAction; import org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.util.typedef.internal.CU; import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.internal.visor.VisorJob; @@ -56,12 +55,12 @@ import org.apache.ignite.maintenance.MaintenanceAction; import org.apache.ignite.maintenance.MaintenanceRegistry; import org.apache.ignite.maintenance.MaintenanceTask; import org.jetbrains.annotations.Nullable; + import static org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.CORRUPTED_DATA_FILES_MNTC_TASK_NAME; import static org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.cacheDirName; /** */ @GridInternal -@GridVisorManagementTask public class PersistenceTask extends VisorOneNodeTask<PersistenceTaskArg, PersistenceTaskResult> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/management/tracing/TracingConfigurationTask.java b/modules/core/src/main/java/org/apache/ignite/internal/management/tracing/TracingConfigurationTask.java index 0e7d2ac2ccb..68039b1e968 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/management/tracing/TracingConfigurationTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/management/tracing/TracingConfigurationTask.java @@ -26,7 +26,6 @@ import org.apache.ignite.internal.management.tracing.TracingConfigurationCommand import org.apache.ignite.internal.management.tracing.TracingConfigurationCommand.TracingConfigurationResetAllCommandArg; import org.apache.ignite.internal.management.tracing.TracingConfigurationCommand.TracingConfigurationResetCommandArg; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.util.typedef.internal.S; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorOneNodeTask; @@ -40,7 +39,6 @@ import org.jetbrains.annotations.Nullable; * Task that will collect and update tracing configuration. */ @GridInternal -@GridVisorManagementTask public class TracingConfigurationTask extends VisorOneNodeTask<TracingConfigurationCommandArg, TracingConfigurationTaskResult> { /** */ diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/deployment/GridDeployment.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/deployment/GridDeployment.java index a961c492d9f..e99b8a27bb7 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/managers/deployment/GridDeployment.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/deployment/GridDeployment.java @@ -38,7 +38,6 @@ import org.apache.ignite.IgniteException; import org.apache.ignite.compute.ComputeTask; import org.apache.ignite.configuration.DeploymentMode; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.util.GridLeanSet; import org.apache.ignite.internal.util.lang.GridMetadataAwareAdapter; import org.apache.ignite.internal.util.lang.GridPeerDeployAware; @@ -48,6 +47,7 @@ import org.apache.ignite.internal.util.typedef.F; import org.apache.ignite.internal.util.typedef.X; import org.apache.ignite.internal.util.typedef.internal.S; import org.apache.ignite.internal.util.typedef.internal.U; +import org.apache.ignite.internal.visor.VisorMultiNodeTask; import org.apache.ignite.lang.IgniteBiTuple; import org.apache.ignite.lang.IgniteUuid; import org.jetbrains.annotations.NotNull; @@ -387,16 +387,15 @@ public class GridDeployment extends GridMetadataAwareAdapter implements GridDepl } /** - * Checks whether task class is annotated with {@link GridVisorManagementTask}. + * Checks whether task class is a management task. * * @param task Task. * @param taskCls Task class. * @return {@code True} if task is internal. */ - public boolean visorManagementTask(@Nullable ComputeTask task, @NotNull Class<?> taskCls) { - return annotation(task instanceof GridPeerDeployAware ? - ((GridPeerDeployAware)task).deployClass() : taskCls, - GridVisorManagementTask.class) != null; + public boolean visorManagementTask(@Nullable ComputeTask<?, ?> task, @NotNull Class<?> taskCls) { + return VisorMultiNodeTask.class.isAssignableFrom(task instanceof GridPeerDeployAware ? + ((GridPeerDeployAware)task).deployClass() : taskCls); } /** diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridVisorManagementTask.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridVisorManagementTask.java deleted file mode 100644 index 09c87bf0179..00000000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridVisorManagementTask.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.processors.task; - -import java.lang.annotation.Documented; -import java.lang.annotation.ElementType; -import java.lang.annotation.Inherited; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -/** - * Indicates that annotated task is a visor task that was invoked by user. They can be handled by event listeners. - * - * This annotation intended for internal use only. - */ -@Documented -@Inherited -@Retention(RetentionPolicy.RUNTIME) -@Target({ElementType.TYPE}) -public @interface GridVisorManagementTask { - // No-op. -} diff --git a/modules/core/src/main/java/org/apache/ignite/internal/visor/compute/VisorComputeCancelSessionsTask.java b/modules/core/src/main/java/org/apache/ignite/internal/visor/compute/VisorComputeCancelSessionsTask.java index 71aab6f3d1c..88fdb4faea3 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/visor/compute/VisorComputeCancelSessionsTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/visor/compute/VisorComputeCancelSessionsTask.java @@ -24,7 +24,6 @@ import org.apache.ignite.IgniteCompute; import org.apache.ignite.compute.ComputeJobResult; import org.apache.ignite.compute.ComputeTaskFuture; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.util.typedef.internal.S; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorOneNodeTask; @@ -35,7 +34,6 @@ import org.jetbrains.annotations.Nullable; * Cancels given task session. */ @GridInternal -@GridVisorManagementTask public class VisorComputeCancelSessionsTask extends VisorOneNodeTask<VisorComputeCancelSessionsTaskArg, Void> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/visor/misc/VisorIdAndTagViewTask.java b/modules/core/src/main/java/org/apache/ignite/internal/visor/misc/VisorIdAndTagViewTask.java index 7b6cf3152f9..0fdcc95836f 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/visor/misc/VisorIdAndTagViewTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/visor/misc/VisorIdAndTagViewTask.java @@ -20,7 +20,6 @@ package org.apache.ignite.internal.visor.misc; import org.apache.ignite.IgniteException; import org.apache.ignite.internal.cluster.IgniteClusterEx; import org.apache.ignite.internal.processors.task.GridInternal; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorOneNodeTask; import org.jetbrains.annotations.Nullable; @@ -29,7 +28,6 @@ import org.jetbrains.annotations.Nullable; * */ @GridInternal -@GridVisorManagementTask public class VisorIdAndTagViewTask extends VisorOneNodeTask<Void, VisorIdAndTagViewTaskResult> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/main/resources/META-INF/classnames.properties b/modules/core/src/main/resources/META-INF/classnames.properties index 8ce87810e04..98f58f676b2 100644 --- a/modules/core/src/main/resources/META-INF/classnames.properties +++ b/modules/core/src/main/resources/META-INF/classnames.properties @@ -367,7 +367,6 @@ org.apache.ignite.internal.commandline.cache.distribution.CacheDistributionTaskR org.apache.ignite.internal.commandline.cache.reset_lost_partitions.CacheResetLostPartitionsTask org.apache.ignite.internal.commandline.cache.reset_lost_partitions.CacheResetLostPartitionsTask$CacheResetLostPartitionsJob org.apache.ignite.internal.commandline.cache.reset_lost_partitions.CacheResetLostPartitionsTaskResult -org.apache.ignite.internal.commandline.meta.subcommands.VoidDto org.apache.ignite.internal.management.meta.MetadataInfoTask org.apache.ignite.internal.management.meta.MetadataInfoTask$MetadataListJob org.apache.ignite.internal.management.meta.MetadataListResult diff --git a/modules/core/src/test/java/org/apache/ignite/internal/TestManagementVisorMultiNodeTask.java b/modules/core/src/test/java/org/apache/ignite/internal/TestManagementVisorMultiNodeTask.java deleted file mode 100644 index beccd799043..00000000000 --- a/modules/core/src/test/java/org/apache/ignite/internal/TestManagementVisorMultiNodeTask.java +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal; - -import java.util.List; -import org.apache.ignite.compute.ComputeJobResult; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; -import org.apache.ignite.internal.visor.VisorJob; -import org.apache.ignite.internal.visor.VisorMultiNodeTask; -import org.apache.ignite.internal.visor.VisorTaskArgument; -import org.jetbrains.annotations.Nullable; - -/** - * - */ -@GridVisorManagementTask -public class TestManagementVisorMultiNodeTask extends VisorMultiNodeTask<VisorTaskArgument, Object, Object> { - /** */ - private static final long serialVersionUID = 0L; - - /** {@inheritDoc} */ - @Override protected VisorValidMultiNodeJob job(VisorTaskArgument arg) { - return new VisorValidMultiNodeJob(arg, debug); - } - - /** {@inheritDoc} */ - @Nullable @Override protected Object reduce0(List<ComputeJobResult> results) { - return null; - } - - /** - * Valid Management multi node visor job. - */ - private static class VisorValidMultiNodeJob extends VisorJob<VisorTaskArgument, Object> { - /** */ - private static final long serialVersionUID = 0L; - - /** - * @param arg Argument. - * @param debug Debug flag. - */ - protected VisorValidMultiNodeJob(VisorTaskArgument arg, boolean debug) { - super(arg, debug); - } - - /** {@inheritDoc} */ - @Override protected Object run(VisorTaskArgument arg) { - return null; - } - } -} diff --git a/modules/core/src/test/java/org/apache/ignite/internal/TestManagementVisorOneNodeTask.java b/modules/core/src/test/java/org/apache/ignite/internal/TestManagementVisorOneNodeTask.java index f7479af08b1..a1861c9870b 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/TestManagementVisorOneNodeTask.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/TestManagementVisorOneNodeTask.java @@ -19,7 +19,6 @@ package org.apache.ignite.internal; import java.util.List; import org.apache.ignite.compute.ComputeJobResult; -import org.apache.ignite.internal.processors.task.GridVisorManagementTask; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorOneNodeTask; import org.apache.ignite.internal.visor.VisorTaskArgument; @@ -28,7 +27,6 @@ import org.jetbrains.annotations.Nullable; /** * */ -@GridVisorManagementTask public class TestManagementVisorOneNodeTask extends VisorOneNodeTask<VisorTaskArgument, Object> { /** */ private static final long serialVersionUID = 0L; diff --git a/modules/core/src/test/java/org/apache/ignite/internal/TestNotManagementVisorMultiNodeTask.java b/modules/core/src/test/java/org/apache/ignite/internal/TestNotManagementVisorMultiNodeTask.java deleted file mode 100644 index d8f27936338..00000000000 --- a/modules/core/src/test/java/org/apache/ignite/internal/TestNotManagementVisorMultiNodeTask.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal; - -import java.util.List; -import org.apache.ignite.compute.ComputeJobResult; -import org.apache.ignite.internal.visor.VisorJob; -import org.apache.ignite.internal.visor.VisorMultiNodeTask; -import org.apache.ignite.internal.visor.VisorTaskArgument; -import org.jetbrains.annotations.Nullable; - -/** - * - */ -public class TestNotManagementVisorMultiNodeTask extends VisorMultiNodeTask<VisorTaskArgument, Object, Object> { - /** */ - private static final long serialVersionUID = 0L; - - /** {@inheritDoc} */ - @Override protected VisorNotManagementMultiNodeJob job(VisorTaskArgument arg) { - return new VisorNotManagementMultiNodeJob(arg, debug); - } - - /** {@inheritDoc} */ - @Nullable @Override protected Object reduce0(List<ComputeJobResult> results) { - return null; - } - - /** - * Not management multi node visor job. - */ - private static class VisorNotManagementMultiNodeJob extends VisorJob<VisorTaskArgument, Object> { - /** */ - private static final long serialVersionUID = 0L; - - /** - * @param arg Argument. - * @param debug Debug flag. - */ - protected VisorNotManagementMultiNodeJob(VisorTaskArgument arg, boolean debug) { - super(arg, debug); - } - - /** {@inheritDoc} */ - @Override protected Object run(VisorTaskArgument arg) { - return null; - } - } -} diff --git a/modules/core/src/test/java/org/apache/ignite/internal/TestNotManagementVisorOneNodeTask.java b/modules/core/src/test/java/org/apache/ignite/internal/TestNotManagementVisorOneNodeTask.java deleted file mode 100644 index 1106f94ec6f..00000000000 --- a/modules/core/src/test/java/org/apache/ignite/internal/TestNotManagementVisorOneNodeTask.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal; - -import java.util.List; -import org.apache.ignite.compute.ComputeJobResult; -import org.apache.ignite.internal.visor.VisorJob; -import org.apache.ignite.internal.visor.VisorOneNodeTask; -import org.apache.ignite.internal.visor.VisorTaskArgument; -import org.jetbrains.annotations.Nullable; - -/** - * - */ -public class TestNotManagementVisorOneNodeTask extends VisorOneNodeTask<VisorTaskArgument, Object> { - /** */ - private static final long serialVersionUID = 0L; - - /** {@inheritDoc} */ - @Override protected VisorNotManagementOneNodeJob job(VisorTaskArgument arg) { - return new VisorNotManagementOneNodeJob(arg, debug); - } - - /** {@inheritDoc} */ - @Nullable @Override protected Object reduce0(List<ComputeJobResult> results) { - return null; - } - - /** - * Not management one node visor job. - */ - private static class VisorNotManagementOneNodeJob extends VisorJob<VisorTaskArgument, Object> { - /** */ - private static final long serialVersionUID = 0L; - - /** - * @param arg Argument. - * @param debug Debug flag. - */ - protected VisorNotManagementOneNodeJob(VisorTaskArgument arg, boolean debug) { - super(arg, debug); - } - - /** {@inheritDoc} */ - @Override protected Object run(VisorTaskArgument arg) { - return null; - } - } -} diff --git a/modules/core/src/test/java/org/apache/ignite/internal/VisorManagementEventSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/VisorManagementEventSelfTest.java index 673057ff2c1..2da03f38ce7 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/VisorManagementEventSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/VisorManagementEventSelfTest.java @@ -17,21 +17,17 @@ package org.apache.ignite.internal; -import java.util.Arrays; -import java.util.List; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicReference; import org.apache.ignite.cluster.ClusterNode; import org.apache.ignite.compute.ComputeTask; -import org.apache.ignite.configuration.CacheConfiguration; import org.apache.ignite.configuration.IgniteConfiguration; import org.apache.ignite.events.EventType; import org.apache.ignite.events.TaskEvent; +import org.apache.ignite.internal.client.thin.TestTask; import org.apache.ignite.internal.visor.VisorTaskArgument; import org.apache.ignite.lang.IgnitePredicate; -import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi; -import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder; import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest; import org.junit.Test; @@ -43,138 +39,43 @@ import static org.apache.ignite.events.EventType.EVT_MANAGEMENT_TASK_STARTED; public class VisorManagementEventSelfTest extends GridCommonAbstractTest { /** {@inheritDoc} */ @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception { - IgniteConfiguration cfg = new IgniteConfiguration(); + IgniteConfiguration cfg = super.getConfiguration(gridName); // Enable visor management events. cfg.setIncludeEventTypes( EVT_MANAGEMENT_TASK_STARTED ); - cfg.setCacheConfiguration( - new CacheConfiguration<Integer, Integer>() - .setName("TEST") - .setIndexedTypes(Integer.class, Integer.class) - .setStatisticsEnabled(true) - ); - - TcpDiscoveryVmIpFinder ipFinder = new TcpDiscoveryVmIpFinder(); - - List<String> addrs = Arrays.asList("127.0.0.1:47500..47502"); - - ipFinder.setAddresses(addrs); - - TcpDiscoverySpi discoSpi = new TcpDiscoverySpi(); - - discoSpi.setIpFinder(ipFinder); - - cfg.setDiscoverySpi(discoSpi); - return cfg; } /** {@inheritDoc} */ @Override protected void afterTest() throws Exception { - stopAllGrids(); - - cleanPersistenceDir(); - super.afterTest(); - } - /** - * Current test case start valid one node visor task that has GridVisorManagementTask annotation. - * No exceptions are expected. - * - * @throws Exception If failed. - */ - @Test - public void testManagementOneNodeVisorTask() throws Exception { - IgniteEx ignite = startGrid(0); - - doTestVisorTask(TestManagementVisorOneNodeTask.class, new VisorTaskArgument(), ignite); - } - - /** - * Current test case start valid multi node visor task that has GridVisorManagementTask annotation. - * No exceptions are expected. - * - * @throws Exception If failed. - */ - @Test - public void testManagementMultiNodeVisorTask() throws Exception { - IgniteEx ignite = startGrid(0); - - doTestVisorTask(TestManagementVisorMultiNodeTask.class, new VisorTaskArgument(), ignite); + stopAllGrids(); } - /** - * Current test case start one node visor task that has not GridVisorManagementTask annotation. - * No exceptions are expected. - * - * @throws Exception If failed. - */ + /** @throws Exception If failed. */ @Test - public void testNotManagementOneNodeVisorTask() throws Exception { - IgniteEx ignite = startGrid(0); - - doTestNotManagementVisorTask(TestNotManagementVisorOneNodeTask.class, new VisorTaskArgument(), ignite); + public void testManagementTask() throws Exception { + doTestVisorTask(TestManagementVisorOneNodeTask.class, true); } - /** - * Current test case start multi node visor task that has not GridVisorManagementTask annotation. - * No exceptions are expected. - * - * @throws Exception If failed. - */ + /** @throws Exception If failed. */ @Test - public void testNotManagementMultiNodeVisorTask() throws Exception { - IgniteEx ignite = startGrid(0); - - doTestNotManagementVisorTask(TestNotManagementVisorMultiNodeTask.class, new VisorTaskArgument(), ignite); + public void testNotManagementTask() throws Exception { + doTestVisorTask(TestTask.class, false); } /** * @param cls class of the task. - * @param arg argument. - * @param ignite instance of Ignite. * * @throws Exception If failed. */ - private <T, R> void doTestVisorTask( - Class<? extends ComputeTask<VisorTaskArgument<T>, R>> cls, T arg, IgniteEx ignite - ) throws Exception { - final AtomicReference<TaskEvent> evt = new AtomicReference<>(); - - final CountDownLatch evtLatch = new CountDownLatch(1); - - ignite.events().localListen(new IgnitePredicate<TaskEvent>() { - @Override public boolean apply(TaskEvent e) { - evt.set(e); - - evtLatch.countDown(); - - return false; - } - }, EventType.EVT_MANAGEMENT_TASK_STARTED); - - for (ClusterNode node : ignite.cluster().forServers().nodes()) - ignite.compute().executeAsync(cls, new VisorTaskArgument<>(node.id(), arg, true)); - - assertTrue(evtLatch.await(10000, TimeUnit.MILLISECONDS)); - - assertNotNull(evt.get()); - } + private void doTestVisorTask(Class<? extends ComputeTask<?, ?>> cls, boolean expEvt) throws Exception { + IgniteEx ignite = startGrid(0); - /** - * @param cls class of the task. - * @param arg argument. - * @param ignite instance of Ignite. - * - * @throws Exception If failed. - */ - private <T, R> void doTestNotManagementVisorTask( - Class<? extends ComputeTask<VisorTaskArgument<T>, R>> cls, T arg, IgniteEx ignite - ) throws Exception { final AtomicReference<TaskEvent> evt = new AtomicReference<>(); final CountDownLatch evtLatch = new CountDownLatch(1); @@ -190,8 +91,13 @@ public class VisorManagementEventSelfTest extends GridCommonAbstractTest { }, EventType.EVT_MANAGEMENT_TASK_STARTED); for (ClusterNode node : ignite.cluster().forServers().nodes()) - ignite.compute().executeAsync(cls, new VisorTaskArgument<>(node.id(), arg, true)); - - assertFalse(evtLatch.await(10000, TimeUnit.MILLISECONDS)); + ignite.compute().executeAsync(cls.getName(), new VisorTaskArgument<>(node.id(), new VisorTaskArgument(), true)); + + if (expEvt) { + assertTrue(evtLatch.await(10000, TimeUnit.MILLISECONDS)); + assertTrue(evt.get() instanceof TaskEvent); + } + else + assertFalse(evtLatch.await(1000, TimeUnit.MILLISECONDS)); } }