Skip to content

[BEAM-6733] Add pipeline option to flush bundle data before checkpointing - #11678

Merged
mxm merged 1 commit into
apache:masterfrom
mxm:pre-snapshot-barrier
May 18, 2020
Merged

[BEAM-6733] Add pipeline option to flush bundle data before checkpointing#11678
mxm merged 1 commit into
apache:masterfrom
mxm:pre-snapshot-barrier

Conversation

@mxm

@mxmmxm commented May 12, 2020

Copy link
Copy Markdown
Contributor

We had a couple of PRs in which we wanted to remove the buffering of bundle
output during checkpointing: #7940#9652. Ultimately, we didn't merge any of
those because we weren't sure how the change would affect the checkpoint
performance.

As a better migration path, this introduces a pipeline option to change the
default, buffering bundle output during checkpointing, to finishing the bundle
and flushing all data before checkpointing.

Post-Commit Tests Status (on master branch)

LangSDKApexDataflowFlinkGearpumpSamzaSpark
GoBuild Status------Build Status------Build Status
JavaBuild StatusBuild StatusBuild Status
Build Status
Build Status
Build Status
Build Status
Build Status
Build StatusBuild StatusBuild Status
Build Status
Build Status
PythonBuild Status
Build Status
Build Status
Build Status
---Build Status
Build Status
Build Status
Build Status
Build Status
------Build Status
XLang---------Build Status------Build Status

Pre-Commit Tests Status (on master branch)

---JavaPythonGoWebsite
Non-portableBuild StatusBuild Status
Build Status
Build StatusBuild Status
Portable---Build Status------

See .test-infra/jenkins/README for trigger phrase, status and link of all Jenkins jobs.

@mxm

mxm commented May 12, 2020

Copy link
Copy Markdown
ContributorAuthor

Run Python Load Tests ParDo Flink Streaming

1 similar comment
@mxm

mxm commented May 12, 2020

Copy link
Copy Markdown
ContributorAuthor

Run Python Load Tests ParDo Flink Streaming

@mxm
mxmforce-pushed the pre-snapshot-barrier branch from 4e66ad3 to cfb6f32CompareMay 15, 2020 16:23
@mxm

mxm commented May 15, 2020

Copy link
Copy Markdown
ContributorAuthor

Had to rebase due to merge conflicts with the new website.

@mxm

mxm commented May 15, 2020

Copy link
Copy Markdown
ContributorAuthor

Run Python Load Tests ParDo Flink Streaming

@mxm
mxmforce-pushed the pre-snapshot-barrier branch from cfb6f32 to 638614aCompareMay 15, 2020 17:54
@mxm

mxm commented May 15, 2020

Copy link
Copy Markdown
ContributorAuthor

Based on the load test results, I'm not changing the default behavior here. Instead, flushing the bundle output before a checkpoint can be turned on optionally.

@mxm
mxmforce-pushed the pre-snapshot-barrier branch from 638614a to 9bac874CompareMay 15, 2020 17:57
…ting
We had a couple of PRs in which we wanted to remove the buffering of bundle
output during checkpointing: apache#7940apache#9652. Ultimately, we didn't merge any of
those because we weren't sure how the change would affect the checkpoint
performance.
As a better migration path, this introduces a pipeline option to change the
default, buffering bundle output during checkpointing, to finishing the bundle
and flushing all data before checkpointing.
@mxm
mxmforce-pushed the pre-snapshot-barrier branch from 9bac874 to 401f213CompareMay 15, 2020 18:02
@mxm

mxm commented May 18, 2020

Copy link
Copy Markdown
ContributorAuthor

Run Python2_PVR_Flink PreCommit

@mxm

mxm commented May 18, 2020

Copy link
Copy Markdown
ContributorAuthor

After more test runs, it looks like the effect of finishing the bundle before the checkpoint is marginal / non-existent. However, we will have to run more experiments to change it to be the default. The option will be useful for the testing.

@mxm
mxm merged commit 7c80ecb into apache:masterMay 18, 2020
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@mxm