Pre migration step "Migrate system indices" failed

Hello,

We checked the pre-migration step before upgrading the cloud instance from 7.17.5 to 8.

The "Migrate system indices" step failed with the error " System indices migration failed, An error occurred while migrating system indices for watcher: `illegal_state_exception"

Any log files we can check why the failure or any possible solution to fix this issue?

we can see the below details from dev tools

{
      "feature_name" : "watcher",
      "minimum_index_version" : "6.5.4",
      "migration_status" : "ERROR",
      "indices" : [
        {
          "index" : ".triggered_watches",
          "version" : "6.5.4",
          "failure_cause" : {
            "error" : {
              "root_cause" : [
                {
                  "type" : "illegal_state_exception",
                  "reason" : "unable to create new index [.triggered_watches-reindexed-for-8] because it would match composable template [.triggered_watches]",
                  "stack_trace" : """[unable to create new index [.triggered_watches-reindexed-for-8] because it would match composable template [.triggered_watches]]; nested: IllegalStateException[unable to create new index [.triggered_watches-reindexed-for-8] because it would match composable template [.triggered_watches]];
	at org.elasticsearch.ElasticsearchException.guessRootCauses(ElasticsearchException.java:639)
	at org.elasticsearch.ElasticsearchException.generateFailureXContent(ElasticsearchException.java:567)
	at org.elasticsearch.action.admin.cluster.migration.GetFeatureUpgradeStatusResponse$IndexInfo.toXContent(GetFeatureUpgradeStatusResponse.java:307)
	at org.elasticsearch.xcontent.XContentBuilder.value(XContentBuilder.java:864)
	at org.elasticsearch.xcontent.XContentBuilder.value(XContentBuilder.java:857)
	at org.elasticsearch.xcontent.XContentBuilder.unknownValue(XContentBuilder.java:835)
	at org.elasticsearch.xcontent.XContentBuilder.value(XContentBuilder.java:811)
	at org.elasticsearch.action.admin.cluster.migration.GetFeatureUpgradeStatusResponse$FeatureUpgradeStatus.toXContent(GetFeatureUpgradeStatusResponse.java:192)
	at org.elasticsearch.xcontent.XContentBuilder.value(XContentBuilder.java:864)
	at org.elasticsearch.xcontent.XContentBuilder.value(XContentBuilder.java:857)
	at org.elasticsearch.xcontent.XContentBuilder.unknownValue(XContentBuilder.java:835)
	at org.elasticsearch.xcontent.XContentBuilder.value(XContentBuilder.java:811)
	at org.elasticsearch.action.admin.cluster.migration.GetFeatureUpgradeStatusResponse.toXContent(GetFeatureUpgradeStatusResponse.java:60)
	at org.elasticsearch.rest.action.RestToXContentListener.buildResponse(RestToXContentListener.java:30)
	at org.elasticsearch.rest.action.RestToXContentListener.buildResponse(RestToXContentListener.java:22)
	at org.elasticsearch.rest.action.RestBuilderListener.buildResponse(RestBuilderListener.java:27)
	at org.elasticsearch.rest.action.RestResponseListener.processResponse(RestResponseListener.java:26)
	at org.elasticsearch.rest.action.RestActionListener.onResponse(RestActionListener.java:38)
	at org.elasticsearch.action.support.TransportAction$1.onResponse(TransportAction.java:88)
	at org.elasticsearch.action.support.TransportAction$1.onResponse(TransportAction.java:82)
	at org.elasticsearch.action.support.ContextPreservingActionListener.onResponse(ContextPreservingActionListener.java:31)
	at org.elasticsearch.xpack.security.action.filter.SecurityActionFilter.lambda$applyInternal$2(SecurityActionFilter.java:192)
	at org.elasticsearch.action.ActionListener$DelegatingFailureActionListener.onResponse(ActionListener.java:219)
	at org.elasticsearch.action.ActionListener$DelegatingActionListener.onResponse(ActionListener.java:186)
	at org.elasticsearch.action.admin.cluster.migration.TransportGetFeatureUpgradeStatusAction.masterOperation(TransportGetFeatureUpgradeStatusAction.java:104)
	at org.elasticsearch.action.admin.cluster.migration.TransportGetFeatureUpgradeStatusAction.masterOperation(TransportGetFeatureUpgradeStatusAction.java:46)
	at org.elasticsearch.action.support.master.TransportMasterNodeAction.masterOperation(TransportMasterNodeAction.java:118)
	at org.elasticsearch.action.support.master.TransportMasterNodeAction.executeMasterOperation(TransportMasterNodeAction.java:127)
	at org.elasticsearch.action.support.master.TransportMasterNodeAction.access$500(TransportMasterNodeAction.java:52)
	at org.elasticsearch.action.support.master.TransportMasterNodeAction$AsyncSingleAction.lambda$doStart$3(TransportMasterNodeAction.java:219)
	at org.elasticsearch.action.ActionRunnable$2.doRun(ActionRunnable.java:62)
	at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:26)
	at org.elasticsearch.common.util.concurrent.EsExecutors$DirectExecutorService.execute(EsExecutors.java:288)
	at org.elasticsearch.action.support.master.TransportMasterNodeAction$AsyncSingleAction.doStart(TransportMasterNodeAction.java:219)
	at org.elasticsearch.action.support.master.TransportMasterNodeAction.doExecute(TransportMasterNodeAction.java:158)
	at org.elasticsearch.action.support.master.TransportMasterNodeAction.doExecute(TransportMasterNodeAction.java:52)
	at org.elasticsearch.action.support.TransportAction$RequestFilterChain.proceed(TransportAction.java:179)
	at org.elasticsearch.action.support.ActionFilter$Simple.apply(ActionFilter.java:53)
	at org.elasticsearch.action.support.TransportAction$RequestFilterChain.proceed(TransportAction.java:177)
	at org.elasticsearch.xpack.security.action.filter.SecurityActionFilter.lambda$applyInternal$3(SecurityActionFilter.java:190)
	at org.elasticsearch.action.ActionListener$DelegatingFailureActionListener.onResponse(ActionListener.java:219)
	at org.elasticsearch.xpack.security.authz.AuthorizationService.lambda$authorizeAction$4(AuthorizationService.java:391)
	at org.elasticsearch.xpack.security.authz.AuthorizationService$AuthorizationResultListener.onResponse(AuthorizationService.java:967)
	at org.elasticsearch.xpack.security.authz.AuthorizationService$AuthorizationResultListener.onResponse(AuthorizationService.java:931)
	at org.elasticsearch.action.support.ContextPreservingActionListener.onResponse(ContextPreservingActionListener.java:31)
	at org.elasticsearch.xpack.security.authz.AuthorizationService.lambda$authorizeAction$5(AuthorizationService.java:405)
	at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:136)
	at org.elasticsearch.xpack.security.authz.RBACEngine.authorizeClusterAction(RBACEngine.java:168)
	at org.elasticsearch.xpack.security.authz.AuthorizationService.authorizeAction(AuthorizationService.java:395)
	at org.elasticsearch.xpack.security.authz.AuthorizationService.maybeAuthorizeRunAs(AuthorizationService.java:371)
	at org.elasticsearch.xpack.security.authz.AuthorizationService.lambda$authorize$1(AuthorizationService.java:256)
	at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:136)
	at org.elasticsearch.action.support.ContextPreservingActionListener.onResponse(ContextPreservingActionListener.java:31)
	at org.elasticsearch.xpack.security.authz.RBACEngine.lambda$resolveAuthorizationInfo$1(RBACEngine.java:138)
	at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:136)
	at org.elasticsearch.xpack.security.authz.store.CompositeRolesStore.getRoles(CompositeRolesStore.java:277)
	at org.elasticsearch.xpack.security.authz.RBACEngine.getRoles(RBACEngine.java:144)
	at org.elasticsearch.xpack.security.authz.RBACEngine.resolveAuthorizationInfo(RBACEngine.java:127)
	at org.elasticsearch.xpack.security.authz.AuthorizationService.authorize(AuthorizationService.java:258)
	at org.elasticsearch.xpack.security.action.filter.SecurityActionFilter.lambda$applyInternal$4(SecurityActionFilter.java:186)
	at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:136)
	at org.elasticsearch.action.ActionListener$MappedActionListener.onResponse(ActionListener.java:101)
	at org.elasticsearch.xpack.security.authc.AuthenticatorChain.authenticateAsync(AuthenticatorChain.java:102)
	at org.elasticsearch.xpack.security.authc.AuthenticationService.authenticate(AuthenticationService.java:171)
	at org.elasticsearch.xpack.security.action.filter.SecurityActionFilter.applyInternal(SecurityActionFilter.java:182)
	at org.elasticsearch.xpack.security.action.filter.SecurityActionFilter.apply(SecurityActionFilter.java:124)
	at org.elasticsearch.action.support.TransportAction$RequestFilterChain.proceed(TransportAction.java:177)
	at org.elasticsearch.action.support.TransportAction.execute(TransportAction.java:154)
	at org.elasticsearch.action.support.TransportAction.execute(TransportAction.java:82)
	at org.elasticsearch.client.node.NodeClient.executeLocally(NodeClient.java:95)
	at org.elasticsearch.client.node.NodeClient.doExecute(NodeClient.java:73)
	at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:407)
	at org.elasticsearch.rest.action.admin.cluster.RestGetFeatureUpgradeStatusAction.lambda$prepareRequest$0(RestGetFeatureUpgradeStatusAction.java:46)
	at org.elasticsearch.rest.BaseRestHandler.handleRequest(BaseRestHandler.java:109)
	at org.elasticsearch.xpack.security.rest.SecurityRestFilter.lambda$handleRequest$0(SecurityRestFilter.java:90)
	at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:136)
	at org.elasticsearch.xpack.security.authc.support.SecondaryAuthenticator.lambda$authenticateAndAttachToContext$2(SecondaryAuthenticator.java:84)
	at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:136)
	at org.elasticsearch.xpack.security.authc.support.SecondaryAuthenticator.authenticate(SecondaryAuthenticator.java:94)
	at org.elasticsearch.xpack.security.authc.support.SecondaryAuthenticator.authenticateAndAttachToContext(SecondaryAuthenticator.java:78)
	at org.elasticsearch.xpack.security.rest.SecurityRestFilter.lambda$handleRequest$2(SecurityRestFilter.java:85)
	at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:136)
	at org.elasticsearch.action.ActionListener$MappedActionListener.onResponse(ActionListener.java:101)
	at org.elasticsearch.action.ActionListener$RunBeforeActionListener.onResponse(ActionListener.java:389)
	at org.elasticsearch.xpack.security.authc.AuthenticatorChain.writeAuthToContext(AuthenticatorChain.java:376)
	at org.elasticsearch.xpack.security.authc.AuthenticatorChain.finishAuthentication(AuthenticatorChain.java:352)
	at org.elasticsearch.xpack.security.authc.AuthenticatorChain.maybeLookupRunAsUser(AuthenticatorChain.java:199)
	at org.elasticsearch.xpack.security.authc.AuthenticatorChain.lambda$doAuthenticate$1(AuthenticatorChain.java:128)
	at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:136)
	at org.elasticsearch.xpack.core.common.IteratingActionListener.onResponse(IteratingActionListener.java:141)
	at org.elasticsearch.xpack.security.authc.AuthenticatorChain.lambda$getAuthenticatorConsumer$3(AuthenticatorChain.java:175)
	at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:136)
	at org.elasticsearch.xpack.security.authc.OAuth2TokenAuthenticator.lambda$authenticate$0(OAuth2TokenAuthenticator.java:48)
	at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:136)
	at org.elasticsearch.xpack.security.authc.TokenService.lambda$checkIfTokenIsValid$61(TokenService.java:1963)
	at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:136)
	at org.elasticsearch.action.support.ContextPreservingActionListener.onResponse(ContextPreservingActionListener.java:31)
	at org.elasticsearch.action.support.TransportAction$1.onResponse(TransportAction.java:88)
	at org.elasticsearch.action.support.TransportAction$1.onResponse(TransportAction.java:82)
	at org.elasticsearch.action.support.ContextPreservingActionListener.onResponse(ContextPreservingActionListener.java:31)
	at org.elasticsearch.xpack.security.action.filter.SecurityActionFilter.lambda$applyInternal$2(SecurityActionFilter.java:192)
	at org.elasticsearch.action.ActionListener$DelegatingFailureActionListener.onResponse(ActionListener.java:219)
	at org.elasticsearch.action.support.single.shard.TransportSingleShardAction$AsyncSingleAction$2.handleResponse(TransportSingleShardAction.java:253)
	at org.elasticsearch.action.support.single.shard.TransportSingleShardAction$AsyncSingleAction$2.handleResponse(TransportSingleShardAction.java:244)
	at org.elasticsearch.transport.TransportService$ContextRestoreResponseHandler.handleResponse(TransportService.java:1471)
	at org.elasticsearch.transport.InboundHandler.doHandleResponse(InboundHandler.java:340)
	at org.elasticsearch.transport.InboundHandler.handleResponse(InboundHandler.java:324)
	at org.elasticsearch.transport.InboundHandler.messageReceived(InboundHandler.java:134)
	at org.elasticsearch.transport.InboundHandler.inboundMessage(InboundHandler.java:88)
	at org.elasticsearch.transport.TcpTransport.inboundMessage(TcpTransport.java:743)
	at org.elasticsearch.transport.InboundPipeline.forwardFragments(InboundPipeline.java:147)
	at org.elasticsearch.transport.InboundPipeline.doHandleBytes(InboundPipeline.java:119)
	at org.elasticsearch.transport.InboundPipeline.handleBytes(InboundPipeline.java:84)
	at org.elasticsearch.transport.netty4.Netty4MessageChannelHandler.channelRead(Netty4MessageChannelHandler.java:71)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
	at io.netty.handler.logging.LoggingHandler.channelRead(LoggingHandler.java:280)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
	at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1374)
	at io.netty.handler.ssl.SslHandler.decodeJdkCompatible(SslHandler.java:1237)
	at io.netty.handler.ssl.SslHandler.decode(SslHandler.java:1286)
	at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:507)
	at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:446)
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:276)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166)
	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:719)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeysPlain(NioEventLoop.java:620)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:583)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493)
	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
	at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: java.lang.IllegalStateException: unable to create new index [.triggered_watches-reindexed-for-8] because it would match composable template [.triggered_watches]
	at org.elasticsearch.upgrades.SystemIndexMigrator.migrateSingleIndex(SystemIndexMigrator.java:399)
	at org.elasticsearch.upgrades.SystemIndexMigrator.lambda$run$3(SystemIndexMigrator.java:213)
	at org.elasticsearch.upgrades.SystemIndexMigrator.lambda$updateTaskState$11(SystemIndexMigrator.java:359)
	at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:136)
	at org.elasticsearch.action.ActionListener$MappedActionListener.onResponse(ActionListener.java:101)
	at org.elasticsearch.action.support.ContextPreservingActionListener.onResponse(ContextPreservingActionListener.java:31)
	at org.elasticsearch.action.support.TransportAction$1.onResponse(TransportAction.java:88)
	at org.elasticsearch.action.support.TransportAction$1.onResponse(TransportAction.java:82)
	at org.elasticsearch.action.support.ContextPreservingActionListener.onResponse(ContextPreservingActionListener.java:31)
	at org.elasticsearch.xpack.security.action.filter.SecurityActionFilter.lambda$applyInternal$2(SecurityActionFilter.java:192)
	at org.elasticsearch.action.ActionListener$DelegatingFailureActionListener.onResponse(ActionListener.java:219)
	at org.elasticsearch.action.ActionListener$DelegatingActionListener.onResponse(ActionListener.java:186)
	at org.elasticsearch.action.ActionListener$MappedActionListener.onResponse(ActionListener.java:101)
	at org.elasticsearch.persistent.PersistentTasksClusterService$4.clusterStateProcessed(PersistentTasksClusterService.java:267)
	at org.elasticsearch.cluster.service.MasterService$SafeClusterStateTaskListener.clusterStateProcessed(MasterService.java:645)
	at org.elasticsearch.cluster.service.MasterService$TaskOutputs.lambda$processedDifferentClusterState$1(MasterService.java:517)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
	at org.elasticsearch.cluster.service.MasterService$TaskOutputs.processedDifferentClusterState(MasterService.java:517)
	at org.elasticsearch.cluster.service.MasterService.onPublicationSuccess(MasterService.java:322)
	at org.elasticsearch.cluster.service.MasterService.publish(MasterService.java:314)
	at org.elasticsearch.cluster.service.MasterService.runTasks(MasterService.java:287)
	at org.elasticsearch.cluster.service.MasterService.access$100(MasterService.java:63)
	at org.elasticsearch.cluster.service.MasterService$Batcher.run(MasterService.java:170)
	at org.elasticsearch.cluster.service.TaskBatcher.runIfNotProcessed(TaskBatcher.java:146)
	at org.elasticsearch.cluster.service.TaskBatcher$BatchedTask.run(TaskBatcher.java:202)
	at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:718)
	at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.runAndClean(PrioritizedEsThreadPoolExecutor.java:262)
	at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:225)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	... 1 more
"""
                }
              ],
              "type" : "illegal_state_exception",
              "reason" : "unable to create new index [.triggered_watches-reindexed-for-8] because it would match composable template [.triggered_watches]",
              "stack_trace" : """java.lang.IllegalStateException: unable to create new index [.triggered_watches-reindexed-for-8] because it would match composable template [.triggered_watches]
	at org.elasticsearch.upgrades.SystemIndexMigrator.migrateSingleIndex(SystemIndexMigrator.java:399)
	at org.elasticsearch.upgrades.SystemIndexMigrator.lambda$run$3(SystemIndexMigrator.java:213)
	at org.elasticsearch.upgrades.SystemIndexMigrator.lambda$updateTaskState$11(SystemIndexMigrator.java:359)
	at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:136)
	at org.elasticsearch.action.ActionListener$MappedActionListener.onResponse(ActionListener.java:101)
	at org.elasticsearch.action.support.ContextPreservingActionListener.onResponse(ContextPreservingActionListener.java:31)
	at org.elasticsearch.action.support.TransportAction$1.onResponse(TransportAction.java:88)
	at org.elasticsearch.action.support.TransportAction$1.onResponse(TransportAction.java:82)
	at org.elasticsearch.action.support.ContextPreservingActionListener.onResponse(ContextPreservingActionListener.java:31)
	at org.elasticsearch.xpack.security.action.filter.SecurityActionFilter.lambda$applyInternal$2(SecurityActionFilter.java:192)
	at org.elasticsearch.action.ActionListener$DelegatingFailureActionListener.onResponse(ActionListener.java:219)
	at org.elasticsearch.action.ActionListener$DelegatingActionListener.onResponse(ActionListener.java:186)
	at org.elasticsearch.action.ActionListener$MappedActionListener.onResponse(ActionListener.java:101)
	at org.elasticsearch.persistent.PersistentTasksClusterService$4.clusterStateProcessed(PersistentTasksClusterService.java:267)
	at org.elasticsearch.cluster.service.MasterService$SafeClusterStateTaskListener.clusterStateProcessed(MasterService.java:645)
	at org.elasticsearch.cluster.service.MasterService$TaskOutputs.lambda$processedDifferentClusterState$1(MasterService.java:517)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
	at org.elasticsearch.cluster.service.MasterService$TaskOutputs.processedDifferentClusterState(MasterService.java:517)
	at org.elasticsearch.cluster.service.MasterService.onPublicationSuccess(MasterService.java:322)
	at org.elasticsearch.cluster.service.MasterService.publish(MasterService.java:314)
	at org.elasticsearch.cluster.service.MasterService.runTasks(MasterService.java:287)
	at org.elasticsearch.cluster.service.MasterService.access$100(MasterService.java:63)
	at org.elasticsearch.cluster.service.MasterService$Batcher.run(MasterService.java:170)
	at org.elasticsearch.cluster.service.TaskBatcher.runIfNotProcessed(TaskBatcher.java:146)
	at org.elasticsearch.cluster.service.TaskBatcher$BatchedTask.run(TaskBatcher.java:202)
	at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:718)
	at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.runAndClean(PrioritizedEsThreadPoolExecutor.java:262)
	at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:225)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:833)
"""
            }
          }
        },
        {
          "index" : ".watches",
          "version" : "6.5.4"
        }
      ]
    }
  ],
  "migration_status" : "ERROR"
}

Based on this, I have executed the below 2 commands from the dev tools and re-tried the Migrate system indices, and still getting the same failure message.

DELETE _template/.watches
DELETE _template/.triggered_watches


Hello,

I already tried the solution mentioned in the link Failed migration of system indices (.triggered_watches) with Upgrade Assistant using v7.17.14 - #4 by William_Brafford and it didn't help

I deleted it from Kibana index management and the issue fixed