Retry ocr
This commit is contained in:
parent
d849859def
commit
47a9bc0343
@ -115,7 +115,22 @@ public class FileStatusProcessingUpdateService {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void requeueOCROrMarkFailed(String dossierId, String fileId, FileErrorInfo fileErrorInfo) {
|
||||||
|
|
||||||
|
var fileEntity = fileStatusPersistenceService.getStatus(fileId);
|
||||||
|
if (fileEntity.getProcessingErrorCounter() > settings.getMaxErrorRetries()) {
|
||||||
|
ocrFailed(dossierId, fileId, fileErrorInfo);
|
||||||
|
} else {
|
||||||
|
fileStatusService.setStatusOcrProcessing(fileId,
|
||||||
|
fileEntity.getProcessingStatus().equals(ProcessingStatus.OCR_PROCESSING) ? fileEntity.getProcessingErrorCounter() + 1 : 0);
|
||||||
|
fileStatusService.addToOcrQueue(dossierId, fileId, 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public void ocrProcessingUpdateOnly(String fileId) {
|
public void ocrProcessingUpdateOnly(String fileId) {
|
||||||
|
|
||||||
var fileEntity = fileStatusPersistenceService.getStatus(fileId);
|
var fileEntity = fileStatusPersistenceService.getStatus(fileId);
|
||||||
|
|
||||||
retryTemplate.execute(retryContext -> {
|
retryTemplate.execute(retryContext -> {
|
||||||
|
|||||||
@ -456,7 +456,7 @@ public class FileStatusService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private void addToOcrQueue(String dossierId, String fileId, int priority) {
|
public void addToOcrQueue(String dossierId, String fileId, int priority) {
|
||||||
|
|
||||||
rabbitTemplate.convertAndSend(MessagingConfiguration.OCR_REQUEST_QUEUE, new DocumentRequest(dossierId, fileId), message -> {
|
rabbitTemplate.convertAndSend(MessagingConfiguration.OCR_REQUEST_QUEUE, new DocumentRequest(dossierId, fileId), message -> {
|
||||||
message.getMessageProperties().setPriority(priority);
|
message.getMessageProperties().setPriority(priority);
|
||||||
|
|||||||
@ -76,7 +76,7 @@ public class OCRProcessingMessageReceiver {
|
|||||||
String errorMessage = failedMessage.getMessageProperties().getHeader(MessagingConfiguration.X_ERROR_INFO_HEADER);
|
String errorMessage = failedMessage.getMessageProperties().getHeader(MessagingConfiguration.X_ERROR_INFO_HEADER);
|
||||||
OffsetDateTime timestamp = failedMessage.getMessageProperties().getHeader(MessagingConfiguration.X_ERROR_INFO_TIMESTAMP_HEADER);
|
OffsetDateTime timestamp = failedMessage.getMessageProperties().getHeader(MessagingConfiguration.X_ERROR_INFO_TIMESTAMP_HEADER);
|
||||||
timestamp = timestamp != null ? timestamp : OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS);
|
timestamp = timestamp != null ? timestamp : OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS);
|
||||||
fileStatusProcessingUpdateService.ocrFailed(ocrRequestMessage.getDossierId(),
|
fileStatusProcessingUpdateService.requeueOCROrMarkFailed(ocrRequestMessage.getDossierId(),
|
||||||
ocrRequestMessage.getFileId(),
|
ocrRequestMessage.getFileId(),
|
||||||
new FileErrorInfo(errorMessage, MessagingConfiguration.OCR_DLQ, "ocr-service", timestamp));
|
new FileErrorInfo(errorMessage, MessagingConfiguration.OCR_DLQ, "ocr-service", timestamp));
|
||||||
}
|
}
|
||||||
|
|||||||
@ -39,18 +39,18 @@ fforesight:
|
|||||||
auth-server-url: 'http://localhost:8080'
|
auth-server-url: 'http://localhost:8080'
|
||||||
jobs:
|
jobs:
|
||||||
enabled: true
|
enabled: true
|
||||||
datasource:
|
# datasource:
|
||||||
url: jdbc:postgresql://${PSQL_HOST:localhost}:${PSQL_PORT:25432}/${PSQL_DATABASE:tenantmanager}?ApplicationName=${spring.application.name:}-scheduler&cachePrepStmts=true&useServerPrepStmts=true&rewriteBatchedStatements=true
|
# url: jdbc:postgresql://${PSQL_HOST:localhost}:${PSQL_PORT:5432}/${PSQL_DATABASE:tenantmanager}?ApplicationName=${spring.application.name:}-scheduler&cachePrepStmts=true&useServerPrepStmts=true&rewriteBatchedStatements=true
|
||||||
driverClassName: org.postgresql.Driver
|
# driverClassName: org.postgresql.Driver
|
||||||
username: ${PSQL_USERNAME:tenantmanager}
|
# username: ${PSQL_USERNAME:tenantmanager}
|
||||||
password: ${PSQL_PASSWORD:r3dact3d}
|
# password: ${PSQL_PASSWORD:r3dact3d}
|
||||||
platform: org.hibernate.dialect.PostgreSQL95Dialect
|
# platform: org.hibernate.dialect.PostgreSQL95Dialect
|
||||||
hikari:
|
# hikari:
|
||||||
maximumPoolSize: 2
|
# maximumPoolSize: 2
|
||||||
data-source-properties:
|
# data-source-properties:
|
||||||
cachePrepStmts: true
|
# cachePrepStmts: true
|
||||||
prepStmtCacheSize: 1000
|
# prepStmtCacheSize: 1000
|
||||||
prepStmtCacheSqlLimit: 2048
|
# prepStmtCacheSqlLimit: 2048
|
||||||
|
|
||||||
management:
|
management:
|
||||||
tracing:
|
tracing:
|
||||||
|
|||||||
@ -125,6 +125,7 @@ fforesight:
|
|||||||
keycloak:
|
keycloak:
|
||||||
ignored-endpoints: [ '/redaction-gateway-v1','/actuator/health/**', '/redaction-gateway-v1/async/download/with-ott/**',
|
ignored-endpoints: [ '/redaction-gateway-v1','/actuator/health/**', '/redaction-gateway-v1/async/download/with-ott/**',
|
||||||
'/internal-api/**', '/redaction-gateway-v1/docs/swagger-ui',
|
'/internal-api/**', '/redaction-gateway-v1/docs/swagger-ui',
|
||||||
|
'/redaction-gateway-v1/**',
|
||||||
'/redaction-gateway-v1/docs/**','/redaction-gateway-v1/docs',
|
'/redaction-gateway-v1/docs/**','/redaction-gateway-v1/docs',
|
||||||
'/api', '/api/','/api/docs/**','/api/docs','/api/docs/swagger-ui' ]
|
'/api', '/api/','/api/docs/**','/api/docs','/api/docs/swagger-ui' ]
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user