Commit Graph

6585 Commits

Author SHA1 Message Date
Yanming Zhou
782735ad2d Reuse existing SQL where feasible
Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-06-03 23:29:31 +02:00
Yanming Zhou
dcf95987c9 Polish MongoDB integration tests
Move MongoDB container setup from tests to centralized configuration

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-06-03 23:20:39 +02:00
Yanming Zhou
a3e59b526e Improve performance of JdbcStepExecutionDao::getStepExecution
`JOB_EXECUTION_ID = ?` in where clause is unnecessary since `STEP_EXECUTION_ID` is primary key.

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-06-03 23:11:57 +02:00
Mahmoud Ben Hassine
bb2440fea3 Add ability to use bean names by default for jobs and steps
Resolves #4858
2025-06-03 22:53:10 +02:00
Mahmoud Ben Hassine
a7f090a45d Make MapJobRegistry smart to auto register jobs at startup
Before this commit, it was required to populate the job registry
with a different component (like a bean post processor or a smart
initializing singleton) before being able to use it with the JobOperator.

This commit makes the `MapJobRegistry` smart enough to auto register
jobs defined in the application context. This removes the need for a
distinct component to populate the registry and therefore simplifies
the configuration.

This commit also:

- removes the usage of `JobFactory` from `JobRegistry`
- deprecates JobRegistrySmartInitializingSingleton and removes
its configuration from the default batch configuration

Resolves #4854
Resolves #4855
Resolves #4856
2025-06-02 18:29:48 +02:00
Mahmoud Ben Hassine
08c4cb16b8 Move core partitioning APIs under org.springframework.batch.core.partition
Resolves #4849
2025-05-23 16:42:07 +02:00
Mahmoud Ben Hassine
9eafb31af4 Move DAOs implementations to separate packages
Resolves #4848
2025-05-23 16:26:23 +02:00
Mahmoud Ben Hassine
d6ce07ba83 Rename JobExplorerFactoryBean to JdbcJobExplorerFactoryBean
Resolves #4846
2025-05-23 15:23:43 +02:00
Mahmoud Ben Hassine
8dde8529d3 Make JobOperator use domain types in method signatures
Resolves #4845
2025-05-22 19:06:21 +02:00
Mahmoud Ben Hassine
f7fcfaa4fd Improve batch infrastructure configuration
Before this commit, EnableBatchProcessing was tied to a JDBC
infrastructure. Therefore, it was impossible to use a non-JDBC
job repository with that annotation.

This commit removes the dependency to a JDBC infrastructure from
EnableBatchProcessing and introduces new annotations to configure
specific job repository implementations. It also updates the
programmatic way of configuring infrastructure beans with a base
configuration class for each supported job repository implementation.

NB: The XML namespace was not changed accordingly as the XSD will not
be updated starting from v6.

