DeadLetterPublishingRecoverer без SeekToCurrentErrorHandler - PullRequest
0 голосов
/ 22 марта 2019

У меня очень простой вариант использования.У меня есть один потребитель Kafka, и я хочу переместить все недействительные или частичные сообщения в очередь недоставленных сообщений.В примере из документации используется SeekToCurrentErrorHandler и для присоединения DeadLetterPublishingRecoverer.В моем случае я не хочу повторять эти недействительные сообщения, и я установил maxFailures на 1 (я пробовал 0 также с тем же результатом).Проблема здесь в том, что по какой-то причине SeekToCurrentErrorHandler ищет раздел каждый раз, когда у меня появляется неверное сообщение, даже если я просто хочу переместить его в DLT, и это делает весь процесс очень медленным.Я не уверен, что это правильное поведение из SeekToCurrentErrorHandler, но все же есть ли лучший способ достичь моей цели без SeekToCurrentErrorHandler?Нужно ли создавать собственные ErrorHandler?


PS

Странное поведение SeekToCurrentErrorHandler наблюдается, когда больше недопустимых сообщений, чем может буферизовать потребитель.Если есть несколько сообщений, все быстро, но когда у нас большой кусок недействительных сообщений, он работает ужасно.

1 Ответ

1 голос
/ 22 марта 2019

Это была ошибка - она ​​ исправлена ​​на master и 2.2.x . Он выйдет в версии 2.2.5 на следующей неделе.

SeekToCurrentErrorHandler и DefaultAfterRollbackProcessor всегда повторяется по крайней мере один раз, даже если maxAttempts было 1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...