A. Sophie Blee-Goldman created KAFKA-18190:
----------------------------------------------
Summary: TopologyTestDriver time is not synchronized with test
topics
Key: KAFKA-18190
URL: https://issues.apache.org/jira/browse/KAFKA-18190
Project: Kafka
Issue Type: Bug
Components: streams
Reporter: A. Sophie Blee-Goldman
If a user does not provide explicit timestamps for records piped into the TTD
via a TestInputTopic, the test topic will inject a timestamp based on its own
internal clock. A user can opt to specify a starting time and an auto-advance
when creating the TestInputTopic, in which case the timestamp will advance from
the starting point after each piped record.
However, a user can also opt to create the TestInputTopic without a start
timestamp or auto-advance, in which case the start timestamp is initialized to
that of the TTD (see
[https://github.com/apache/kafka/pull/17702|[https://github.com/apache/kafka/pull/17702])]
and the auto-advance is set to 0.
Instead of fixing the auto-advance to 0 and therefore using the same timestamp
for every record, if would make more sense for the TestInputTopic to
synchronize with the internal clock of the TTD. It's confusing to users that
the TopologyTestDriver#advanceWallClockTime API only advances time for the
driver itself, but none of the topics that were created for it.
So in the case where the user doesn't specify a start timestamp or
auto-advance, we should not only set the start timestamp to be equal to that of
the driver's internal clock, but also use the driver's current time for records
that are piped into the TestInputTopic without an explicit timestamp
--
This message was sent by Atlassian Jira
(v8.20.10#820010)