Skip to content

[BEAM-9562] Remove TimerSpec from Proto - #11216

Merged
boyuanzz merged 1 commit into
apache:masterfrom
boyuanzz:timer_spec
Mar 27, 2020
Merged

[BEAM-9562] Remove TimerSpec from Proto#11216
boyuanzz merged 1 commit into
apache:masterfrom
boyuanzz:timer_spec

Conversation

@boyuanzz

@boyuanzzboyuanzz commented Mar 25, 2020

Copy link
Copy Markdown
Contributor

This PR removes TimerSpec from Proto. Timer will be translated into TimerFamilySpec over fnapi.

R: @lukecwik

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

  • Choose reviewer(s) and mention them in a comment (R: @username).
  • Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
  • Update CHANGES.md with noteworthy changes.
  • If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

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 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.

@lukecwiklukecwik left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Remember that you can run the Python portable validates runner tests using Flink (./gradlew :runners:flink:1.9:job-server:validatesPortableRunner). This should give you good coverage as to whether the change as a whole works.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I would suggest not changing the proto tag numbers otherwise you'll have a more difficult import/update issue with Google.

It will be much easier as a separate change to renumber them in increasing order, so timer_family_specs is 5, restriction_coder_id is 6, requests_finalization is 7, ... (making the import into Google much simpler to do).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

shouldn't this method replace to_runner_api?

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

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

I'm working on the Java changes meanwhile having some python tests to run to catch any breakages. Changing to to_runner_api is the next step. We should also remove TimerSpec definition from proto as long as nowhere else uses it.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

+1 on TimerSpec removal

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

You can rename this method to to_runner_api and remove the method below.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggested change
# TODO(BEAM-9602): Provide support of dynamic timer
# TODO(BEAM-9602): Provide support for dynamic timer

@boyuanzzboyuanzz changed the title [BEAM-9562] Remove TimerSpec from ParDoPayload[BEAM-9562] Remove TimerSpec from ProtoMar 26, 2020
@boyuanzz

Copy link
Copy Markdown
ContributorAuthor

Retest all please

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

You can rename this method to to_runner_api and remove the method below.

@lukecwik

Copy link
Copy Markdown
Member

Run Java Flink PortableValidatesRunner Streaming

@boyuanzz

Copy link
Copy Markdown
ContributorAuthor

Run Java Flink PortableValidatesRunner Streaming

@boyuanzz

Copy link
Copy Markdown
ContributorAuthor

Run Java PreCommit

@boyuanzz

Copy link
Copy Markdown
ContributorAuthor

Run JavaPortabilityApi PreCommit

@boyuanzz

Copy link
Copy Markdown
ContributorAuthor

Run Java Flink PortableValidatesRunner Streaming

@boyuanzz

Copy link
Copy Markdown
ContributorAuthor

Run Portable_Python PreCommit

@boyuanzz

Copy link
Copy Markdown
ContributorAuthor

Run Python2_PVR_Flink PreCommit

@boyuanzz

Copy link
Copy Markdown
ContributorAuthor

Run Python PreCommit

@boyuanzz

Copy link
Copy Markdown
ContributorAuthor

Run Java_Examples_Dataflow PreCommit

@boyuanzz

Copy link
Copy Markdown
ContributorAuthor

Run Portable_Python PreCommit

@boyuanzz

Copy link
Copy Markdown
ContributorAuthor

Run Java Flink PortableValidatesRunner Streaming

@boyuanzz

Copy link
Copy Markdown
ContributorAuthor

All tests passed. Going to merge it. Thanks for your help!

@boyuanzz
boyuanzz merged commit 33d78c5 into apache:masterMar 27, 2020
@suztomo

suztomo commented Mar 30, 2020

Copy link
Copy Markdown
Contributor

@boyuanzz@lukecwik Run Dataflow ValidatesRunner (beam_PostCommit_Java_ValidatesRunner_Dataflow) started failing after this PR:
https://builds.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Dataflow/4719/

History:

Screen Shot 2020-03-30 at 14 07 08

00:27:33 > Task :runners:google-cloud-dataflow-java:validatesRunnerLegacyWorkerTest
00:28:48 00:28:48 org.apache.beam.sdk.transforms.ParDoTest$TimerFamilyTests > testTimerWithMultipleTimerFamilyUnbounded FAILED
00:28:48 java.lang.RuntimeException at ParDoTest.java:4770
00:28:48 Caused by: java.lang.IllegalArgumentException at ParDoTest.java:4770
00:42:57 00:42:57 org.apache.beam.sdk.transforms.ParDoTest$TimerFamilyTests > testTimerFamilyEventTimeUnbounded FAILED
00:42:57 java.lang.RuntimeException at ParDoTest.java:4708
00:42:57 Caused by: java.lang.IllegalArgumentException at ParDoTest.java:4708

I appreciate if you can check whether the failure is related to this PR.

Created an issue: https://issues.apache.org/jira/browse/BEAM-9636

@boyuanzz

Copy link
Copy Markdown
ContributorAuthor

@boyuanzz@lukecwik Run Dataflow ValidatesRunner (beam_PostCommit_Java_ValidatesRunner_Dataflow) started failing after this PR:
https://builds.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Dataflow/4719/

History:

Screen Shot 2020-03-30 at 14 07 08
00:27:33 > Task :runners:google-cloud-dataflow-java:validatesRunnerLegacyWorkerTest
00:28:48 00:28:48 org.apache.beam.sdk.transforms.ParDoTest$TimerFamilyTests > testTimerWithMultipleTimerFamilyUnbounded FAILED
00:28:48 java.lang.RuntimeException at ParDoTest.java:4770
00:28:48 Caused by: java.lang.IllegalArgumentException at ParDoTest.java:4770
00:42:57 00:42:57 org.apache.beam.sdk.transforms.ParDoTest$TimerFamilyTests > testTimerFamilyEventTimeUnbounded FAILED
00:42:57 java.lang.RuntimeException at ParDoTest.java:4708
00:42:57 Caused by: java.lang.IllegalArgumentException at ParDoTest.java:4708

I appreciate if you can check whether the failure is related to this PR.

Created an issue: https://issues.apache.org/jira/browse/BEAM-9636

Thanks for the notification. Looking.

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.

3 participants

@boyuanzz@lukecwik@suztomo