Commit Graph

2180 Commits

Author SHA1 Message Date
Mahmoud Ben Hassine
4cb15ca837 Fix breaking changes in micrometer APIs
Related to https://github.com/micrometer-metrics/micrometer/pull/3310
2022-07-27 15:31:18 +02:00
Mahmoud Ben Hassine
96c6367dae Replace KeyValuesProvider with ObservationConvention
Related to https://github.com/micrometer-metrics/micrometer/pull/3306
2022-07-26 06:55:39 +02:00
Glenn Renfro
ee7d12671b Updated Batch Metrics to use DefaultMeterObservationHandler
instead of TimerObservationHandler
2022-07-21 11:32:35 +02:00
Spring Builds
08adb4550a [artifactory-release] Next development version 2022-07-21 03:17:06 +00:00
Spring Builds
d46aeef01d [artifactory-release] Release version 5.0.0-M4 2022-07-21 03:17:03 +00:00
Fadhel Mahmoud Ben Hassine
d328e43948 Fix Javadoc errors 2022-07-21 04:47:59 +02:00
Taeik Lim
ed945ca61d Add @FunctionalInterface where appropriate
Resolves #4107
2022-07-20 19:05:36 +02:00
Taeik Lim
8b6343fc8f Add missing initialized flag set to FlowJob
Issue #4142
2022-07-20 18:49:15 +02:00
Jay Bryant
1af645505c Editing pass
for grammar, spelling, consistency and (most importantly) clarity.
2022-07-20 18:32:05 +02:00
Jay Bryant
61ea236ce0 Javadoc editing
for grammar, punctuation, usage, and (sometimes) missing content.
2022-07-20 18:24:13 +02:00
Jay Bryant
e6e21c5e18 Improve Javadocs 2022-07-20 18:15:28 +02:00
Fadhel Mahmoud Ben Hassine
310c280e40 Override methods from SimpleJobLauncher in TaskExecutorJobLauncher
This commit is to prevent usage of deprecated APIs
inherited from SimpleJobLauncher
2022-07-19 18:19:17 +02:00
Fadhel Mahmoud Ben Hassine
08e04817d1 Refine #4131
* Deprecate SimpleJobLauncher in favor of TaskExecutorJobLauncher
* Update year in license headers
2022-07-19 13:58:22 +02:00
Marvin Deng
c0791039dc Rename SimpleJobLauncher to TaskExecutorJobLauncher
Resolves #4123
2022-07-19 13:34:23 +02:00
Henning Pöttker
d280556d02 Let fluent setters of SimpleStepBuilder return proper type
Let fluent setters of `SimpleStepBuilder` return `this` with type `SimpleStepBuilder`.
This makes the required order of some fluent setters a bit more lenient and prevents
that `AbstractTaskletStepBuilder::listener` for parameters of type `Object` is invoked
although an overloaded method specific for `SimpleStepBuilder` is intended.

Fixes #773 and #1098.
2022-07-19 13:20:57 +02:00
Fadhel Mahmoud Ben Hassine
8fef41bd76 Rename BatchStepTagsProvider to BatchStepKeyValuesProvider
This rename is for consistency with
BatchJobKeyValuesProvider

Related to a19eefa7fd
2022-07-19 12:43:23 +02:00
Jonatan Ivanov
9b3b899360 Remove *Aware interfaces from Micrometer 2022-07-18 18:07:13 -07:00
Mahmoud Ben Hassine
565ddcdf96 Change transaction manager type in default batch configuration
This commits changes the type of the transaction manager
from `DataSourceTransactionManager` to `JdbcTransactionManager`
in the default configuration of `@EnableBatchProcessing`.

The `JdbcTransactionManager` adds common JDBC exception translation
which is beneficial for Spring Batch to improve exception handling
and error reporting.

Resolves #4126
2022-07-16 17:52:43 +02:00
Henning Poettker
3ef199b92b Reduce use of deprecated APIs 2022-07-16 00:17:46 +02:00
Henning Poettker
451db9a968 Fix tests catching nested exceptions
These tests started failing after an upstream
change in Spring Framework [1].

[1]: https://github.com/spring-projects/spring-framework/issues/25162
2022-07-16 00:06:42 +02:00
Mahmoud Ben Hassine
b89ea8e789 Fix tests related to infrastructure beans configuration
These tests seem to start failing since 31af573 but were
not caught due to #4121. This commit fixes the tests that
are related to infrastructure beans configuration.

Some other tests seems to have started failing as well but
are not related to this change set. There were temporarily
ignored in this commit and will be addressed separately.

Issue #4121
2022-07-13 05:30:37 +02:00
Mahmoud Ben Hassine
c65b93f707 Add non null assertions in Job/Step builder factories 2022-07-12 19:27:22 +02:00
Mahmoud Ben Hassine
a346f14f80 Change visibility of application context to protected in AbstractBatchConfiguration 2022-07-12 07:11:34 +02:00
Mahmoud Ben Hassine
84ff16addf Remove unused imports 2022-07-12 07:08:46 +02:00
Mahmoud Ben Hassine
a3bba3908e Remove redundant imports validation
Imports validation is done in BatchConfigurationSelector.
This commit removes the redundant validation done in
AbstractBatchConfiguration.
2022-07-12 07:07:29 +02:00
Mahmoud Ben Hassine
0b2a2c26a2 Add junit-vintage-engine test dependency to spring-batch-core
Failing tests will be fixed in a separate commit.

