Skip to content

Add watermark generator#959

Merged
dai-chen merged 2 commits intoopensearch-project:feature/maximus-m1from
dai-chen:maximus-m1/add-watermark-support
Nov 1, 2022
Merged

Add watermark generator#959
dai-chen merged 2 commits intoopensearch-project:feature/maximus-m1from
dai-chen:maximus-m1/add-watermark-support

Conversation

@dai-chen
Copy link
Copy Markdown
Collaborator

@dai-chen dai-chen commented Oct 24, 2022

Signed-off-by: Chen Dai daichen@amazon.com

Description

Watermark is a monotonically increasing timestamp of the oldest work not yet completed. The work can be any grouping operation, such as aggregate or join, that accumulate stream events to a table and maintain the state. In other words, watermark is the way of how we reason about the completeness of accumulated window state.

There are several aspects of watermark implementation, including watermark generation, watermark emit frequency and watermark propagation. This PR is focused on the watermark generation which has no dependency on how we integrate with query plan later.

What's covered in this PR is the common generate strategy: Bounded Out-Of-Order Watermark Generator which allows a fixed delay for disordered data.

Issues Resolved

#953

Check List

  • New functionality includes testing.
    • All tests pass, including unit test, integration test and doctest
  • New functionality has been documented.
    • New functionality has javadoc added
    • New functionality has user manual doc added
  • Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@dai-chen dai-chen added the enhancement New feature or request label Oct 24, 2022
@dai-chen dai-chen self-assigned this Oct 24, 2022
Signed-off-by: Chen Dai <daichen@amazon.com>
@dai-chen dai-chen force-pushed the maximus-m1/add-watermark-support branch from a01ab67 to 2ac0fb5 Compare October 27, 2022 21:05
Signed-off-by: Chen Dai <daichen@amazon.com>
@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Oct 27, 2022

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 62.76%. Comparing base (91baab1) to head (98f55f6).
⚠️ Report is 84 commits behind head on feature/maximus-m1.

❌ Your project status has failed because the head coverage (62.76%) is below the target coverage (99.00%). You can increase the head coverage or adjust the target coverage.

❗ There is a different number of reports uploaded between BASE (91baab1) and HEAD (98f55f6). Click for more details.

HEAD has 2 uploads less than BASE
Flag BASE (91baab1) HEAD (98f55f6)
sql-engine 2 0
Additional details and impacted files
@@                    Coverage Diff                    @@
##             feature/maximus-m1     #959       +/-   ##
=========================================================
- Coverage                 97.96%   62.76%   -35.20%     
=========================================================
  Files                       303       10      -293     
  Lines                      7805      658     -7147     
  Branches                    504      119      -385     
=========================================================
- Hits                       7646      413     -7233     
- Misses                      158      192       +34     
- Partials                      1       53       +52     
Flag Coverage Δ
query-workbench 62.76% <ø> (?)
sql-engine ?

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@dai-chen dai-chen marked this pull request as ready for review October 28, 2022 22:12
@dai-chen dai-chen requested a review from a team as a code owner October 28, 2022 22:12
@dai-chen dai-chen added this to the Maximus M1 - Phase 1 milestone Oct 31, 2022
Copy link
Copy Markdown
Collaborator

@penghuo penghuo left a comment

Choose a reason for hiding this comment

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

LGTM

@dai-chen dai-chen merged commit e8f3205 into opensearch-project:feature/maximus-m1 Nov 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Development

Successfully merging this pull request may close these issues.

3 participants