-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Open
Labels
in: corestatus: for-internal-teamIssues that are planned to be resolved by the Spring Batch team, and not open for contributions.Issues that are planned to be resolved by the Spring Batch team, and not open for contributions.type: enhancement
Milestone
Description
The transactional proxy created around the job repository in AbstractJobRepositoryFactoryBean
is not accurate/optimized:
Lines 198 to 208 in d95397f
if (this.transactionAttributeSource == null) { | |
Properties transactionAttributes = new Properties(); | |
transactionAttributes.setProperty("create*", | |
TRANSACTION_PROPAGATION_PREFIX + Propagation.REQUIRES_NEW + "," + this.isolationLevelForCreate); | |
transactionAttributes.setProperty("getLastJobExecution*", | |
TRANSACTION_PROPAGATION_PREFIX + Propagation.REQUIRES_NEW + "," + this.isolationLevelForCreate); | |
transactionAttributes.setProperty("*", "PROPAGATION_REQUIRED"); | |
this.transactionAttributeSource = new NameMatchTransactionAttributeSource(); | |
((NameMatchTransactionAttributeSource) this.transactionAttributeSource) | |
.setProperties(transactionAttributes); | |
} |
For example, some methods (like get*
and find*
) could be marked as read-only.
v6 is a good opportunity to revisit and optimise this.
Metadata
Metadata
Assignees
Labels
in: corestatus: for-internal-teamIssues that are planned to be resolved by the Spring Batch team, and not open for contributions.Issues that are planned to be resolved by the Spring Batch team, and not open for contributions.type: enhancement