Description
Each task has a task ID that is used to identify tasks within Kafka Streams. The task ID is composed of the subtopology ID it executes and the number of the partitions the task reads its input data from. This naming scheme is rather an implementation detail and it is not something user should need to rely on to get metadata of a task. However, the task ID in this form is used to tag metrics, in log files, and its representation in code, the TaskId class is part of the public API.
This ticket proposes to make the task ID really an implementation detail by:
- removing TaskId from the public API
- use the subtopology ID and the partition numbers in logs and metrics instead of the task ID