diff --git a/core/src/main/java/org/elasticsearch/action/support/replication/ReplicationRequest.java b/core/src/main/java/org/elasticsearch/action/support/replication/ReplicationRequest.java index 3e88575b717..a7a80c0fe00 100644 --- a/core/src/main/java/org/elasticsearch/action/support/replication/ReplicationRequest.java +++ b/core/src/main/java/org/elasticsearch/action/support/replication/ReplicationRequest.java @@ -202,8 +202,8 @@ public abstract class ReplicationRequest reason = new AtomicReference<>(); - public CancellableTask(long id, String type, String action, String description) { - super(id, type, action, description); - } - public CancellableTask(long id, String type, String action, String description, TaskId parentTaskId) { super(id, type, action, description, parentTaskId); } diff --git a/core/src/main/java/org/elasticsearch/tasks/Task.java b/core/src/main/java/org/elasticsearch/tasks/Task.java index b2a756b2efd..ab07874c9c2 100644 --- a/core/src/main/java/org/elasticsearch/tasks/Task.java +++ b/core/src/main/java/org/elasticsearch/tasks/Task.java @@ -44,10 +44,6 @@ public class Task { private final long startTimeNanos; - public Task(long id, String type, String action, String description) { - this(id, type, action, description, TaskId.EMPTY_TASK_ID); - } - public Task(long id, String type, String action, String description, TaskId parentTask) { this(id, type, action, description, parentTask, System.currentTimeMillis(), System.nanoTime()); } diff --git a/core/src/main/java/org/elasticsearch/transport/TransportRequest.java b/core/src/main/java/org/elasticsearch/transport/TransportRequest.java index 846daae6eeb..4e84a84abd3 100644 --- a/core/src/main/java/org/elasticsearch/transport/TransportRequest.java +++ b/core/src/main/java/org/elasticsearch/transport/TransportRequest.java @@ -49,22 +49,25 @@ public abstract class TransportRequest extends TransportMessage { } /** - * Set a reference to task that caused this task to be run. + * Set a reference to task that created this request. */ public void setParentTask(TaskId taskId) { this.parentTaskId = taskId; } + /** + * Get a reference to the task that created this request. Defaults to {@link TaskId#EMPTY_TASK_ID}, meaning "there is no parent". + */ + public TaskId getParentTask() { + return parentTaskId; + } + /** * Returns the task object that should be used to keep track of the processing of the request. * * A request can override this method and return null to avoid being tracked by the task manager. */ public Task createTask(long id, String type, String action) { - return new Task(id, type, action, getDescription()); - } - - public Task createTask(long id, String type, String action, TaskId parentTaskId) { return new Task(id, type, action, getDescription(), parentTaskId); } diff --git a/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/CancellableTasksTests.java b/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/CancellableTasksTests.java index 1a3c28acc8f..a656b3d78e9 100644 --- a/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/CancellableTasksTests.java +++ b/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/CancellableTasksTests.java @@ -126,7 +126,7 @@ public class CancellableTasksTests extends TaskManagerTestCase { @Override public Task createTask(long id, String type, String action) { - return new CancellableTask(id, type, action, getDescription()); + return new CancellableTask(id, type, action, getDescription(), TaskId.EMPTY_TASK_ID); } } diff --git a/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/TestTaskPlugin.java b/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/TestTaskPlugin.java index 5ecc14a4b1a..70e540104e3 100644 --- a/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/TestTaskPlugin.java +++ b/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/TestTaskPlugin.java @@ -209,7 +209,7 @@ public class TestTaskPlugin extends Plugin { @Override public Task createTask(long id, String type, String action) { - return new CancellableTask(id, type, action, getDescription()); + return new CancellableTask(id, type, action, getDescription(), TaskId.EMPTY_TASK_ID); } } diff --git a/modules/reindex/src/main/java/org/elasticsearch/index/reindex/BulkByScrollTask.java b/modules/reindex/src/main/java/org/elasticsearch/index/reindex/BulkByScrollTask.java index 42798d5a34d..13aa7513cf5 100644 --- a/modules/reindex/src/main/java/org/elasticsearch/index/reindex/BulkByScrollTask.java +++ b/modules/reindex/src/main/java/org/elasticsearch/index/reindex/BulkByScrollTask.java @@ -28,6 +28,7 @@ import org.elasticsearch.common.util.concurrent.FutureUtils; import org.elasticsearch.common.xcontent.XContentBuilder; import org.elasticsearch.tasks.CancellableTask; import org.elasticsearch.tasks.Task; +import org.elasticsearch.tasks.TaskId; import org.elasticsearch.threadpool.ThreadPool; import java.io.IOException; @@ -70,7 +71,7 @@ public class BulkByScrollTask extends CancellableTask { private final AtomicReference delayedPrepareBulkRequestReference = new AtomicReference<>(); public BulkByScrollTask(long id, String type, String action, String description, float requestsPerSecond) { - super(id, type, action, description); + super(id, type, action, description, TaskId.EMPTY_TASK_ID); setRequestsPerSecond(requestsPerSecond); }