diff --git a/bamboo-specs/src/main/java/buildjob/PlanSpec.java b/bamboo-specs/src/main/java/buildjob/PlanSpec.java
index e24d36a..a36c7ba 100644
--- a/bamboo-specs/src/main/java/buildjob/PlanSpec.java
+++ b/bamboo-specs/src/main/java/buildjob/PlanSpec.java
@@ -97,7 +97,7 @@ public class PlanSpec {
.enabled(true),
new InjectVariablesTask().description("Inject git Tag").path("git.tag").namespace("g").scope(InjectVariablesScope.LOCAL),
new VcsTagTask().description("${bamboo.g.gitTag}").tagName("${bamboo.g.gitTag}").defaultRepository())
- .dockerConfiguration(new DockerConfiguration().image("nexus.iqser.com:5001/infra/maven:3.8.4-openjdk-17-slim")
+ .dockerConfiguration(new DockerConfiguration().image("nexus.knecon.com:5001/infra/maven:3.8.4-openjdk-17-slim")
.dockerRunArguments("--net=host")
.volume("/etc/maven/settings.xml", "/usr/share/maven/conf/settings.xml")
.volume("/var/run/docker.sock", "/var/run/docker.sock"))))
@@ -117,7 +117,7 @@ public class PlanSpec {
.inlineBody("#!/bin/bash\n" + "set -e\n" + "rm -rf ./*"),
new VcsCheckoutTask().description("Checkout Default Repository").cleanCheckout(true).checkoutItems(new CheckoutItem().defaultRepository()),
new ScriptTask().description("Sonar").location(Location.FILE).fileFromPath("bamboo-specs/src/main/resources/scripts/sonar-java.sh").argument(SERVICE_NAME))
- .dockerConfiguration(new DockerConfiguration().image("nexus.iqser.com:5001/infra/maven:3.8.4-openjdk-17-slim")
+ .dockerConfiguration(new DockerConfiguration().image("nexus.knecon.com:5001/infra/maven:3.8.4-openjdk-17-slim")
.dockerRunArguments("--net=host")
.volume("/etc/maven/settings.xml", "/usr/share/maven/conf/settings.xml")
.volume("/var/run/docker.sock", "/var/run/docker.sock"))))
diff --git a/bamboo-specs/src/main/resources/scripts/build-java.sh b/bamboo-specs/src/main/resources/scripts/build-java.sh
index 1eda5f1..d480acb 100755
--- a/bamboo-specs/src/main/resources/scripts/build-java.sh
+++ b/bamboo-specs/src/main/resources/scripts/build-java.sh
@@ -49,7 +49,7 @@ mvn -f ${bamboo_build_working_directory}/$SERVICE_NAME-v1/pom.xml \
-Dmaven.wagon.http.ssl.insecure=true \
-Dmaven.wagon.http.ssl.allowall=true \
-Dmaven.wagon.http.ssl.ignore.validity.dates=true \
- -DaltDeploymentRepository=iqser_release::default::https://nexus.iqser.com/repository/red-platform-releases
+ -DaltDeploymentRepository=iqser_release::default::https://nexus.knecon.com/repository/red-platform-releases
mvn --no-transfer-progress \
-f ${bamboo_build_working_directory}/$SERVICE_NAME-image-v1/pom.xml \
diff --git a/bamboo-specs/src/main/resources/scripts/sonar-java.sh b/bamboo-specs/src/main/resources/scripts/sonar-java.sh
index b7ade4d..6d31230 100755
--- a/bamboo-specs/src/main/resources/scripts/sonar-java.sh
+++ b/bamboo-specs/src/main/resources/scripts/sonar-java.sh
@@ -21,7 +21,7 @@ then
-f ${bamboo_build_working_directory}/$SERVICE_NAME-v1/pom.xml \
sonar:sonar \
-Dsonar.projectKey=RED_$SERVICE_NAME \
- -Dsonar.host.url=https://sonarqube.iqser.com \
+ -Dsonar.host.url=https://sonarqube.knecon.com \
-Dsonar.login=${bamboo_sonarqube_api_token_secret} \
-Dsonar.branch.name=${bamboo_planRepository_1_branch} \
-Dsonar.dependencyCheck.jsonReportPath=target/dependency-check-report.json \
diff --git a/search-service-image-v1/pom.xml b/search-service-image-v1/pom.xml
index c043916..a94c137 100644
--- a/search-service-image-v1/pom.xml
+++ b/search-service-image-v1/pom.xml
@@ -3,9 +3,9 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- com.iqser.red
+ com.knecon.fforesight
platform-docker-dependency
- 1.2.0
+ 0.1.0
4.0.0
diff --git a/search-service-v1/search-service-server-v1/pom.xml b/search-service-v1/search-service-server-v1/pom.xml
index 849eec0..0894b1e 100644
--- a/search-service-v1/search-service-server-v1/pom.xml
+++ b/search-service-v1/search-service-server-v1/pom.xml
@@ -12,7 +12,7 @@
search-service-server-v1
- 2.0.12
+ 2.59.0
diff --git a/search-service-v1/search-service-server-v1/src/main/java/com/iqser/red/service/search/v1/server/queue/IndexingMessageReceiver.java b/search-service-v1/search-service-server-v1/src/main/java/com/iqser/red/service/search/v1/server/queue/IndexingMessageReceiver.java
index ca40d81..6256678 100644
--- a/search-service-v1/search-service-server-v1/src/main/java/com/iqser/red/service/search/v1/server/queue/IndexingMessageReceiver.java
+++ b/search-service-v1/search-service-server-v1/src/main/java/com/iqser/red/service/search/v1/server/queue/IndexingMessageReceiver.java
@@ -4,7 +4,9 @@ import static com.iqser.red.service.search.v1.server.queue.MessagingConfiguratio
import static com.iqser.red.service.search.v1.server.queue.MessagingConfiguration.DELETE_FROM_INDEX_QUEUE;
import static com.iqser.red.service.search.v1.server.queue.MessagingConfiguration.INDEXING_DQL;
import static com.iqser.red.service.search.v1.server.queue.MessagingConfiguration.INDEXING_QUEUE;
+import static com.iqser.red.service.search.v1.server.queue.MessagingConfiguration.X_ERROR_INFO_HEADER;
+import java.nio.charset.StandardCharsets;
import java.util.List;
import org.springframework.amqp.AmqpRejectAndDontRequeueException;
@@ -17,6 +19,7 @@ import org.springframework.stereotype.Service;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.Dossier;
+import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.file.FileErrorInfo;
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.file.FileModel;
import com.iqser.red.service.search.v1.model.IndexMessage;
import com.iqser.red.service.search.v1.model.IndexMessageType;
@@ -70,7 +73,13 @@ public class IndexingMessageReceiver {
indexRequest.getFileId()));
}
- receiveIndexingRequest(indexRequest);
+ try {
+ receiveIndexingRequest(indexRequest);
+ } catch (Exception e) {
+ log.warn("An exception occurred in processing the indexing request stage: ", e);
+ message.getMessageProperties().getHeaders().put(X_ERROR_INFO_HEADER, e.getMessage());
+ throw e;
+ }
}
@@ -102,11 +111,7 @@ public class IndexingMessageReceiver {
case DROP:
indexDeleteService.recreateIndex();
addAllDocumentsToIndexQueue();
- try {
- indexInformationService.updateIndexInformation();
- } catch (Exception e) {
- log.error("Could not update index information", e);
- }
+ indexInformationService.updateIndexInformation();
break;
default:
@@ -118,33 +123,46 @@ public class IndexingMessageReceiver {
@RabbitHandler
@RabbitListener(queues = INDEXING_DQL)
- public void receiveIndexingRequestDQL(String in) throws JsonProcessingException {
+ public void receiveIndexingRequestDQL(Message in) throws JsonProcessingException {
+
+ var indexRequest = objectMapper.readValue(new String(in.getBody(), StandardCharsets.UTF_8), IndexMessage.class);
+ String errorLog = "Failed to process indexing request:";
+ log.info(errorLog + ": {}", indexRequest);
+ String errorMessage = errorLog + in.getMessageProperties().getHeader(X_ERROR_INFO_HEADER);
+ fileStatusProcessingUpdateClient.indexingFailed(indexRequest.getDossierId(), indexRequest.getFileId(), new FileErrorInfo(errorMessage, INDEXING_DQL, "search-service"));
- var indexRequest = objectMapper.readValue(in, IndexMessage.class);
- fileStatusProcessingUpdateClient.indexingFailed(indexRequest.getDossierId(), indexRequest.getFileId());
- log.info("Failed to process indexing request: {}", indexRequest);
}
@RabbitHandler
@RabbitListener(queues = DELETE_FROM_INDEX_QUEUE)
- public void receiveDeleteDocumentRequest(String in) throws JsonProcessingException {
+ public void receiveDeleteDocumentRequest(Message in) throws JsonProcessingException {
- var indexRequest = objectMapper.readValue(in, IndexMessage.class);
+ var indexRequest = objectMapper.readValue(new String(in.getBody(), StandardCharsets.UTF_8), IndexMessage.class);
log.info("Processing delete document request: {}", indexRequest);
- documentDeleteService.deleteDocument(indexRequest.getFileId());
- log.info("Successfully deleted document with dossierId {} and fileId {}", indexRequest.getDossierId(), indexRequest.getFileId());
+ try {
+ documentDeleteService.deleteDocument(indexRequest.getFileId());
+ log.info("Successfully deleted document with dossierId {} and fileId {}", indexRequest.getDossierId(), indexRequest.getFileId());
+ } catch (Exception e) {
+ log.warn("An exception occurred in processing delete document stage: ", e.getMessage());
+ in.getMessageProperties().getHeaders().put(X_ERROR_INFO_HEADER, e.getMessage());
+ throw e;
+ }
}
@RabbitHandler
@RabbitListener(queues = DELETE_FROM_INDEX_DLQ)
- public void receiveDeleteDocumentRequestDLQ(String in) throws JsonProcessingException {
+ public void receiveDeleteDocumentRequestDLQ(Message in) throws JsonProcessingException {
+
+ var indexRequest = objectMapper.readValue(new String(in.getBody(), StandardCharsets.UTF_8), IndexMessage.class);
+ String errorLog = "Failed to process delete from index request ";
+ log.info(errorLog + ": {}", indexRequest);
+ String errorMessage = errorLog + in.getMessageProperties().getHeader(X_ERROR_INFO_HEADER);
+
+ fileStatusProcessingUpdateClient.indexingFailed(indexRequest.getDossierId(), indexRequest.getFileId(), new FileErrorInfo(errorMessage, INDEXING_DQL, "search-service"));
- var indexRequest = objectMapper.readValue(in, IndexMessage.class);
- fileStatusProcessingUpdateClient.indexingFailed(indexRequest.getDossierId(), indexRequest.getFileId());
- log.info("Failed to process delete from index request: {}", indexRequest);
}
diff --git a/search-service-v1/search-service-server-v1/src/main/java/com/iqser/red/service/search/v1/server/queue/MessagingConfiguration.java b/search-service-v1/search-service-server-v1/src/main/java/com/iqser/red/service/search/v1/server/queue/MessagingConfiguration.java
index 201571a..0d9d8d7 100644
--- a/search-service-v1/search-service-server-v1/src/main/java/com/iqser/red/service/search/v1/server/queue/MessagingConfiguration.java
+++ b/search-service-v1/search-service-server-v1/src/main/java/com/iqser/red/service/search/v1/server/queue/MessagingConfiguration.java
@@ -17,6 +17,8 @@ public class MessagingConfiguration {
public static final String DELETE_FROM_INDEX_QUEUE = "deleteFromIndexQueue";
public static final String DELETE_FROM_INDEX_DLQ = "deleteFromIndexDLQ";
+ public static final String X_ERROR_INFO_HEADER = "x-error-message";
+
@Bean
public Queue indexingQueue() {