enhancement
major
minor
major
minor
The tl:KBDataProducerTask can potentially run for a very long time. If the time limit in the tl:Scheduler is exceeded, the scheduler instructs the task to terminate. The task can check for this instruction using BatchImpl.getShouldStop(). (tl:Batch is the superclass of tl:Task.) Since the task loops through all changesets and sends them one by one, it should check at least once during each iteration to see if it should terminate.
Implementation
The task checks whether it should terminate after creating the tl:ChangeSetReader, and again after sending each changeset. If it is terminated, it reports which revisions it has processed.
Test
Set breakpoints in the tl:KBDataProducerTask. Ideally, set them on the lines where `getShouldStop ` is called. Then start an application that uses Kafka and triggers changes in the `tl:KnowledgeBase`. Abort the task in the SchedulerGUI and verify that it does so and that the appropriate messages are displayed in the execution table.