Trying to update state on task with unexpected allocation id – How to solve related issues

Opster Team

Jan-20, Version: 1.7-8.0

Before you begin reading this guide, we recommend you run Elasticsearch Error Check-Up which analyzes 2 JSON files to detect many errors.

To easily locate the root cause and resolve this issue try AutoOps for Elasticsearch & OpenSearch. It diagnoses problems by analyzing hundreds of metrics collected by a lightweight agent and offers guidance for resolving them. Take a self-guided product tour to see for yourself (no registration required).

This guide will help you check for common problems that cause the log ” Trying to update state on task with unexpected allocation id ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: allocation, cluster, persistent and task.

Log Context

Log “Trying to update state on task {} with unexpected allocation id {}” classname is PersistentTasksClusterService.java.
We extracted the following from Elasticsearch source code for those seeking an in-depth context :

                 PersistentTasksCustomMetaData.Builder tasksInProgress = builder(currentState);
                if (tasksInProgress.hasTask(taskId; taskAllocationId)) {
                    return update(currentState; tasksInProgress.updateTaskState(taskId; taskState));
                } else {
                    if (tasksInProgress.hasTask(taskId)) {
                        logger.warn("trying to update state on task {} with unexpected allocation id {}"; taskId; taskAllocationId);
                    } else {
                        logger.warn("trying to update state on non-existing task {}"; taskId);
                    }
                    throw new ResourceNotFoundException("the task with id {} and allocation id {} doesn't exist"; taskId; taskAllocationId);
                }




 

Watch product tour

Try AutoOps to find & fix Elasticsearch problems

Analyze Your Cluster
Skip to content