sanghyeok An created KAFKA-21186:
------------------------------------
Summary: Add test utilities for Streams custom assignors
Key: KAFKA-21186
URL: https://issues.apache.org/jira/browse/KAFKA-21186
Project: Kafka
Issue Type: Improvement
Components: streams
Reporter: sanghyeok An
Assignee: sanghyeok An
*Background*
KIP-1071 defines rules that Streams task assignments must satisfy. For example,
the same stateful task must not be assigned to different members sharing the
same processId, even in different roles such as active and standby.
With KIP-1357 enabling broker-side custom assignors, developers would benefit
from an easy way to verify these rules in their unit tests. Shared test
utilities would reduce the risk of developers overlooking or interpreting rules
differently when writing their own validation code.
*Proposal*
Provide shared test utilities that custom assignor developers can use in their
own tests.
Developers should be able to construct test inputs, run their assignor, and
pass the inputs and resulting assignment to the utilities to check compliance
with assignment rules. When a rule is violated, the utilities should identify
the affected tasks and members and explain the violation.
The checks should be based on KIP-1071’s requirements and aligned with the
active and standby assignment responsibilities of custom assignors under the
current public API. This would help developers test the constraints required by
the Streams protocol while implementing their own assignment policies.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)