Skip to content

MINOR: Reset timer when all the buffer is drained and empty - #7573

Merged
guozhangwang merged 1 commit into
apache:trunkfrom
guozhangwang:KMinor-reset-enforcement-timer-without-data
Oct 22, 2019
Merged

MINOR: Reset timer when all the buffer is drained and empty#7573
guozhangwang merged 1 commit into
apache:trunkfrom
guozhangwang:KMinor-reset-enforcement-timer-without-data

Conversation

@guozhangwang

Copy link
Copy Markdown
Contributor

For scenarios where the incoming traffic of all input partitions are small, there's a pitfall that the enforced processing timer is not reset after we have enforce processed ALL records. The fix itself is pretty simple: we just reset the timer when there's no buffered records.

Committer Checklist (excluded from commit message)

  • Verify design and implementation
  • Verify test coverage and CI build status
  • Verify documentation (including upgrade notes)

@abbccdda abbccdda left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To me the test numbers are kind of arbitrary. Could we define certain time point as constant, like 100L and 250L?

@guozhangwang

Copy link
Copy Markdown
Contributor Author

To me the test numbers are kind of arbitrary. Could we define certain time point as constant, like 100L and 250L?

We set the max.task.idle to 100 and that's why we tested 99 v.s. 100 and 249 v.s. 250 etc for that config. I think it's kind of an overkill to define them as constant though.

@guozhangwang
guozhangwang merged commit 6d8da96 into apache:trunk Oct 22, 2019
guozhangwang added a commit that referenced this pull request Dec 16, 2019
For scenarios where the incoming traffic of all input partitions are small, there's a pitfall that the enforced processing timer is not reset after we have enforce processed ALL records. The fix itself is pretty simple: we just reset the timer when there's no buffered records.

Reviewers: Javier Holguera <javier.holguera@gmail.com>, Boyang Chen <boyang@confluent.io>, Bill Bejeck <bill@confluent.io>
guozhangwang added a commit that referenced this pull request Dec 20, 2019
For scenarios where the incoming traffic of all input partitions are small, there's a pitfall that the enforced processing timer is not reset after we have enforce processed ALL records. The fix itself is pretty simple: we just reset the timer when there's no buffered records.

Reviewers: Javier Holguera <javier.holguera@gmail.com>, Boyang Chen <boyang@confluent.io>, Bill Bejeck <bill@confluent.io>

fix unit test
@guozhangwang
guozhangwang deleted the KMinor-reset-enforcement-timer-without-data branch April 24, 2020 23:52
qq619618919 pushed a commit to qq619618919/kafka that referenced this pull request May 12, 2020
)

For scenarios where the incoming traffic of all input partitions are small, there's a pitfall that the enforced processing timer is not reset after we have enforce processed ALL records. The fix itself is pretty simple: we just reset the timer when there's no buffered records.

Reviewers: Javier Holguera <javier.holguera@gmail.com>, Boyang Chen <boyang@confluent.io>, Bill Bejeck <bill@confluent.io>

fix unit test
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants