-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Open
Labels
has: minimal-exampleBug reports that provide a minimal complete reproducible exampleBug reports that provide a minimal complete reproducible examplestatus: need-help-to-reproduceIssues that we welcome the community to help us reproduceIssues that we welcome the community to help us reproducetype: bug
Description
Bug description
When a job has a parameter of type java.util.List
and the job is run with an empty list and the database is Oracle, it is not possible to run the job a second time.
The exception java.lang.IllegalArgumentException: value must not be null
will be thrown by JobParameter
because it is trying to convert null into a List. The null values comes from the fact that empty strings are the same thing as null for Oracle database (the empty string being the serialised empty list).
Environment
- Spring Batch 5.0.2
- Java 17
- Oracle database
Steps to reproduce
- Create a job with a parameter of type List
- Run the job with an empty list as argument
- Run the job a second time (with any value as argument)
Expected behavior
It should be possible to run such a job an infinite number of times.
Minimal Complete Reproducible example
https://git.sr.ht/~nyg/example-java-spring-batch-bug
Metadata
Metadata
Assignees
Labels
has: minimal-exampleBug reports that provide a minimal complete reproducible exampleBug reports that provide a minimal complete reproducible examplestatus: need-help-to-reproduceIssues that we welcome the community to help us reproduceIssues that we welcome the community to help us reproducetype: bug