diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/FileManagementStorageService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/FileManagementStorageService.java index 46f7395dc..12f36e5ba 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/FileManagementStorageService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/FileManagementStorageService.java @@ -140,7 +140,7 @@ public class FileManagementStorageService { @SneakyThrows public void saveEntityLog(String dossierId, String fileId, EntityLog entityLog) { - entityLogMongoService.saveEntityLog(dossierId, fileId, entityLog); + entityLogMongoService.upsertEntityLog(dossierId, fileId, entityLog); } diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/resources/mongo/changelog/tenant/2-create-indices-for-entries.xml b/persistence-service-v1/persistence-service-processor-v1/src/main/resources/mongo/changelog/tenant/2-create-indices-for-entries.xml index 65a215858..6667d00ce 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/resources/mongo/changelog/tenant/2-create-indices-for-entries.xml +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/resources/mongo/changelog/tenant/2-create-indices-for-entries.xml @@ -10,24 +10,35 @@ { - "_id": 1, - "positions.pageNumber": 1 + "entityLogId": 1, } - {name: "positions_pageNumber_index"} + {name: "entityLogId_index"} { - "_id": 1, - "changes.analysisNumber": -1 + "entityLogId": 1, + "positions.pageNumber": 1 } - {name: "changes_analysisNumber_index"} + {name: "entityLogId_positionsPageNumber_index"} + + + + + + { + "entityLogId": 1, + "containingNodeId": 1 + } + + + {name: "entityLogId_containingNodeId_index"} diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/resources/mongo/changelog/tenant/example-create-indices-for-entries.xml b/persistence-service-v1/persistence-service-processor-v1/src/main/resources/mongo/changelog/tenant/example-create-indices-for-entries.xml new file mode 100644 index 000000000..d32c50108 --- /dev/null +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/resources/mongo/changelog/tenant/example-create-indices-for-entries.xml @@ -0,0 +1,84 @@ + + + + + + + { + "entityLogId": 1, + } + + + {name: "entityLogId_index"} + + + + + + { + "entityLogId": 1, + "positions.pageNumber": 1 + } + + + {name: "entityLogId_positionsPageNumber_index"} + + + + + + { + "entityLogId": 1, + "changes.analysisNumber": -1 + } + + + {name: "entityLogId_changesAnalysisNumber_index"} + + + + + + { + "entityLogId": 1, + "containingNodeId": 1 + } + + + {name: "entityLogId_containingNodeId_index"} + + + + + + { + "id": 1, + "containingNodeId": 1 + } + + + {name: "id_containingNodeId_index"} + + + + + + { + "entityLogId": 1, + "type": 1 + } + + + {name: "entityLogId_type_index"} + + + + + + + \ No newline at end of file diff --git a/persistence-service-v1/persistence-service-server-v1/src/test/java/com/iqser/red/service/peristence/v1/server/integration/tests/EntityLogMongoServiceTest.java b/persistence-service-v1/persistence-service-server-v1/src/test/java/com/iqser/red/service/peristence/v1/server/integration/tests/EntityLogMongoServiceTest.java index 88a604235..8867fc416 100644 --- a/persistence-service-v1/persistence-service-server-v1/src/test/java/com/iqser/red/service/peristence/v1/server/integration/tests/EntityLogMongoServiceTest.java +++ b/persistence-service-v1/persistence-service-server-v1/src/test/java/com/iqser/red/service/peristence/v1/server/integration/tests/EntityLogMongoServiceTest.java @@ -247,7 +247,7 @@ public class EntityLogMongoServiceTest extends AbstractPersistenceServerServiceT entityLog = objectMapper.readValue(file.getInputStream(), EntityLog.class); entityLog.setAnalysisNumber(entityLog.getAnalysisNumber() + 1); - entityLogMongoService.saveEntityLog(TEST_DOSSIER_ID, TEST_FILE3_ID, entityLog); + entityLogMongoService.upsertEntityLog(TEST_DOSSIER_ID, TEST_FILE3_ID, entityLog); found = entityLogMongoService.findEntityLogByDossierIdAndFileId(TEST_DOSSIER_ID, TEST_FILE3_ID); assertTrue(found.isPresent()); diff --git a/persistence-service-v1/persistence-service-shared-mongo-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/mongo/service/EntityLogMongoService.java b/persistence-service-v1/persistence-service-shared-mongo-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/mongo/service/EntityLogMongoService.java index 46b6d9859..4b7e62238 100644 --- a/persistence-service-v1/persistence-service-shared-mongo-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/mongo/service/EntityLogMongoService.java +++ b/persistence-service-v1/persistence-service-shared-mongo-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/mongo/service/EntityLogMongoService.java @@ -49,12 +49,10 @@ public class EntityLogMongoService { // this does everything : insert when not found and update if found - // todo: remove and replace when services use insert,update,delete correctly - public void saveEntityLog(String dossierId, String fileId, EntityLog entityLog) { + public void upsertEntityLog(String dossierId, String fileId, EntityLog entityLog) { Optional optionalEntityLogDocument = entityLogDocumentRepository.findById(mapper.getLogId(dossierId, fileId)); if (optionalEntityLogDocument.isEmpty()) { - // throw new EntityLogDocumentNotFoundException(String.format("Entity log for dossier %s and file %s not found.", dossierId, fileId)); insertEntityLog(dossierId, fileId, entityLog); return; }