The outbox event processors apply the polling interval even when there are still events to process

Description

It seems the current implementation waits for the duration of the polling interval (100ms by default) between every single batch of events.

Proof: when enabling the TRACE level of logs, I see things like this right in the middle of processing, when the outbox is definitely not empty:

11:03:15,083 (Hibernate Search - Outbox event processor - 0) TRACE SingletonTask:75 - Scheduling task 'Outbox event processor'. 11:03:15,183 (Hibernate Search - Outbox event processor - 0) TRACE SingletonTask:198 - Running task 'Outbox event processor'

It's a mistake, and this can dramatically slow down event processing.

When there are more events to process, the next batch should be processed immediately, not after having waited. This was the original intent.

Activity

Show:
Fixed

Details

Assignee

Reporter

Sprint

Fix versions

Priority

Created November 23, 2021 at 10:07 AM
Updated July 22, 2022 at 6:32 AM
Resolved November 24, 2021 at 1:47 PM