You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@beam.apache.org by "shubhdevelops (via GitHub)" <gi...@apache.org> on 2026/03/06 16:07:36 UTC

[PR] Add Python example for slowly updating global window side input pattern [beam]

shubhdevelops opened a new pull request, #37789:
URL: https://github.com/apache/beam/pull/37789

   ### Summary
   
   Adds a Python example for the **“Slowly updating global window side inputs”** section in the documentation.
   
   Previously the Python block contained `No sample present.`. This PR replaces it with a Python example demonstrating how to create and use a side input with `Latest.Globally().without_defaults()`.
   
   ### Issue
   
   Addresses #35935
   
   ### Changes
   
   * Added Python example in `website/www/site/content/en/documentation/patterns/side-inputs.md`
   * Demonstrates creation and usage of side input in a Beam pipeline.
   
   ### Testing
   
   Documentation-only change.
   
   
   ------------------------
   
   Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:
   
    - [ ] Mention the appropriate issue in your description (for example: `addresses #123`), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment `fixes #<ISSUE NUMBER>` instead.
    - [ ] Update `CHANGES.md` with noteworthy changes.
    - [ ] If this contribution is large, please file an Apache [Individual Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).
   
   See the [Contributor Guide](https://beam.apache.org/contribute) for more tips on [how to make review process smoother](https://github.com/apache/beam/blob/master/CONTRIBUTING.md#make-the-reviewers-job-easier).
   
   To check the build health, please visit [https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md](https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md)
   
   GitHub Actions Tests Status (on master branch)
   ------------------------------------------------------------------------------------------------
   [![Build python source distribution and wheels](https://github.com/apache/beam/actions/workflows/build_wheels.yml/badge.svg?event=schedule&&?branch=master)](https://github.com/apache/beam/actions?query=workflow%3A%22Build+python+source+distribution+and+wheels%22+branch%3Amaster+event%3Aschedule)
   [![Python tests](https://github.com/apache/beam/actions/workflows/python_tests.yml/badge.svg?event=schedule&&?branch=master)](https://github.com/apache/beam/actions?query=workflow%3A%22Python+Tests%22+branch%3Amaster+event%3Aschedule)
   [![Java tests](https://github.com/apache/beam/actions/workflows/java_tests.yml/badge.svg?event=schedule&&?branch=master)](https://github.com/apache/beam/actions?query=workflow%3A%22Java+Tests%22+branch%3Amaster+event%3Aschedule)
   [![Go tests](https://github.com/apache/beam/actions/workflows/go_tests.yml/badge.svg?event=schedule&&?branch=master)](https://github.com/apache/beam/actions?query=workflow%3A%22Go+tests%22+branch%3Amaster+event%3Aschedule)
   
   See [CI.md](https://github.com/apache/beam/blob/master/CI.md) for more information about GitHub Actions CI or the [workflows README](https://github.com/apache/beam/blob/master/.github/workflows/README.md) to see a list of phrases to trigger workflows.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Add Python example for slowly updating global window side input pattern [beam]

Posted by "gemini-code-assist[bot] (via GitHub)" <gi...@apache.org>.
gemini-code-assist[bot] commented on PR #37789:
URL: https://github.com/apache/beam/pull/37789#issuecomment-4012621409

   ## Summary of Changes
   
   Hello, I'm Gemini Code Assist[^1]! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
   
   This pull request significantly improves the Apache Beam documentation by providing a concrete Python example for the "Slowly updating global window side inputs" pattern. It replaces a previously empty section, offering developers a practical demonstration of how to implement and utilize side inputs with `Latest.Globally().without_defaults()` for dynamic data processing.
   
   ### Highlights
   
   * **Documentation Enhancement**: Replaced a placeholder with a functional Python example for "Slowly updating global window side inputs" in the Apache Beam documentation.
   * **Side Input Pattern**: The new example demonstrates the creation and usage of a side input using `beam.combiners.Latest.Globally().without_defaults()` within an Apache Beam pipeline.
   
   🧠 **New Feature in Public Preview:** You can now enable **Memory** to help **Gemini Code Assist** learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. **Click [here](https://codeassist.google/code-review/login) to enable Memory in your admin console.**
   
   <details>
   <summary><b>Changelog</b></summary>
   
   * **website/www/site/content/en/documentation/patterns/side-inputs.md**
       * Added a Python example demonstrating the creation and usage of a side input with `Latest.Globally().without_defaults()`.
   </details>
   
   <details>
   <summary><b>Activity</b></summary>
   
   * The pull request was opened by shubhdevelops to address issue #35935.
   * The author has provided a summary, changes, and testing notes, indicating it's a documentation-only change.
   * Standard Apache Beam contribution checklist and CI status badges are included.
   </details>
   
   <details>
   <summary><b>Using Gemini Code Assist</b></summary>
   <br>
   
   The full guide for Gemini Code Assist can be found on our [documentation page](https://developers.google.com/gemini-code-assist/docs/review-github-code), here are some quick tips.
   
   <b>Invoking Gemini</b>
   
   You can request assistance from Gemini at any point by creating a comment using either `/gemini <command>` or `@gemini-code-assist <command>`. Below is a summary of the supported commands on the current page.
   
   Feature | Command | Description
   --- | --- | ---
   Code Review | `/gemini review` | Performs a code review for the current pull request in its current state.
   Pull Request Summary | `/gemini summary` | Provides a summary of the current pull request in its current state.
   Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in pull request comments and review comments.
   Help | `/gemini help` | Displays a list of available commands.
   
   <b>Customization</b>
   
   To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a `.gemini/` folder in the base of the repository. Detailed instructions can be found [here](https://developers.google.com/gemini-code-assist/docs/customize-gemini-behavior-github).
   
   <b>Limitations & Feedback</b>
   
   Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with :thumbsup: and :thumbsdown: on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up [here](https://google.qualtrics.com/jfe/form/SV_2cyuGuTWsEw84yG).
   
   <b>You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the [Gemini Code Assist IDE Extension](https://cloud.google.com/products/gemini/code-assist).</b>
   </details>
   
   
   [^1]: Review the [Privacy Notices](https://policies.google.com/privacy), [Generative AI Prohibited Use Policy](https://policies.google.com/terms/generative-ai/use-policy), [Terms of Service](https://policies.google.com/terms), and learn how to configure Gemini Code Assist in GitHub [here](https://developers.google.com/gemini-code-assist/docs/customize-gemini-behavior-github). Gemini can make mistakes, so double check it and [use code with caution](https://support.google.com/legal/answer/13505487).
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Add Python example for slowly updating global window side input pattern [beam]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #37789:
URL: https://github.com/apache/beam/pull/37789#issuecomment-4142237313

   Reminder, please take a look at this pr: @Abacn 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Add Python example for slowly updating global window side input pattern [beam]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #37789:
URL: https://github.com/apache/beam/pull/37789#issuecomment-4060463139

   Reminder, please take a look at this pr: @damccorm 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Add Python example for slowly updating global window side input pattern [beam]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #37789:
URL: https://github.com/apache/beam/pull/37789#issuecomment-4012983326

   Assigning reviewers:
   
   R: @damccorm for label website.
   
   
   Note: If you would like to opt out of this review, comment `assign to next reviewer`.
   
   Available commands:
   - `stop reviewer notifications` - opt out of the automated review tooling
   - `remind me after tests pass` - tag the comment author after tests pass
   - `waiting on author` - shift the attention set back to the author (any comment or push by the author will return the attention set to the reviewers)
   
   The PR bot will only process comments in the main thread (not review comments).


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Add Python example for slowly updating global window side input pattern [beam]

Posted by "shubhdevelops (via GitHub)" <gi...@apache.org>.
shubhdevelops commented on PR #37789:
URL: https://github.com/apache/beam/pull/37789#issuecomment-4070668123

   @damccorm sir pls look at this pr of mine


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Add Python example for slowly updating global window side input pattern [beam]

Posted by "damccorm (via GitHub)" <gi...@apache.org>.
damccorm closed pull request #37789: Add Python example for slowly updating global window side input pattern
URL: https://github.com/apache/beam/pull/37789


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Add Python example for slowly updating global window side input pattern [beam]

Posted by "shubhdevelops (via GitHub)" <gi...@apache.org>.
shubhdevelops commented on PR #37789:
URL: https://github.com/apache/beam/pull/37789#issuecomment-4012635761

   Hi! I’ve submitted a PR that adds a Python example for the **“Slowly updating global window side inputs”** section in the documentation.
   
   The previous Python block indicated that no sample was available, so this change introduces a simple example demonstrating how to build and use a side input with `Latest.Globally().without_defaults()`.
   
   Please let me know if any adjustments or improvements are needed. Happy to refine it further.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Add Python example for slowly updating global window side input pattern [beam]

Posted by "damccorm (via GitHub)" <gi...@apache.org>.
damccorm commented on code in PR #37789:
URL: https://github.com/apache/beam/pull/37789#discussion_r2962271511


##########
website/www/site/content/en/documentation/patterns/side-inputs.md:
##########
@@ -48,7 +48,40 @@ For instance, the following code sample uses a `Map` to create a `DoFn`. The `Ma
 {{< /highlight >}}
 
 {{< highlight py >}}
-No sample present.
+import apache_beam as beam

Review Comment:
   It should also have associated tests



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Add Python example for slowly updating global window side input pattern [beam]

Posted by "damccorm (via GitHub)" <gi...@apache.org>.
damccorm commented on PR #37789:
URL: https://github.com/apache/beam/pull/37789#issuecomment-4155902429

   waiting on author


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Add Python example for slowly updating global window side input pattern [beam]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #37789:
URL: https://github.com/apache/beam/pull/37789#issuecomment-4089780930

   Assigning new set of reviewers because Pr has gone too long without review. If you would like to opt out of this review, comment `assign to next reviewer`:
   
   R: @Abacn for label website.
   
   Available commands:
   - `stop reviewer notifications` - opt out of the automated review tooling
   - `remind me after tests pass` - tag the comment author after tests pass
   - `waiting on author` - shift the attention set back to the author (any comment or push by the author will return the attention set to the reviewers)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Add Python example for slowly updating global window side input pattern [beam]

Posted by "damccorm (via GitHub)" <gi...@apache.org>.
damccorm commented on code in PR #37789:
URL: https://github.com/apache/beam/pull/37789#discussion_r2962268304


##########
website/www/site/content/en/documentation/patterns/side-inputs.md:
##########
@@ -48,7 +48,40 @@ For instance, the following code sample uses a `Map` to create a `DoFn`. The `Ma
 {{< /highlight >}}
 
 {{< highlight py >}}
-No sample present.
+import apache_beam as beam
+from apache_beam.options.pipeline_options import PipelineOptions
+
+class FetchSideInput(beam.DoFn):
+    def process(self, element):
+        # simulate fetching external data
+        yield {"threshold": 10}
+
+def run():
+    with beam.Pipeline(options=PipelineOptions()) as p:
+
+        main_input = (
+            p
+            | "CreateMainInput" >> beam.Create([1, 5, 10, 20])

Review Comment:
   We should use a streaming source here - I'd recommend trying to replicate https://github.com/apache/beam/blob/180f3a6bdb5c929c252cba3b62cf7bba800f58b0/examples/java/src/main/java/org/apache/beam/examples/snippets/Snippets.java#L888



##########
website/www/site/content/en/documentation/patterns/side-inputs.md:
##########
@@ -48,7 +48,40 @@ For instance, the following code sample uses a `Map` to create a `DoFn`. The `Ma
 {{< /highlight >}}
 
 {{< highlight py >}}
-No sample present.
+import apache_beam as beam
+from apache_beam.options.pipeline_options import PipelineOptions
+
+class FetchSideInput(beam.DoFn):
+    def process(self, element):
+        # simulate fetching external data
+        yield {"threshold": 10}
+
+def run():
+    with beam.Pipeline(options=PipelineOptions()) as p:
+
+        main_input = (
+            p
+            | "CreateMainInput" >> beam.Create([1, 5, 10, 20])
+        )
+
+        side_input = (
+            p
+            | "GenerateSignal" >> beam.Create([None])

Review Comment:
   Same thing here, this should be a streaming source like https://github.com/apache/beam/blob/180f3a6bdb5c929c252cba3b62cf7bba800f58b0/examples/java/src/main/java/org/apache/beam/examples/snippets/Snippets.java#L888



##########
website/www/site/content/en/documentation/patterns/side-inputs.md:
##########
@@ -48,7 +48,40 @@ For instance, the following code sample uses a `Map` to create a `DoFn`. The `Ma
 {{< /highlight >}}
 
 {{< highlight py >}}
-No sample present.
+import apache_beam as beam

Review Comment:
   We should put this in the samples directory like
   
   https://github.com/apache/beam/blob/180f3a6bdb5c929c252cba3b62cf7bba800f58b0/website/www/site/content/en/documentation/patterns/side-inputs.md?plain=1#L79
   
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Add Python example for slowly updating global window side input pattern [beam]

Posted by "damccorm (via GitHub)" <gi...@apache.org>.
damccorm commented on PR #37789:
URL: https://github.com/apache/beam/pull/37789#issuecomment-4360045872

   Closing since this looks stale


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org