[
https://issues.apache.org/jira/browse/KAFKA-13501?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17498563#comment-17498563
]
Sagar Rao commented on KAFKA-13501:
-----------------------------------
[~mjsax] , In 12486 idea was to use the HighAvailabilityTaskAssignor to avoid
downtime on task corruption. What was done was when an active task gets
corrupted, a probing rebalance is triggered after handling it i.e flushing the
state store/cache. So, if there's any task which has caught up enough would be
assigned this task and once the original active task is revived, any subsequent
rebalance would have it assigned it back.
As per this ticket, we want to trigger a rebalance if a stand-by is present
already. I think 12486 is more generic meaning if there's any other task which
has caught up enough already present, the rebalance would ensure it gets that
task assigned.
https://issues.apache.org/jira/browse/KAFKA-13333 was some more scenarios which
[~ableegoldman] had thought about. I haven't had a chance to look at it still
though.
> Avoid state restore via rebalance if standbys are enabled
> ---------------------------------------------------------
>
> Key: KAFKA-13501
> URL: https://issues.apache.org/jira/browse/KAFKA-13501
> Project: Kafka
> Issue Type: Improvement
> Components: streams
> Reporter: Matthias J. Sax
> Assignee: Sagar Rao
> Priority: Major
>
> There are certain scenario in which Kafka Streams wipes out local state and
> rebuilt it from scratch. This is a thread local cleanup, ie, no rebalance is
> triggered, and we end up with an offline task until state restoration
> finished.
> If standby tasks are enable, it might actually make sense to trigger a
> rebalance instead, to get the task re-assigned to the instance hosting the
> standby so get the task active again quickly.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)