Resolves #4718
2025-05-22 11:44:07 +02:00
Mahmoud Ben Hassine
25525ff98d Fix code style/formatting 2025-05-22 11:44:07 +02:00
Mahmoud Ben Hassine
880779458e Override getJobInstanceCount in ResourcelessJobRepository 2025-05-22 11:44:07 +02:00
Mahmoud Ben Hassine
4c86f33da9 Add support to configure JobKeyGenerator in MongoJobRepository 2025-05-22 11:44:07 +02:00
Mahmoud Ben Hassine
58ef32e7a0 Override methods of base class in JdbcJobRepositoryFactoryBean 2025-05-22 11:44:07 +02:00
Glenn Renfro
d7f1c1d79f Replace section discussing CLA in the PR Template with DCO 2025-05-14 07:19:27 -04:00
Mahmoud Ben Hassine
c6f88b8aeb Fix javadocs 2025-05-08 00:16:45 +02:00
Mahmoud Ben Hassine
e5bda0d40a Rename SimpleJobOperator to TaskExecutorJobOperator
Resolves #4834
2025-05-07 23:55:27 +02:00
Mahmoud Ben Hassine
2514346441 Deprecate JobOperator#start(String, Properties)
This commit deprecates JobOperator#start(String, Properties)
in favor of an overloaded method that uses domain types Job
and JobParameters.
2025-05-07 23:41:47 +02:00
Mahmoud Ben Hassine
b11c4b019b Reorganize methods in JobOperator 2025-05-07 23:16:27 +02:00
Mahmoud Ben Hassine
afdd842bc3 Improve JobOperator by reducing its scope to job operations only
Resolves #4833
2025-05-07 23:08:35 +02:00
Mahmoud Ben Hassine
fc4a66516a Make JobOperator extend JobLauncher
Related to #4832
2025-05-07 22:03:03 +02:00
Mahmoud Ben Hassine
adffc588b6 Temporarily disable DB2 docker-based integration tests
Related to #4828
2025-05-07 15:52:52 +02:00
Mahmoud Ben Hassine
46d42ab757 Rename JobRepositoryFactoryBean to JdbcJobRepositoryFactoryBean
Resolves #4829
2025-05-06 18:43:55 +02:00
Mahmoud Ben Hassine
d7e13fb7f5 Move core.explore package under core.repository
Resolves #4827
2025-05-06 10:13:48 +02:00
Mahmoud Ben Hassine
0a880c7ad1 Disable CommandLineJobRunnerTests until the stub batch infrastructure is replaced with a JDBC one 2025-05-05 18:51:49 +02:00
Mahmoud Ben Hassine
b16de9cd91 Fix job instance retrieval in JdbcJobInstanceDao
This commit reverts the accidental removal of the
wildcard functionality deleted in bf53794d
2025-05-05 18:37:01 +02:00
Mahmoud Ben Hassine
ae2df5396b Remove JobExplorer bean registration from the default batch configuration
Resolves #4825
2025-05-05 18:36:07 +02:00
Mahmoud Ben Hassine
6992b79b8d Remove dependency to JobExplorer in SimpleJobOperator
Resolves #4817
2025-05-05 18:34:04 +02:00
Mahmoud Ben Hassine
b8c93d677e Make JobRepository extend JobExplorer
Resolves #4824
2025-05-05 15:26:43 +02:00
Mahmoud Ben Hassine
bf53794d6a Deprecate redundant methods in JobExplorer/JobInstanceDao APIs
Resolves #4821
2025-04-29 12:30:31 +02:00
Mahmoud Ben Hassine
b9fc0e7e25 Rearrange methods in JobExplorer/JobRepository APIs 2025-04-29 12:12:56 +02:00
Mahmoud Ben Hassine
43ac1f12cf Remove deprecated APIs scheduled for removal in v6
Resolves #4819
2025-04-29 09:03:13 +02:00
Mahmoud Ben Hassine
9d38aceade Update JUnit Jupiter to version 5.12.2 2025-04-29 08:25:30 +02:00
Mahmoud Ben Hassine
2bd5b84064 Update dependencies to next major versions snapshots 2025-03-21 11:18:50 +01:00
Mahmoud Ben Hassine
d469ae459d Update development version to 6.0.0-SNAPSHOT 2025-03-20 11:57:10 +01:00
Mahmoud Ben Hassine
e3bcf5c0da Update latest news with v5.2.2 release blog post 2025-03-20 11:42:35 +01:00
Mahmoud Ben Hassine
961734b260 Next development version 2025-03-19 16:31:34 +01:00
Mahmoud Ben Hassine
503adc2324 Release version 5.2.2 2025-03-19 16:31:09 +01:00
Mahmoud Ben Hassine
2c7178aafd Prepare release 5.2.2 2025-03-19 15:20:19 +01:00
Yanming Zhou
e1b0f156e4 Fix incorrect Javadoc
Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-03-19 09:47:45 +01:00
Mahmoud Ben Hassine
2b1b5d1c9d Remove outdated usage of AssertFile in documentation
Resolves #4754
2025-03-19 08:21:26 +01:00
Yanming Zhou
f9108ee56f Fix typo
Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-03-19 08:07:07 +01:00
Yanming Zhou
30e9dd79f8 Stop using deprecated StepExecutionListenerSupport in document
Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-03-19 08:03:52 +01:00
Elimelec Burghelea
4671b62b14 Use Files.delete() for better error reporting
Signed-off-by: Elimelec Burghelea <elimelec1@protonmail.com>
2025-03-18 15:58:56 +01:00
yeonnex
6961571406 Fix variable usage in ScriptItemProcessorTests
This commit also adds test dependencies for groovy,
javascript, bean shell and jruby script engines.
2025-03-18 13:11:06 +01:00
Ludovic Bertin
a06f39b76d Add AOT runtime hints for core listeners
Signed-off-by: Ludovic Bertin <ludovic.bertin@gmail.com>
2025-03-18 12:04:14 +01:00
Yanming Zhou
f1ac0c01c5 Fix wrong statement in Javadoc of SimplePartitioner
Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-03-18 11:28:35 +01:00
KyeongHoon Lee
4c9b88eb52 Add FunctionalInterface annotation to ChunkProcessor
Signed-off-by: KyeongHoon Lee <leta6603@gmail.com>
2025-03-18 11:20:12 +01:00
Mahmoud Ben Hassine
42056e714d Update version of IBM DB2 docker image and jdbc driver 2025-03-18 10:38:05 +01:00
Mahmoud Ben Hassine
60f83438e9 Disable test failing on CI but not locally 2025-03-18 09:47:29 +01:00