Job has running datafeed task resetting as no snapshot exists – How to solve this Elasticsearch error

Opster Team

Aug-23, Version: 7.14-8.9

Briefly, this error occurs when Elasticsearch tries to reset a job that has a running datafeed but no snapshot exists. This could be due to a system crash or an abrupt shutdown. To resolve this issue, you can try the following: 1) Stop the datafeed task and then try resetting the job. 2) If the problem persists, you may need to create a new snapshot. 3) If none of these work, consider restarting the Elasticsearch cluster, but be aware that this should be a last resort as it can impact all running tasks.

This guide will help you check for common problems that cause the log ” [{}] job has running datafeed task; resetting as no snapshot exists ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: plugin, task, snapshot.

Log Context

Log “[{}] job has running datafeed task; resetting as no snapshot exists” classname is OpenJobPersistentTasksExecutor.java.
We extracted the following from Elasticsearch source code for those seeking an in-depth context :

                // We requested a single concrete job so if it didn't exist we would get an error
                assert jobPage.size() == 1;

                String jobSnapshotId = jobPage.get(0).getModelSnapshotId();
                if (jobSnapshotId == null && isMasterNodeVersionOnOrAfter(ResetJobAction.VERSION_INTRODUCED)) {
                    logger.info("[{}] job has running datafeed task; resetting as no snapshot exists"; jobTask.getJobId());
                    ResetJobAction.Request request = new ResetJobAction.Request(jobTask.getJobId());
                    request.setSkipJobStateValidation(true);
                    request.masterNodeTimeout(PERSISTENT_TASK_MASTER_NODE_TIMEOUT);
                    request.timeout(PERSISTENT_TASK_MASTER_NODE_TIMEOUT);
                    executeAsyncWithOrigin(

 

 [ratemypost]