Skip to content

Commit a38cdee

Browse files
committedAug 29, 2024
speedup: use extra executors for validation and deserialization
1 parent 160bfe0 commit a38cdee

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed
 

‎src/main/java/edu/kit/datamanager/pit/pitservice/impl/EmbeddedStrictValidatorStrategy.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
public class EmbeddedStrictValidatorStrategy implements IValidationStrategy {
3030

3131
private static final Logger LOG = LoggerFactory.getLogger(EmbeddedStrictValidatorStrategy.class);
32+
protected static final Executor EXECUTOR = Executors.newWorkStealingPool();
3233

3334
@Autowired
3435
public AsyncLoadingCache<String, TypeDefinition> typeLoader;
@@ -65,7 +66,7 @@ public void validate(PIDRecord pidRecord) throws RecordValidationException, Exte
6566
String.format("No type found for identifier %s.", profilePID));
6667
}
6768
this.strictProfileValidation(pidRecord, profileDefinition);
68-
});
69+
}, EXECUTOR);
6970
} catch (RuntimeException e) {
7071
LOG.error("Could not resolve identifier {}.", profilePID);
7172
throw new ExternalServiceException(

‎src/main/java/edu/kit/datamanager/pit/typeregistry/impl/TypeRegistry.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040
public class TypeRegistry implements ITypeRegistry {
4141

4242
private static final Logger LOG = LoggerFactory.getLogger(TypeRegistry.class);
43+
protected static final Executor EXECUTOR = Executors.newWorkStealingPool(35);
4344

4445
@Autowired
4546
public AsyncLoadingCache<String, TypeDefinition> typeCache;
@@ -108,7 +109,7 @@ private TypeDefinition constructTypeDefinition(JsonNode registryRepresentation)
108109
final String repeatable = semantics.path("repeatable").asText("No");
109110
typeDefinition.setRepeatable(!"No".equalsIgnoreCase(repeatable));
110111
properties.put(name, typeDefinition);
111-
});
112+
}, EXECUTOR);
112113
})
113114
.collect(Collectors.toList());
114115

0 commit comments

Comments
 (0)