Skip to content

Commit d0ca2db

Browse files
fjtiradorgdoliveira
authored andcommitted
Remove warning regarding lazy and Not found usage (apache#2198)
* Remove warning regarding lazy and Not found usage 2025-02-27 09:17:53,031 WARN [org.hib.boo.mod.int.ToOneBinder] (Quarkus Main Thread) HHH000491: 'org.kie.kogito.index.jpa.model.ProcessInstanceEntity.definition' uses both @NotFound and FetchType.LAZY. @Man2025-02-27 09:17: * Alternative approach
1 parent 8eadd1f commit d0ca2db

File tree

4 files changed

+15
-17
lines changed

4 files changed

+15
-17
lines changed

data-index/data-index-graphql/src/main/java/org/kie/kogito/index/graphql/AbstractGraphQLSchemaManager.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ public String getProcessInstanceServiceUrl(DataFetchingEnvironment env) {
175175

176176
public ProcessDefinition getProcessDefinition(DataFetchingEnvironment env) {
177177
ProcessInstance source = env.getSource();
178-
return source.getDefinition();
178+
return cacheService.getProcessDefinitionStorage().get(new ProcessDefinitionKey(source.getProcessId(), source.getVersion()));
179179
}
180180

181181
protected String getServiceUrl(String endpoint, String processId) {

data-index/data-index-service/data-index-service-common/src/test/java/org/kie/kogito/index/service/AbstractIndexingServiceIT.java

+14-2
Original file line numberDiff line numberDiff line change
@@ -114,8 +114,8 @@ static void setup() {
114114
@Transactional
115115
void tearDown() {
116116
cacheService.getJobsStorage().clear();
117-
cacheService.getProcessDefinitionStorage().clear();
118117
cacheService.getProcessInstanceStorage().clear();
118+
cacheService.getProcessDefinitionStorage().clear();
119119
cacheService.getUserTaskInstanceStorage().clear();
120120
}
121121

@@ -191,6 +191,9 @@ protected void validateProcessInstance(String query, ProcessInstanceStateDataEve
191191
@Test
192192
void testProcessInstancePagination() {
193193
String processId = "travels";
194+
ProcessDefinitionDataEvent definitionDataEvent = getProcessDefinitionDataEvent(processId);
195+
indexProcessCloudEvent(definitionDataEvent);
196+
validateProcessDefinition(getProcessDefinitionByIdAndVersion(processId, definitionDataEvent.getData().getVersion()), definitionDataEvent);
194197
List<String> pIds = new ArrayList<>();
195198

196199
IntStream.range(0, 100).forEach(i -> {
@@ -230,8 +233,10 @@ void testProcessInstancePagination() {
230233
@Test
231234
void testUserTaskInstancePagination() {
232235
String processId = "deals";
236+
ProcessDefinitionDataEvent definitionDataEvent = getProcessDefinitionDataEvent(processId);
237+
indexProcessCloudEvent(definitionDataEvent);
238+
validateProcessDefinition(getProcessDefinitionByIdAndVersion(processId, definitionDataEvent.getData().getVersion()), definitionDataEvent);
233239
List<String> taskIds = new ArrayList<>();
234-
235240
IntStream.range(0, 100).forEach(i -> {
236241
String taskId = UUID.randomUUID().toString();
237242
UserTaskInstanceStateDataEvent event = getUserTaskCloudEvent(taskId, processId, UUID.randomUUID().toString(), null, null, "InProgress");
@@ -286,6 +291,9 @@ void testUserTaskInstancePagination() {
286291
@Test
287292
void testConcurrentProcessInstanceIndex() throws Exception {
288293
String processId = "travels";
294+
ProcessDefinitionDataEvent definitionDataEvent = getProcessDefinitionDataEvent(processId);
295+
indexProcessCloudEvent(definitionDataEvent);
296+
validateProcessDefinition(getProcessDefinitionByIdAndVersion(processId, definitionDataEvent.getData().getVersion()), definitionDataEvent);
289297
ExecutorService executorService = new ScheduledThreadPoolExecutor(8);
290298
int max_instance_events = 10;
291299
List<CompletableFuture<Void>> futures = new ArrayList<>();
@@ -330,6 +338,10 @@ void testProcessInstanceIndex() throws Exception {
330338
indexProcessCloudEvent(definitionDataEvent);
331339
validateProcessDefinition(getProcessDefinitionByIdAndVersion(processId, definitionDataEvent.getData().getVersion()), definitionDataEvent);
332340

341+
ProcessDefinitionDataEvent subProcessdefinitionDataEvent = getProcessDefinitionDataEvent(subProcessId);
342+
indexProcessCloudEvent(subProcessdefinitionDataEvent);
343+
validateProcessDefinition(getProcessDefinitionByIdAndVersion(subProcessId, subProcessdefinitionDataEvent.getData().getVersion()), subProcessdefinitionDataEvent);
344+
333345
ProcessInstanceStateDataEvent startEvent = getProcessCloudEvent(processId, processInstanceId, ACTIVE, null, null, null, CURRENT_USER);
334346
indexProcessCloudEvent(startEvent);
335347

data-index/data-index-storage/data-index-storage-jpa-common/src/main/java/org/kie/kogito/index/jpa/mapper/ProcessInstanceEntityMapper.java

-7
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,13 @@
1919
package org.kie.kogito.index.jpa.mapper;
2020

2121
import org.kie.kogito.index.jpa.model.MilestoneEntity;
22-
import org.kie.kogito.index.jpa.model.ProcessDefinitionEntity;
2322
import org.kie.kogito.index.jpa.model.ProcessInstanceEntity;
2423
import org.kie.kogito.index.model.Milestone;
25-
import org.kie.kogito.index.model.ProcessDefinition;
2624
import org.kie.kogito.index.model.ProcessInstance;
2725
import org.mapstruct.AfterMapping;
2826
import org.mapstruct.InheritInverseConfiguration;
2927
import org.mapstruct.Mapper;
3028
import org.mapstruct.MappingTarget;
31-
import org.mapstruct.factory.Mappers;
3229

3330
@Mapper(componentModel = "cdi", suppressTimestampInGenerated = true)
3431
public interface ProcessInstanceEntityMapper {
@@ -43,10 +40,6 @@ public interface ProcessInstanceEntityMapper {
4340
@InheritInverseConfiguration
4441
ProcessInstance mapToModel(ProcessInstanceEntity pi);
4542

46-
default ProcessDefinition mapToDefinition(ProcessDefinitionEntity entity) {
47-
return Mappers.getMapper(ProcessDefinitionEntityMapper.class).mapToModel(entity);
48-
}
49-
5043
@AfterMapping
5144
default void afterMapping(@MappingTarget ProcessInstanceEntity entity) {
5245
entity.getNodes().forEach(n -> n.setProcessInstance(entity));

data-index/data-index-storage/data-index-storage-jpa-common/src/main/java/org/kie/kogito/index/jpa/model/ProcessInstanceEntity.java

-7
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,6 @@
2323
import java.util.Objects;
2424
import java.util.Set;
2525

26-
import org.hibernate.annotations.NotFound;
27-
import org.hibernate.annotations.NotFoundAction;
2826
import org.kie.kogito.persistence.postgresql.hibernate.JsonBinaryConverter;
2927

3028
import com.fasterxml.jackson.databind.node.ObjectNode;
@@ -93,7 +91,6 @@ public class ProcessInstanceEntity extends AbstractEntity {
9391
@ManyToOne(targetEntity = ProcessDefinitionEntity.class, fetch = FetchType.LAZY)
9492
@JoinColumns({ @JoinColumn(name = "processId", referencedColumnName = "id", insertable = false, updatable = false),
9593
@JoinColumn(name = "version", referencedColumnName = "version", insertable = false, updatable = false) })
96-
@NotFound(action = NotFoundAction.IGNORE)
9794
private ProcessDefinitionEntity definition;
9895

9996
@Override
@@ -290,10 +287,6 @@ public int hashCode() {
290287
return Objects.hash(id);
291288
}
292289

293-
public ProcessDefinitionEntity getDefinition() {
294-
return definition;
295-
}
296-
297290
@Override
298291
public String toString() {
299292
return "ProcessInstanceEntity{" +

0 commit comments

Comments
 (0)