vcrfxia commented on PR #13523: URL: https://github.com/apache/kafka/pull/13523#issuecomment-1500571126
I have a similar clarification question as Hao: what is the significance of the instance state transitioning to `RUNNING`? Is it the case that until the instance state transitions to `RUNNING`, no active tasks can process data? If so, then option 2 would imply that if one task is paused while restoring, then no other tasks can make progress on processing because the instance state will not transition `RUNNING`, whereas option 1 would mean that other tasks would be unblocked to process even while the one task is paused during restoration. The latter behavior sounds consistent with the state updater scenario, whereas the first one is more strict. Given that we expect it to be rare that users will pause tasks during restoration and that the use cases for wanting to pause one task during restoration while other tasks continue to process messages, I am onboard with option 2 as the cleaner code change even though it sounds like the behavior may differ from the state updater world (assuming my understanding above is correct). Just my two cents though :) > what is the task state if they are paused? Is it SUSPENDED? I don't see a PAUSED state in https://github.com/apache/kafka/blob/trunk/streams/src/main/java/org/apache/kafka/streams/processor/internals/Task.java#L71-L76 I seem to recall that there is no dedicated task state for paused tasks, and that the task state transitions as usual (could even be `RUNNING`, for example, while the task is paused). Perhaps best for Guozhang to confirm, though. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org