Skip to content

Commit 734a6fa

Browse files
committed
Address comments
1 parent a6d155b commit 734a6fa

File tree

2 files changed

+9
-7
lines changed

2 files changed

+9
-7
lines changed

modules/ingest-geoip/src/main/java/org/elasticsearch/ingest/geoip/GeoIpDownloaderTaskExecutor.java

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -231,10 +231,7 @@ public void clusterChanged(ClusterChangedEvent event) {
231231
// bootstrap task once iff it is not already bootstrapped
232232
AtomicBoolean taskIsBootstrapped = taskIsBootstrappedByProject.computeIfAbsent(projectId, k -> new AtomicBoolean(false));
233233
if (taskIsBootstrapped.getAndSet(true) == false) {
234-
this.taskIsBootstrappedByProject.computeIfAbsent(
235-
projectId,
236-
k -> new AtomicBoolean(hasAtLeastOneGeoipProcessor(projectMetadata))
237-
);
234+
atLeastOneGeoipProcessorByProject.computeIfAbsent(projectId, k -> hasAtLeastOneGeoipProcessor(projectMetadata));
238235
if (ENABLED_SETTING.get(event.state().getMetadata().settings(), settings)) {
239236
logger.debug("Bootstrapping geoip downloader task for project [{}]", projectId);
240237
startTask(projectId, () -> taskIsBootstrapped.set(false));
@@ -256,17 +253,19 @@ public void clusterChanged(ClusterChangedEvent event) {
256253
}
257254

258255
if (hasIngestPipelineChanges || hasIndicesChanges) {
259-
var atLeastOneGeoipProcessor = atLeastOneGeoipProcessorByProject.computeIfAbsent(projectId, k -> false);
256+
boolean atLeastOneGeoipProcessor = atLeastOneGeoipProcessorByProject.computeIfAbsent(projectId, k -> false);
260257
boolean newAtLeastOneGeoipProcessor = hasAtLeastOneGeoipProcessor(projectMetadata);
261-
258+
// update if necessary
259+
if (newAtLeastOneGeoipProcessor != atLeastOneGeoipProcessor) {
260+
atLeastOneGeoipProcessorByProject.put(projectId, newAtLeastOneGeoipProcessor);
261+
}
262262
if (newAtLeastOneGeoipProcessor && atLeastOneGeoipProcessor == false) {
263263
logger.trace("Scheduling runDownloader for project [{}] because a geoip processor has been added", projectId);
264264
GeoIpDownloader currentDownloader = getTask(projectId);
265265
if (currentDownloader != null) {
266266
currentDownloader.requestReschedule();
267267
}
268268
}
269-
atLeastOneGeoipProcessorByProject.put(projectId, newAtLeastOneGeoipProcessor);
270269
}
271270
}
272271
}

server/src/test/java/org/elasticsearch/cluster/ClusterChangedEventTests.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -531,6 +531,7 @@ public void testChangedCustomProjectMetadataSet() {
531531
.putProjectMetadata(ProjectMetadata.builder(project2).build())
532532
.build();
533533
ClusterChangedEvent event = new ClusterChangedEvent("_na_", newState, originalState);
534+
// IndexGraveyard is always added when a new project is created, this checks that IndexGraveyard is "changed
534535
assertTrue(event.customMetadataChanged(project2.id(), IndexGraveyard.TYPE));
535536
assertTrue(event.customMetadataChanged(project2.id(), custom2.getWriteableName()));
536537
// No change to other project
@@ -545,6 +546,7 @@ public void testChangedCustomProjectMetadataSet() {
545546
// project2 is removed
546547
ClusterState newState = originalState;
547548
ClusterChangedEvent event = new ClusterChangedEvent("_na_", newState, oldState);
549+
// IndexGraveyard is always added when a new project is created, this checks that IndexGraveyard is "changed"
548550
assertTrue(event.customMetadataChanged(project2.id(), IndexGraveyard.TYPE));
549551
assertTrue(event.customMetadataChanged(project2.id(), custom2.getWriteableName()));
550552
// No change to other project
@@ -602,6 +604,7 @@ public void testChangedCustomMetadataSetMultiProject() {
602604
)
603605
.build();
604606
event = new ClusterChangedEvent("_na_", originalState, newState);
607+
// IndexGraveyard is always added when a new project is created, this checks that IndexGraveyard is "changed"
605608
assertEquals(Set.of(IndexGraveyard.TYPE, project2Custom.getWriteableName()), event.changedCustomProjectMetadataSet());
606609
}
607610

0 commit comments

Comments
 (0)