Per a request from Michael Minella, I replaced "master" with "manager" and "slave" with "worker" in the Spring Batch Reference Guide. I heartily concur with replacing terms that have such dark connotations.
While working on another feature, I noticed that the document toggle wasn't updating the ToC. I fixed that. (It matters only in the case where entire headings are toggled, but we do have one such case.)
Before this commit, getting the running job executions loaded
all job executions from the database and filtered them in-memory.
This commit uses `JobExplorer#findRunningJobExecutions` which issues
a query that does the filtering on the database side. This change
considerably improves the performance of stopping a job.
Resolves BATCH-2422
Before this commit, getting the last job instance/execution required to
load all job instances/executions from the database and filter them
on the client side in memory.
This commit introduces new methods that use database queries to get
the last job instance/execution without the need to load all job
instances/executions. This change improves memory consumption as well as
the performance of starting the next instance of a job.
Resolves BATCH-1784
Before this commit, fuzzy matching is performed even though exact
matching is requested (distanceLimit = 0).
This commit bypasses fuzzy matching when distanceLimit = 0 which
improves performance.
Resolves BATCH-1801
This commit introduces the changes discussed in PR #664:
* Remove `OffsetsProvider`: We only need offsets to be retrieved from
the execution context in a restart scenario
* Make the reader inherit from `AbstractItemStreamItemReader` instead
of `AbstractItemCountingItemStreamItemReader`. With Kafka offsets, item
counting does not make sense
* Remove `assignTimeoutProvider`. A configurable poll timeout with
a default value is enough.
* Update the constructor of the reader to accept consumer properties,
a topic name and a list of partitions instead of leaking Kafka APIs like
`TopicPartition` and `ConsumerFactory`.
Resolves BATCH-2764
According to the Javadoc of LineTokenizer#tokenize, the parameter `line`
can be null. This commit adds `@Nullable` to that parameter.
Resolves BATCH-2776
This commit adds an ItemWriter implementation for Apache Kafka using
a KafkaTemplate with default topic set. Extending KeyValueItemWriter,
the writer requires a Converter to map the Kafka ProducerRecord's key
from the item.
Resolves BATCH-2765
Micrometer's global registry might contain other metrics than
those from Spring Batch. This commit updates the test to expect
at least those from Spring Batch to be registered.
Issue BATCH-2774