Skip to content

Commit aafcd85

Browse files
authored
Move persistent task registrations to core (#30755)
Persistent tasks was moved from X-Pack to core in #28455. However, registration of the named writables and named X-content was left in X-Pack. This change moves the registration of the named writables and named X-content into core. Additionally, the persistent task actions are no longer registered in the X-Pack client plugin, as they are already registered in ActionModule.
1 parent ff0b6c7 commit aafcd85

File tree

5 files changed

+10
-38
lines changed

5 files changed

+10
-38
lines changed

server/src/main/java/org/elasticsearch/cluster/ClusterModule.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,11 @@
6969
import org.elasticsearch.common.xcontent.NamedXContentRegistry;
7070
import org.elasticsearch.gateway.GatewayAllocator;
7171
import org.elasticsearch.ingest.IngestMetadata;
72+
import org.elasticsearch.persistent.PersistentTasksCustomMetaData;
73+
import org.elasticsearch.persistent.PersistentTasksNodeService;
7274
import org.elasticsearch.plugins.ClusterPlugin;
7375
import org.elasticsearch.script.ScriptMetaData;
76+
import org.elasticsearch.tasks.Task;
7477
import org.elasticsearch.tasks.TaskResultsService;
7578

7679
import java.util.ArrayList;
@@ -140,6 +143,10 @@ public static List<Entry> getNamedWriteables() {
140143
registerMetaDataCustom(entries, IngestMetadata.TYPE, IngestMetadata::new, IngestMetadata::readDiffFrom);
141144
registerMetaDataCustom(entries, ScriptMetaData.TYPE, ScriptMetaData::new, ScriptMetaData::readDiffFrom);
142145
registerMetaDataCustom(entries, IndexGraveyard.TYPE, IndexGraveyard::new, IndexGraveyard::readDiffFrom);
146+
registerMetaDataCustom(entries, PersistentTasksCustomMetaData.TYPE, PersistentTasksCustomMetaData::new,
147+
PersistentTasksCustomMetaData::readDiffFrom);
148+
// Task Status (not Diffable)
149+
entries.add(new Entry(Task.Status.class, PersistentTasksNodeService.Status.NAME, PersistentTasksNodeService.Status::new));
143150
return entries;
144151
}
145152

@@ -154,6 +161,8 @@ public static List<NamedXContentRegistry.Entry> getNamedXWriteables() {
154161
ScriptMetaData::fromXContent));
155162
entries.add(new NamedXContentRegistry.Entry(MetaData.Custom.class, new ParseField(IndexGraveyard.TYPE),
156163
IndexGraveyard::fromXContent));
164+
entries.add(new NamedXContentRegistry.Entry(MetaData.Custom.class, new ParseField(PersistentTasksCustomMetaData.TYPE),
165+
PersistentTasksCustomMetaData::fromXContent));
157166
return entries;
158167
}
159168

server/src/main/java/org/elasticsearch/persistent/PersistentTasksCustomMetaData.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525
import org.elasticsearch.cluster.ClusterState;
2626
import org.elasticsearch.cluster.NamedDiff;
2727
import org.elasticsearch.cluster.metadata.MetaData;
28-
import org.elasticsearch.cluster.node.DiscoveryNodes;
2928
import org.elasticsearch.common.Nullable;
3029
import org.elasticsearch.common.ParseField;
3130
import org.elasticsearch.common.Strings;

