Skip to content

Commit 861a285

Browse files
committed
Fixes after merge
1 parent ceeaebe commit 861a285

File tree

6 files changed

+20
-17
lines changed

6 files changed

+20
-17
lines changed

core/src/main/java/org/fao/geonet/kernel/search/index/BatchOpsMetadataReindexer.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,6 @@ public static boolean isIndexing() {
9595
private final AtomicInteger inError = new AtomicInteger();
9696
private CompletableFuture<Void> allCompleted;
9797
private final MBeanExporter exporter;
98-
private final EsSearchManager esSearchManager;
9998

10099
public BatchOpsMetadataReindexer(DataManager dm, Set<Integer> metadata) {
101100
super(dm);

core/src/test/java/org/fao/geonet/AbstractCoreIntegrationTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -391,7 +391,7 @@ protected AbstractMetadata injectMetadataInDbDoNotRefreshHeader(Element sampleMe
391391
return injectMetadataOrSubtemplateInDb(sampleMetadataXml, context, MetadataType.METADATA);
392392
}
393393

394-
protected AbstractMetadata injectMetadataInDb(Element element, ServiceContext serviceContext, boolean refreshHeader) throws Exception {
394+
protected AbstractMetadata injectMetadataInDb(Element element, ServiceContext serviceContext) throws Exception {
395395
return injectMetadataOrSubtemplateInDb(element, serviceContext, MetadataType.METADATA);
396396
}
397397

harvesters/src/main/java/org/fao/geonet/kernel/harvest/harvester/sftp/Aligner.java

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
import org.fao.geonet.kernel.harvest.harvester.sftp.client.SftpClient;
5050
import org.fao.geonet.kernel.harvest.harvester.sftp.client.SftpFileInfo;
5151
import org.fao.geonet.kernel.search.IndexingMode;
52+
import org.fao.geonet.kernel.search.submission.batch.BatchingDeletionSubmitter;
5253
import org.fao.geonet.repository.MetadataRepository;
5354
import org.fao.geonet.repository.specification.MetadataSpecs;
5455
import org.fao.geonet.utils.Xml;
@@ -176,14 +177,16 @@ public HarvestResult align(Collection<HarvestError> errors) throws Exception {
176177
"from the same source if they " +
177178
" were not in this harvesting result...");
178179
List<Integer> existingMetadata = context.getBean(MetadataRepository.class).findIdsBy((Specification<Metadata>) MetadataSpecs.hasHarvesterUuid(params.getUuid()));
179-
for (Integer existingId : existingMetadata) {
180-
if (cancelMonitor.get()) {
181-
return this.result;
182-
}
183-
if (!idsForHarvestingResult.contains(existingId)) {
184-
log.debug(" Removing: " + existingId);
185-
metadataManager.deleteMetadata(context, existingId.toString());
186-
result.locallyRemoved++;
180+
try (BatchingDeletionSubmitter deletionSubmitter = new BatchingDeletionSubmitter()) {
181+
for (Integer existingId : existingMetadata) {
182+
if (cancelMonitor.get()) {
183+
return this.result;
184+
}
185+
if (!idsForHarvestingResult.contains(existingId)) {
186+
log.debug(" Removing: " + existingId);
187+
metadataManager.deleteMetadata(context, existingId.toString(), deletionSubmitter);
188+
result.locallyRemoved++;
189+
}
187190
}
188191
}
189192

@@ -320,13 +323,13 @@ private void addMetadata(RecordInfo ri, Element md, String uuidToAssign) throws
320323

321324
addCategories(metadata, params.getCategories(), localCateg, context, null, false);
322325

323-
metadata = metadataManager.insertMetadata(context, metadata, md, IndexingMode.none, false, UpdateDatestamp.NO, false, false);
326+
metadata = metadataManager.insertMetadata(context, metadata, md, IndexingMode.none, false, UpdateDatestamp.NO, false, batchingIndexSubmitter);
324327

325328
String id = String.valueOf(metadata.getId());
326329

327330
addPrivileges(id, params.getPrivileges(), localGroups, context);
328331

329-
metadataIndexer.indexMetadata(id, true, IndexingMode.full);
332+
metadataIndexer.indexMetadata(id, batchingIndexSubmitter, IndexingMode.full);
330333
result.addedMetadata++;
331334
idsForHarvestingResult.add(metadata.getId());
332335
}
@@ -343,7 +346,7 @@ private void updateMetadata(RecordInfo ri, String id, Element md, boolean force)
343346
} else {
344347
log.debug(" - Updating local metadata for uuid:" + ri.uuid);
345348
if (updatingLocalMetadata(ri, id, md, force)) {
346-
metadataIndexer.indexMetadata(id, true, IndexingMode.full);
349+
metadataIndexer.indexMetadata(id, batchingIndexSubmitter, IndexingMode.full);
347350
result.updatedMetadata++;
348351
}
349352
}

harvesters/src/main/java/org/fao/geonet/kernel/harvest/harvester/simpleurl/Aligner.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,7 @@ boolean updateMetadata(Map.Entry<String, Element> ri, String id, Boolean force)
303303
metadata.getCategories().clear();
304304
addCategories(metadata, params.getCategories(), localCateg, context, null, true);
305305

306-
metadataIndexer.indexMetadata(id, true, IndexingMode.full);
306+
metadataIndexer.indexMetadata(id, batchingIndexSubmitter, IndexingMode.full);
307307
result.updatedMetadata++;
308308
return true;
309309
}

services/src/test/java/org/fao/geonet/api/processing/ValidateApiTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
import org.fao.geonet.domain.SchematronCriteriaType;
3232
import org.fao.geonet.domain.SchematronRequirement;
3333
import org.fao.geonet.domain.User;
34+
import org.fao.geonet.kernel.search.submission.DirectIndexSubmitter;
3435
import org.fao.geonet.kernel.setting.SettingManager;
3536
import org.fao.geonet.kernel.setting.Settings;
3637
import org.fao.geonet.repository.MetadataValidationRepository;
@@ -96,7 +97,7 @@ public void initContext() throws Exception {
9697
@Test
9798
public void validateMd() throws Exception {
9899
Element holoceneElem = getSample("kernel/holocene.xml");
99-
AbstractMetadata metadata = injectMetadataInDb(holoceneElem, context, true);
100+
AbstractMetadata metadata = injectMetadataInDb(holoceneElem, context);
100101

101102
validateAndCheckIsoSchematronOk(context, metadata);
102103
}
@@ -111,7 +112,7 @@ public void validateMdWithSubtemplate() throws Exception {
111112
Element extentElem = Xml.selectElement(holoceneElem, "gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent");
112113
extentElem.setAttribute("href", "local://srv/api/registries/entries/"+ subtemplate.getUuid() + "?lang=ger,fre,ita,eng,roh&amp;schema=iso19139.che", XLINK);
113114
extentElem.removeChild("EX_Extent", GMD);
114-
AbstractMetadata metadata = injectMetadataInDb(holoceneElem, context, true);
115+
AbstractMetadata metadata = injectMetadataInDb(holoceneElem, context);
115116

116117
validateAndCheckIsoSchematronOk(context, metadata);
117118
} finally {

services/src/test/java/org/fao/geonet/api/records/MetadataApiTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ private void createTestData() throws Exception {
9494
Element metadataWithSubtemplate = getSample("kernel/vicinityMap.xml");
9595
Attribute href = (Attribute) Xml.selectElement(metadataWithSubtemplate, "gmd:identificationInfo/gmd:MD_DataIdentification/gmd:pointOfContact").getAttributes().get(0);
9696
href.setValue(href.getValue().replace("@contact_uuid@", subtemplate.getUuid()));
97-
mdWithSubtemplateUuid = injectMetadataInDb(metadataWithSubtemplate, context, true).getUuid();
97+
mdWithSubtemplateUuid = injectMetadataInDb(metadataWithSubtemplate, context).getUuid();
9898
}
9999

100100
@Test

0 commit comments

Comments
 (0)