Resolves #4121
2022-06-22 11:57:54 +02:00
Mahmoud Ben Hassine
95a3cf0f4c Fix tests 2022-06-22 11:41:22 +02:00
Mahmoud Ben Hassine
3454cec279 Fix annotation based listener registration in FaultTolerantStepBuilder
Resolves #4137
2022-06-22 11:09:32 +02:00
Mahmoud Ben Hassine
08f8c75ee6 Add test to serialize/deserialize records in the execution context 2022-06-02 10:40:20 +02:00
Mahmoud Ben Hassine
c4ad90b9b1 Apply spring-javaformat style for consistency with other projects
Resolves #4118
2022-05-25 23:06:48 +02:00
Mahmoud Ben Hassine
be82a040a1 Remove micrometer-commons dependency
This is already a transitive dependency of
micrometer-observation which is declared
as a compile time dependency.
2022-05-24 15:22:11 +02:00
Spring Builds
b9bc4c1488 [artifactory-release] Next development version 2022-05-19 01:22:57 +00:00
Spring Builds
a99f1c8645 [artifactory-release] Release version 5.0.0-M3 2022-05-19 01:22:54 +00:00
Mahmoud Ben Hassine
c4076e855d Prefix micrometer metric tags with meter names
This is what is recommended by the observability
team in terms of tag naming with micrometer 1.10+
for consistency between both metrics and tracing.

In #4065, only some metrics have been updated to
follow this tag naming convention, but not all of
them. This commit updates all metrics in a similar
way for consistency.

Related to #4065 and #4098.
2022-05-19 02:07:27 +02:00
Taeik Lim
9ecbf9875b Add @Nullable where appropriate in JobExecution and StepExecution
Issue #4077
2022-05-18 11:31:18 +02:00
Mahmoud Ben Hassine
9315a3b438 Make charset configurable in JdbcExecutionContextDao
Issue #795
2022-05-17 21:34:06 +02:00
Mahmoud Ben Hassine
12c5cb967d Change default encoding to UTF-8 in JdbcExecutionContextDao
Resolves #3983
2022-05-17 20:07:03 +02:00
Mahmoud Ben Hassine
398d52a581 Add javax.xml.namespace.QName to trusted classes in Jackson serializer
This class is safe to deserialize according to Jackson:
https://github.com/FasterXML/jackson-databind/blob/master/src/main/java/com/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator.java

This also has been checked against Jackson 2.11 to confirm
the backport of this enhancement to 4.3.x.

Resolves #4044
2022-05-17 15:32:21 +02:00
Mahmoud Ben Hassine
c0b8211c4f Add java.util.UUID to trusted classes in Jackson serializer
This class is safe to deserialize according to Jackson:
https://github.com/FasterXML/jackson-databind/blob/master/src/main/java/com/fasterxml/jackson/databind/jsontype/impl/SubTypeValidator.java

This also has been checked against Jackson 2.11 to confirm
the backport of this enhancement to 4.3.x.

Resolves #4110
2022-05-17 11:26:00 +02:00
Mahmoud Ben Hassine
72d9177cf1 Minor refactoring
- Extract/Rearrange methods
- Inline variables
- Improve Javadoc formatting
2022-05-15 06:43:56 +02:00
Mahmoud Ben Hassine
670770578a Remove JobRegistry bean definition in SimpleBatchConfiguration
This bean definition is already declared in the parent class.
2022-05-15 01:54:41 +02:00
Mahmoud Ben Hassine
a34a464763 Make ModularBatchConfiguration extend SimpleBatchConfiguration
This change makes the added value of ModularBatchConfiguration
compared to SimpleBatchConfiguration more visible.
2022-05-15 01:27:14 +02:00
Mahmoud Ben Hassine
31af573153 Remove the lazy proxy creation of batch artifacts in batch configuration
The lazy proxy creation of batch artifacts was intended to prevent
configuration cycles from happening. However, this is implemented in
SimpleBatchConfiguration but not in ModularBatchConfiguration.

Removing this laziness in the configuration process does not introduce
any regression neither in tests nor in samples. This commit makes
SimpleBatchConfiguration consistent with ModularBatchConfiguration.
2022-05-15 01:27:13 +02:00
Henning Poettker
234e28a1e8 Allow lambdas to be passed as item processors
Resolves #4061
2022-05-13 23:53:16 +02:00
Mahmoud Ben Hassine
33338a4a30 Remove datasource autowiring in AbstractBatchConfiguration
Before this commit, the datasource was autowired in
AbstractBatchConfiguration. This was causing context
startup failures when no datasource or more than one
datasource is present in the context.

This commit fixes these failures by looking for the
datasource in the application context. This also
prevents cyclic configuration dependencies when
the datasource bean is defined in the same class where
other batch artifacts are autowired.

Resolves #3991
2022-05-13 18:46:33 +02:00
Mahmoud Ben Hassine
74e8caa368 Add default methods in Job and Step interfaces
Default values are consistent with AbstractJob
and AbstractStep.

Issue #3924
2022-05-09 10:29:57 +02:00
Mahmoud Ben Hassine
bbbc4a7a18 Fix Javadoc errors 2022-05-05 17:52:56 +02:00
Jay Bryant
cd43f3b6ee Editing pass for Javadocs
Mostly proofreading but a bit more detail in a couple places.

Issue #4096
2022-05-05 17:35:10 +02:00
Jay Bryant
d00cd947ca Editing pass for Javadocs
Update javadocs of org.springframework.batch.core
but not further down that tree.

Issue #4090
2022-05-05 16:57:01 +02:00
Mahmoud Ben Hassine
a722cd2f53 Refine contribution #4099
- Add migration script for SQLITE
- Update the script of SAP HANA with the new column
2022-04-27 14:56:19 +02:00