server/src/test/java/org/elasticsearch/persistent/TestPersistentTasksPlugin.java

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,7 @@
3333
import org.elasticsearch.client.Client;
3434
import org.elasticsearch.client.ElasticsearchClient;
3535
import org.elasticsearch.cluster.ClusterState;
36-
import org.elasticsearch.cluster.NamedDiff;
3736
import org.elasticsearch.cluster.metadata.IndexNameExpressionResolver;
38-
import org.elasticsearch.cluster.metadata.MetaData;
3937
import org.elasticsearch.cluster.node.DiscoveryNode;
4038
import org.elasticsearch.cluster.service.ClusterService;
4139
import org.elasticsearch.common.ParseField;
@@ -100,21 +98,13 @@ public List<PersistentTasksExecutor<?>> getPersistentTasksExecutor(ClusterServic
10098
public List<NamedWriteableRegistry.Entry> getNamedWriteables() {
10199
return Arrays.asList(
102100
new NamedWriteableRegistry.Entry(PersistentTaskParams.class, TestPersistentTasksExecutor.NAME, TestParams::new),
103-
new NamedWriteableRegistry.Entry(Task.Status.class,
104-
PersistentTasksNodeService.Status.NAME, PersistentTasksNodeService.Status::new),
105-
new NamedWriteableRegistry.Entry(MetaData.Custom.class, PersistentTasksCustomMetaData.TYPE,
106-
PersistentTasksCustomMetaData::new),
107-
new NamedWriteableRegistry.Entry(NamedDiff.class, PersistentTasksCustomMetaData.TYPE,
108-
PersistentTasksCustomMetaData::readDiffFrom),
109101
new NamedWriteableRegistry.Entry(Task.Status.class, TestPersistentTasksExecutor.NAME, Status::new)
110102
);
111103
}
112104

113105
@Override
114106
public List<NamedXContentRegistry.Entry> getNamedXContent() {
115107
return Arrays.asList(
116-
new NamedXContentRegistry.Entry(MetaData.Custom.class, new ParseField(PersistentTasksCustomMetaData.TYPE),
117-
PersistentTasksCustomMetaData::fromXContent),
118108
new NamedXContentRegistry.Entry(PersistentTaskParams.class, new ParseField(TestPersistentTasksExecutor.NAME),
119109
TestParams::fromXContent),
120110
new NamedXContentRegistry.Entry(Task.Status.class, new ParseField(TestPersistentTasksExecutor.NAME), Status::fromXContent)

x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/XPackClientPlugin.java

Lines changed: 1 addition & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -91,13 +91,7 @@
9191
import org.elasticsearch.xpack.core.ml.datafeed.DatafeedState;
9292
import org.elasticsearch.xpack.core.ml.job.config.JobTaskStatus;
9393
import org.elasticsearch.xpack.core.monitoring.MonitoringFeatureSetUsage;
94-
import org.elasticsearch.persistent.CompletionPersistentTaskAction;
9594
import org.elasticsearch.persistent.PersistentTaskParams;
96-
import org.elasticsearch.persistent.PersistentTasksCustomMetaData;
97-
import org.elasticsearch.persistent.PersistentTasksNodeService;
98-
import org.elasticsearch.persistent.RemovePersistentTaskAction;
99-
import org.elasticsearch.persistent.StartPersistentTaskAction;
100-
import org.elasticsearch.persistent.UpdatePersistentTaskStatusAction;
10195
import org.elasticsearch.xpack.core.rollup.RollupFeatureSetUsage;
10296
import org.elasticsearch.xpack.core.rollup.RollupField;
10397
import org.elasticsearch.xpack.core.rollup.action.DeleteRollupJobAction;
@@ -255,11 +249,6 @@ public List<GenericAction> getClientActions() {
255249
GetCalendarEventsAction.INSTANCE,
256250
PostCalendarEventsAction.INSTANCE,
257251
PersistJobAction.INSTANCE,
258-
// licensing
259-
StartPersistentTaskAction.INSTANCE,
260-
UpdatePersistentTaskStatusAction.INSTANCE,
261-
RemovePersistentTaskAction.INSTANCE,
262-
CompletionPersistentTaskAction.INSTANCE,
263252
// security
264253
ClearRealmCacheAction.INSTANCE,
265254
ClearRolesCacheAction.INSTANCE,
@@ -324,18 +313,12 @@ public List<NamedWriteableRegistry.Entry> getNamedWriteables() {
324313
// ML - Custom metadata
325314
new NamedWriteableRegistry.Entry(MetaData.Custom.class, "ml", MlMetadata::new),
326315
new NamedWriteableRegistry.Entry(NamedDiff.class, "ml", MlMetadata.MlMetadataDiff::new),
327-
new NamedWriteableRegistry.Entry(MetaData.Custom.class, PersistentTasksCustomMetaData.TYPE,
328-
PersistentTasksCustomMetaData::new),
329-
new NamedWriteableRegistry.Entry(NamedDiff.class, PersistentTasksCustomMetaData.TYPE,
330-
PersistentTasksCustomMetaData::readDiffFrom),
331316
// ML - Persistent action requests
332317
new NamedWriteableRegistry.Entry(PersistentTaskParams.class, StartDatafeedAction.TASK_NAME,
333318
StartDatafeedAction.DatafeedParams::new),
334319
new NamedWriteableRegistry.Entry(PersistentTaskParams.class, OpenJobAction.TASK_NAME,
335320
OpenJobAction.JobParams::new),
336321
// ML - Task statuses
337-
new NamedWriteableRegistry.Entry(Task.Status.class, PersistentTasksNodeService.Status.NAME,
338-
PersistentTasksNodeService.Status::new),
339322
new NamedWriteableRegistry.Entry(Task.Status.class, JobTaskStatus.NAME, JobTaskStatus::new),
340323
new NamedWriteableRegistry.Entry(Task.Status.class, DatafeedState.NAME, DatafeedState::fromStream),
341324
new NamedWriteableRegistry.Entry(XPackFeatureSet.Usage.class, XPackField.MACHINE_LEARNING,
@@ -370,8 +353,6 @@ public List<NamedXContentRegistry.Entry> getNamedXContent() {
370353
// ML - Custom metadata
371354
new NamedXContentRegistry.Entry(MetaData.Custom.class, new ParseField("ml"),
372355
parser -> MlMetadata.METADATA_PARSER.parse(parser, null).build()),
373-
new NamedXContentRegistry.Entry(MetaData.Custom.class, new ParseField(PersistentTasksCustomMetaData.TYPE),
374-
PersistentTasksCustomMetaData::fromXContent),
375356
// ML - Persistent action requests
376357
new NamedXContentRegistry.Entry(PersistentTaskParams.class, new ParseField(StartDatafeedAction.TASK_NAME),
377358
StartDatafeedAction.DatafeedParams::fromXContent),
@@ -387,8 +368,7 @@ public List<NamedXContentRegistry.Entry> getNamedXContent() {
387368
new NamedXContentRegistry.Entry(MetaData.Custom.class, new ParseField(LicensesMetaData.TYPE),
388369
LicensesMetaData::fromXContent),
389370
//rollup
390-
new NamedXContentRegistry.Entry(PersistentTaskParams.class, new ParseField(RollupField.TASK_NAME),
391-
parser -> RollupJob.fromXContent(parser)),
371+
new NamedXContentRegistry.Entry(PersistentTaskParams.class, new ParseField(RollupField.TASK_NAME), RollupJob::fromXContent),
392372
new NamedXContentRegistry.Entry(Task.Status.class, new ParseField(RollupJobStatus.NAME), RollupJobStatus::fromXContent)
393373
);
394374
}

x-pack/qa/ml-native-tests/src/test/java/org/elasticsearch/xpack/ml/integration/MlNativeAutodetectIntegTestCase.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,6 @@
2626
import org.elasticsearch.common.xcontent.json.JsonXContent;
2727
import org.elasticsearch.index.query.QueryBuilders;
2828
import org.elasticsearch.persistent.PersistentTaskParams;
29-
import org.elasticsearch.persistent.PersistentTasksCustomMetaData;
30-
import org.elasticsearch.persistent.PersistentTasksNodeService;
3129
import org.elasticsearch.plugins.Plugin;
3230
import org.elasticsearch.search.SearchHit;
3331
import org.elasticsearch.search.SearchHits;
@@ -447,14 +445,10 @@ protected void ensureClusterStateConsistency() throws IOException {
447445
List<NamedWriteableRegistry.Entry> entries = new ArrayList<>(ClusterModule.getNamedWriteables());
448446
entries.addAll(new SearchModule(Settings.EMPTY, true, Collections.emptyList()).getNamedWriteables());
449447
entries.add(new NamedWriteableRegistry.Entry(MetaData.Custom.class, "ml", MlMetadata::new));
450-
entries.add(new NamedWriteableRegistry.Entry(MetaData.Custom.class, PersistentTasksCustomMetaData.TYPE,
451-
PersistentTasksCustomMetaData::new));
452448
entries.add(new NamedWriteableRegistry.Entry(PersistentTaskParams.class, StartDatafeedAction.TASK_NAME,
453449
StartDatafeedAction.DatafeedParams::new));
454450
entries.add(new NamedWriteableRegistry.Entry(PersistentTaskParams.class, OpenJobAction.TASK_NAME,
455451
OpenJobAction.JobParams::new));
456-
entries.add(new NamedWriteableRegistry.Entry(Task.Status.class, PersistentTasksNodeService.Status.NAME,
457-
PersistentTasksNodeService.Status::new));
458452
entries.add(new NamedWriteableRegistry.Entry(Task.Status.class, JobTaskStatus.NAME, JobTaskStatus::new));
459453
entries.add(new NamedWriteableRegistry.Entry(Task.Status.class, DatafeedState.NAME, DatafeedState::fromStream));
460454
entries.add(new NamedWriteableRegistry.Entry(ClusterState.Custom.class, TokenMetaData.TYPE, TokenMetaData::new));

0 commit comments

Comments
 (0)