You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by gi...@apache.org on 2022/08/23 22:15:45 UTC

[beam] branch asf-site updated: Publishing website 2022/08/23 22:15:38 at commit 2763ec7

This is an automated email from the ASF dual-hosted git repository.

git-site-role pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/beam.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 8d122a8123e Publishing website 2022/08/23 22:15:38 at commit 2763ec7
8d122a8123e is described below

commit 8d122a8123e5c40b9c741c28de24b749fbae42c7
Author: jenkins <bu...@apache.org>
AuthorDate: Tue Aug 23 22:15:38 2022 +0000

    Publishing website 2022/08/23 22:15:38 at commit 2763ec7
---
 .../generated-content/blog/beam-2.41.0/index.html  |  99 ++++++++++++++++++
 website/generated-content/blog/index.html          |   3 +-
 .../review-input-streaming-connectors/index.html   |   6 +-
 .../blog/splittable-do-fn/index.html               |  10 +-
 .../generated-content/blog/test-stream/index.html  |   2 +-
 .../generated-content/categories/release/index.xml | 113 ++++++++++++++++++++-
 website/generated-content/contribute/index.xml     |   4 +-
 .../contribute/ptransform-style-guide/index.html   |   2 +-
 .../dataframes/differences-from-pandas/index.html  |  14 +--
 .../dsls/dataframes/overview/index.html            |   2 +-
 .../sql/calcite/aggregate-functions/index.html     |   2 +-
 .../dsls/sql/calcite/data-types/index.html         |   2 +-
 .../dsls/sql/calcite/lexical-structure/index.html  |   2 +-
 .../dsls/sql/calcite/overview/index.html           |   2 +-
 .../dsls/sql/calcite/query-syntax/index.html       |   2 +-
 .../dsls/sql/calcite/scalar-functions/index.html   |   2 +-
 .../extensions/create-external-table/index.html    |   2 +-
 .../dsls/sql/extensions/joins/index.html           |   2 +-
 .../dsls/sql/extensions/set/index.html             |   2 +-
 .../extensions/user-defined-functions/index.html   |   2 +-
 .../extensions/windowing-and-triggering/index.html |   2 +-
 .../documentation/dsls/sql/overview/index.html     |   4 +-
 .../documentation/dsls/sql/shell/index.html        |   2 +-
 .../documentation/dsls/sql/walkthrough/index.html  |   4 +-
 .../sql/zetasql/aggregate-functions/index.html     |   2 +-
 .../sql/zetasql/conditional-expressions/index.html |   2 +-
 .../dsls/sql/zetasql/conversion-rules/index.html   |   2 +-
 .../dsls/sql/zetasql/data-types/index.html         |   2 +-
 .../dsls/sql/zetasql/lexical/index.html            |   2 +-
 .../dsls/sql/zetasql/math-functions/index.html     |   2 +-
 .../dsls/sql/zetasql/operators/index.html          |   2 +-
 .../dsls/sql/zetasql/overview/index.html           |   2 +-
 .../dsls/sql/zetasql/query-syntax/index.html       |   2 +-
 .../dsls/sql/zetasql/string-functions/index.html   |   2 +-
 .../dsls/sql/zetasql/syntax/index.html             |   2 +-
 website/generated-content/documentation/index.xml  |  52 +++++-----
 .../io/built-in/google-bigquery/index.html         |  16 +--
 .../documentation/io/built-in/parquet/index.html   |   4 +-
 .../documentation/io/built-in/snowflake/index.html |   6 +-
 .../io/developing-io-python/index.html             |   6 +-
 .../pipelines/test-your-pipeline/index.html        |   4 +-
 .../documentation/programming-guide/index.html     |  14 +--
 .../documentation/runners/dataflow/index.html      |   6 +-
 .../documentation/runners/direct/index.html        |  10 +-
 .../documentation/runners/flink/index.html         |   6 +-
 .../documentation/runners/jstorm/index.html        |   2 +-
 .../documentation/runners/mapreduce/index.html     |   2 +-
 .../documentation/runners/samza/index.html         |   2 +-
 .../documentation/runners/spark/index.html         |   6 +-
 .../sdks/feature-comparison/index.html             |   2 +-
 .../sdks/go-cross-compilation/index.html           |   2 +-
 .../documentation/sdks/go-dependencies/index.html  |   4 +-
 .../documentation/sdks/go/index.html               |   2 +-
 .../sdks/java-dependencies/index.html              |   4 +-
 .../documentation/sdks/java-extensions/index.html  |   2 +-
 .../sdks/java-multi-language-pipelines/index.html  |   2 +-
 .../documentation/sdks/java-thirdparty/index.html  |   2 +-
 .../documentation/sdks/java/euphoria/index.html    |   2 +-
 .../documentation/sdks/java/index.html             |   2 +-
 .../sdks/java/testing/nexmark/index.html           |   6 +-
 .../sdks/java/testing/tpcds/index.html             |   2 +-
 .../sdks/python-dependencies/index.html            |   4 +-
 .../sdks/python-machine-learning/index.html        |   2 +-
 .../python-multi-language-pipelines/index.html     |   2 +-
 .../sdks/python-pipeline-dependencies/index.html   |   2 +-
 .../documentation/sdks/python-streaming/index.html |   2 +-
 .../sdks/python-type-safety/index.html             |   2 +-
 .../documentation/sdks/python/index.html           |   2 +-
 .../get-started/downloads/index.html               |  17 ++--
 website/generated-content/get-started/index.xml    |  26 +++--
 .../get-started/quickstart-java/index.html         |   6 +-
 .../get-started/wordcount-example/index.html       |   4 +-
 website/generated-content/sitemap.xml              |   2 +-
 73 files changed, 384 insertions(+), 164 deletions(-)

diff --git a/website/generated-content/blog/beam-2.41.0/index.html b/website/generated-content/blog/beam-2.41.0/index.html
new file mode 100644
index 00000000000..7731ef8c532
--- /dev/null
+++ b/website/generated-content/blog/beam-2.41.0/index.html
@@ -0,0 +1,99 @@
+<!doctype html><html lang=en class=no-js><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1"><title>Apache Beam 2.41.0</title><meta name=description content="Apache Beam is an open source, unified model and set of language-specific SDKs for defining and executing data processing workflows, and also data ingestion and integration flows, supporting Enterprise Integration Patterns (EIPs) and Domain Spe [...]
+<a class=navbar-link href=/get-started/beam-overview/>Get Started</a>
+<a class=navbar-link href=/documentation/>Documentation</a>
+<button type=button class="navbar-toggle menu-open" aria-expanded=false aria-controls=navbar onclick=openMenu()>
+<span class=sr-only>Toggle navigation</span>
+<span class=icon-bar></span><span class=icon-bar></span><span class=icon-bar></span></button></div><div class="navbar-mask closed"></div><div id=navbar class="navbar-container closed"><button type=button class=navbar-toggle aria-expanded=false aria-controls=navbar id=closeMenu>
+<span class=sr-only>Toggle navigation</span>
+<span class=icon-bar></span><span class=icon-bar></span><span class=icon-bar></span></button><ul class="nav navbar-nav"><li><div class=searchBar-mobile><script>(function(){var cx='012923275103528129024:4emlchv9wzi';var gcse=document.createElement('script');gcse.type='text/javascript';gcse.async=true;gcse.src='https://cse.google.com/cse.js?cx='+cx;var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(gcse,s);})();</script><gcse:search></gcse:search></div></li><li><a c [...]
+&nbsp;Apache
+<span class=arrow-icon><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><circle cx="10" cy="10" r="10" fill="#ff6d00"/><path stroke="#fff" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.535 5.28l4.573 4.818-4.573 4.403"/></svg></span></a><ul class="dropdown-menu dropdown-menu-right"><li><a target=_blank href=http://www.apache.org/>ASF Homepage</a></li><li><a target=_blank href=http://www.apache.org/licenses/>License</a> [...]
+<a class=navbar-link href=/get-started/beam-overview/>Get Started</a><li class="dropdown navbar-dropdown navbar-dropdown-documentation"><a href=# class="dropdown-toggle navbar-link" role=button aria-haspopup=true aria-expanded=false>Documentation
+<span><svg xmlns="http://www.w3.org/2000/svg" width="12" height="11" fill="none" viewBox="0 0 12 11"><path stroke="#ff6d00" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10.666 4.535 5.847 9.108 1.444 4.535"/></svg></span></a><ul class=dropdown-menu><li><a class=navbar-dropdown-menu-link href=/documentation/>General</a></li><li><a class=navbar-dropdown-menu-link href=/documentation/sdks/java/>Languages</a></li><li><a class=navbar-dropdown-menu-link href=/documentati [...]
+<a class=navbar-link href=/community/>Community</a>
+<a class=navbar-link href=/contribute/>Contribute</a>
+<a class=navbar-link href=/blog/>Blog</a>
+<a class=navbar-link href=/case-studies/>Case Studies</a></div><div id=iconsBar><a type=button onclick=showSearch()><svg xmlns="http://www.w3.org/2000/svg" width="25" height="24" fill="none" viewBox="0 0 25 24"><path stroke="#ff6d00" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.75" d="M10.191 17c3.866.0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zM21.191 21l-6-6"/></svg></a><a target=_blank href=https://github.com/apache/beam/edit/master/website/www/site/content/en [...]
+&nbsp;Apache
+<span class=arrow-icon><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><circle cx="10" cy="10" r="10" fill="#ff6d00"/><path stroke="#fff" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.535 5.28l4.573 4.818-4.573 4.403"/></svg></span></a><ul class=dropdown-menu><li><a class=navbar-dropdown-menu-link target=_blank href=http://www.apache.org/>ASF Homepage</a></li><li><a class=navbar-dropdown-menu-link target=_blank href=h [...]
+function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
+function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
+function blockScroll(){$("body").toggleClass("fixedPosition");}
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="body__contained center no__padding content-up"><article class=post itemscope itemtype=http://schema.org/BlogPosting><div class=post-content><div class=post-info><p>blog & release
+       </p><p>0001/01/01</p></div><header class=post-header><h2 itemprop="name headline">Apache Beam 2.41.0</h1><div class=post-info><span>Kiley Sok</span></div></header><div class="arrow-list header-top-margin" itemprop=articleBody><p>We are happy to present the new 2.41.0 release of Beam.
+This release includes both improvements and new functionality.
+See the <a href=/get-started/downloads/#2410-2022-08-TODO>download page</a> for this release.</p><p>For more information on changes in 2.41.0, check out the <a href="https://github.com/apache/beam/milestone/3?closed=1">detailed release notes</a>.</p><h2 id=ios>I/Os</h2><ul><li>Projection Pushdown optimizer is now on by default for streaming, matching the behavior of batch pipelines since 2.38.0. If you encounter a bug with the optimizer, please file an issue and disable the optimizer usi [...]
+<a href=https://github.com/apache/beam/tree/master/sdks/java/io/kinesis>kinesis</a> for AWS Java SDK v1 are deprecated
+in favor of <a href=https://github.com/apache/beam/tree/master/sdks/java/io/amazon-web-services2>amazon-web-services2</a>
+and will be eventually removed after a few Beam releases (Java) (<a href=https://github.com/apache/beam/issues/21249>#21249</a>).</li></ul><h2 id=bugfixes>Bugfixes</h2><ul><li>Fixed a condition where retrying queries would yield an incorrect cursor in the Java SDK Firestore Connector (<a href=https://github.com/apache/beam/issues/22089>#22089</a>).</li><li>Fixed plumbing allowed lateness in Go SDK. It was ignoring the user set value earlier and always used to set to 0. (<a href=https://g [...]
+Ahmet Altay
+akashorabek
+Alexey Inkin
+Alexey Romanenko
+Anand Inguva
+andoni-guzman
+Andrew Pilloud
+Andrey
+Andy Ye
+Balázs Németh
+Benjamin Gonzalez
+BjornPrime
+Brian Hulette
+bulat safiullin
+bullet03
+Byron Ellis
+Chamikara Jayalath
+Damon Douglas
+Daniel Oliveira
+Daniel Thevessen
+Danny McCormick
+David Huntsperger
+Dheeraj Gharde
+Etienne Chauchot
+Evan Galpin
+Fernando Morales
+Heejong Lee
+Jack McCluskey
+johnjcasey
+Kenneth Knowles
+Ke Wu
+Kiley Sok
+Liam Miller-Cushon
+Lucas Nogueira
+Luke Cwik
+MakarkinSAkvelon
+Manu Zhang
+Minbo Bae
+Moritz Mack
+Naireen Hussain
+Ning Kang
+Oleh Borysevych
+Pablo Estrada
+pablo rodriguez defino
+Pranav Bhandari
+Rebecca Szper
+Red Daly
+Reuven Lax
+Ritesh Ghorse
+Robert Bradshaw
+Robert Burke
+Ryan Thompson
+Sam Whittle
+Steven Niemitz
+Valentyn Tymofieiev
+Vincent Marquez
+Vitaly Terentyev
+Vlad
+Vladislav Chunikhin
+Yichi Zhang
+Yi Hu
+yirutang
+Yixiao Shen
+Yu Feng</p></div></div><div class=blog-content><h2>Latest from the blog</h2></div><div class=posts-list><a class=post-card href=/blog/beam-2.40.0/ data-categories="blog release"><div class="post-info post-category"><p>blog & release
+                    
+   </p><p>2022/06/25</p></div><div class=post><p class=post-title>Apache Beam 2.40.0</p><p class=post-info>Pablo Estrada</p></div></a><a class=post-card href=/blog/beam-2.39.0/ data-categories="blog release"><div class="post-info post-category"><p>blog & release
+                    
+   </p><p>2022/05/25</p></div><div class=post><p class=post-title>Apache Beam 2.39.0</p><p class=post-info>Yichi Zhang</p></div></a><a class=post-card href=/blog/beam-sql-with-notebooks/ data-categories=blog><div class="post-info post-category"><p>blog</p><p>2022/04/28</p></div><div class=post><p class=post-title>Running Beam SQL in notebooks</p><p class=post-info>Ning Kang</p></div></a></div></article></div><footer class=footer><div class=footer__contained><div class=footer__cols><div c [...]
+<a href=http://www.apache.org>The Apache Software Foundation</a>
+| <a href=/privacy_policy>Privacy Policy</a>
+| <a href=/feed.xml>RSS Feed</a><br><br>Apache Beam, Apache, Beam, the Beam logo, and the Apache feather logo are either registered trademarks or trademarks of The Apache Software Foundation. All other products or name brands are trademarks of their respective holders, including The Apache Software Foundation.</div></div><div class="footer__cols__col footer__cols__col__logos"><div class=footer__cols__col--group><div class=footer__cols__col__logo><a href=https://github.com/apache/beam><im [...]
\ No newline at end of file
diff --git a/website/generated-content/blog/index.html b/website/generated-content/blog/index.html
index df365432edc..7897b51da4b 100644
--- a/website/generated-content/blog/index.html
+++ b/website/generated-content/blog/index.html
@@ -147,7 +147,8 @@ Tyler Akidau</p><div class=post-summary>Are you interested in giving a presentat
 Tyler Akidau</p><div class=post-summary>With initial code drops complete (Dataflow SDK and Runner, Flink Runner, Spark Runner) and expressed interest in runner implementations for Storm, Hadoop, and Gearpump (amongst others), we wanted to start addressing a big question in the Apache Beam (incubating) community: what capabilities will each runner be able to support?</div></a><a class="post-card tf-filter-item" href=/blog/python-sdk-now-public/ data-categories="beam python sdk"><div class [...]
                    </p><p>2016/02/25</p></div><p class=post-title>Dataflow Python SDK is now public!</p><p class=post-info>James Malone</p><div class=post-summary>When the Apache Beam project proposed entry into the Apache Incubator the proposal included the Dataflow Java SDK. In the long term, however, Apache Beam aims to support SDKs implemented in multiple languages, such as Python.</div></a><a class="post-card tf-filter-item" href=/blog/beam-has-a-logo/ data-categories="beam update w [...]
                    </p><p>2016/02/22</p></div><p class=post-title>Apache Beam has a logo!</p><p class=post-info>James Malone</p><div class=post-summary>One of the major benefits of Apache Beam is the fact that it unifies both both batch and stream processing into one powerful model. In fact, this unification is so important, the name Beam itself comes from the union of Batch + strEAM = Beam
-When the project started, we wanted a logo which was both appealing and visually represented this unification.</div></a></div><div class=category-buttons><button id=load-button class=load-button>Load more</button></div></div><script src=/js/categories-filter.min.b4c8629728343b46cd961e56177633709f2bd55e8039245961cc15bf9a9215d2.js></script><script>var htfConfig={filters:[{name:'categories',prefix:'category-',buttonClass:'category-button',allSelector:'#selectAllAuthors',attrName:'data-categ [...]
+When the project started, we wanted a logo which was both appealing and visually represented this unification.</div></a><a class="post-card tf-filter-item" href=/blog/beam-2.41.0/ data-categories="blog release"><div class="post-info post-category"><p>blog & release
+                   </p><p>0001/01/01</p></div><p class=post-title>Apache Beam 2.41.0</p><p class=post-info>Kiley Sok</p><div class=post-summary>We are happy to present the new 2.41.0 release of Beam. This release includes both improvements and new functionality. See the download page for this release.</div></a></div><div class=category-buttons><button id=load-button class=load-button>Load more</button></div></div><script src=/js/categories-filter.min.b4c8629728343b46cd961e56177633709f2bd [...]
 var htf=new CategoriesFilter(htfConfig);$("#load-button").click(function(){$(this).toggleClass('tf-filter-item');htf.showMore();htf.showCheck(htfConfig.filters[0].name,false);});function applyFilter(element){var category=element.id.split('category-');htf.resetCount();htf.checkFilter(category[1],'category-');}</script></div><footer class=footer><div class=footer__contained><div class=footer__cols><div class="footer__cols__col footer__cols__col__logos"><div class=footer__cols__col__logo><i [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
diff --git a/website/generated-content/blog/review-input-streaming-connectors/index.html b/website/generated-content/blog/review-input-streaming-connectors/index.html
index 48c8c891b72..b6995dbcc02 100644
--- a/website/generated-content/blog/review-input-streaming-connectors/index.html
+++ b/website/generated-content/blog/review-input-streaming-connectors/index.html
@@ -21,9 +21,9 @@ function endSearch(){var search=document.querySelector(".searchBar");search.clas
 function blockScroll(){$("body").toggleClass("fixedPosition");}
 function openMenu(){addPlaceholder();blockScroll();}</script><div class="body__contained center no__padding content-up"><article class=post itemscope itemtype=http://schema.org/BlogPosting><div class=post-content><div class=post-info><p>blog</p><p>2018/08/20</p></div><header class=post-header><h2 itemprop="name headline">A review of input streaming connectors</h1><div class=post-info><span>Leonid Kuligin [<a href=https://twitter.com/lkulighin>@lkulighin</a>]
 &
-Julien Phalip [<a href=https://twitter.com/julienphalip>@julienphalip</a>]</span></div></header><div class="arrow-list header-top-margin" itemprop=articleBody><p>In this post, you&rsquo;ll learn about the current state of support for input streaming connectors in <a href=/>Apache Beam</a>. For more context, you&rsquo;ll also learn about the corresponding state of support in <a href=https://spark.apache.org/>Apache Spark</a>.</p><p>With batch processing, you might load data from any sourc [...]
-and <a href=https://spark.apache.org/docs/latest/api/java/org/apache/spark/streaming/StreamingContext.html#textFileStream-java.lang.String->textFileStream</a></td></tr><tr><td>S3<br>(Using the <code>s3://</code> URI)</td><td><a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/FileIO.html>FileIO</a> + <a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/aws/options/S3Options.html>S3Options</a></td></tr><tr><td rowspan=3>Messaging Queues [...]
-and <a href=https://spark.apache.org/docs/latest/api/python/reference/api/pyspark.streaming.StreamingContext.textFileStream.html>textFileStream</a></td></tr><tr><td rowspan=2>Object stores</td><td>Google Cloud Storage</td><td><a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.gcp.gcsio.html>io.gcp.gcsio</a></td><td rowspan=2><a href=https://spark.apache.org/docs/latest/api/python/pyspark.streaming.html#pyspark.streaming.StreamingContext.textFileStream>textFileStream</a> [...]
+Julien Phalip [<a href=https://twitter.com/julienphalip>@julienphalip</a>]</span></div></header><div class="arrow-list header-top-margin" itemprop=articleBody><p>In this post, you&rsquo;ll learn about the current state of support for input streaming connectors in <a href=/>Apache Beam</a>. For more context, you&rsquo;ll also learn about the corresponding state of support in <a href=https://spark.apache.org/>Apache Spark</a>.</p><p>With batch processing, you might load data from any sourc [...]
+and <a href=https://spark.apache.org/docs/latest/api/java/org/apache/spark/streaming/StreamingContext.html#textFileStream-java.lang.String->textFileStream</a></td></tr><tr><td>S3<br>(Using the <code>s3://</code> URI)</td><td><a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/FileIO.html>FileIO</a> + <a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/aws/options/S3Options.html>S3Options</a></td></tr><tr><td rowspan=3>Messaging Queues [...]
+and <a href=https://spark.apache.org/docs/latest/api/python/reference/api/pyspark.streaming.StreamingContext.textFileStream.html>textFileStream</a></td></tr><tr><td rowspan=2>Object stores</td><td>Google Cloud Storage</td><td><a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.gcp.gcsio.html>io.gcp.gcsio</a></td><td rowspan=2><a href=https://spark.apache.org/docs/latest/api/python/pyspark.streaming.html#pyspark.streaming.StreamingContext.textFileStream>textFileStream</a> [...]
                     
    </p><p>2022/06/25</p></div><div class=post><p class=post-title>Apache Beam 2.40.0</p><p class=post-info>Pablo Estrada</p></div></a><a class=post-card href=/blog/beam-2.39.0/ data-categories="blog release"><div class="post-info post-category"><p>blog & release
                     
diff --git a/website/generated-content/blog/splittable-do-fn/index.html b/website/generated-content/blog/splittable-do-fn/index.html
index 5cd5180f901..14cfeb939f9 100644
--- a/website/generated-content/blog/splittable-do-fn/index.html
+++ b/website/generated-content/blog/splittable-do-fn/index.html
@@ -53,20 +53,20 @@ result, the pipeline can suffer from poor performance due to stragglers.</p></li
 with a regular <code>DoFn</code>, because it would need to output an infinite number of
 records per each input element <code>topic, partition</code> <em>(<a href=/blog/2017/02/13/stateful-processing.html>stateful processing</a> comes close, but it
 has other limitations that make it insufficient for this task</em>).</p></li></ul><h2 id=beam-source-api>Beam Source API</h2><p>Apache Beam historically provides a Source API
-(<a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/BoundedSource.html>BoundedSource</a>
+(<a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/BoundedSource.html>BoundedSource</a>
 and
-<a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/UnboundedSource.html>UnboundedSource</a>) which does
+<a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/UnboundedSource.html>UnboundedSource</a>) which does
 not have these limitations and allows development of efficient data sources for
 batch and streaming systems. Pipelines use this API via the
-<a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/Read.html><code>Read.from(Source)</code></a> built-in <code>PTransform</code>.</p><p>The Source API is largely similar to that of most other data processing
+<a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/Read.html><code>Read.from(Source)</code></a> built-in <code>PTransform</code>.</p><p>The Source API is largely similar to that of most other data processing
 frameworks, and allows the system to read data in parallel using multiple
 workers, as well as checkpoint and resume reading from an unbounded data source.
 Additionally, the Beam
-<a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/BoundedSource.html><code>BoundedSource</code></a>
+<a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/BoundedSource.html><code>BoundedSource</code></a>
 API provides advanced features such as progress reporting and <a href=/blog/2016/05/18/splitAtFraction-method.html>dynamic
 rebalancing</a>
 (which together enable autoscaling), and
-<a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/UnboundedSource.html><code>UnboundedSource</code></a> supports
+<a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/UnboundedSource.html><code>UnboundedSource</code></a> supports
 reporting the source&rsquo;s watermark and backlog <em>(until SDF, we believed that
 &ldquo;batch&rdquo; and &ldquo;streaming&rdquo; data sources are fundamentally different and thus
 require fundamentally different APIs)</em>.</p><p>Unfortunately, these features come at a price. Coding against the Source API
diff --git a/website/generated-content/blog/test-stream/index.html b/website/generated-content/blog/test-stream/index.html
index cb06928235f..b065cc715d2 100644
--- a/website/generated-content/blog/test-stream/index.html
+++ b/website/generated-content/blog/test-stream/index.html
@@ -56,7 +56,7 @@ configured triggering and allowed lateness of the pipeline. The expected outputs
 of the LeaderBoard pipeline vary depending on when elements arrive in relation
 to the watermark and the progress of processing time, which could not previously
 be controlled within a test.</p><h2 id=writing-deterministic-tests-to-emulate-nondeterminism>Writing Deterministic Tests to Emulate Nondeterminism</h2><p>The Beam testing infrastructure provides the
-<a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/testing/PAssert.html>PAssert</a>
+<a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/testing/PAssert.html>PAssert</a>
 methods, which assert properties about the contents of a PCollection from within
 a pipeline. We have expanded this infrastructure to include
 <a href=https://github.com/apache/beam/blob/master/sdks/java/core/src/main/java/org/apache/beam/sdk/testing/TestStream.java>TestStream</a>,
diff --git a/website/generated-content/categories/release/index.xml b/website/generated-content/categories/release/index.xml
index bc7547f7fb1..afab50169ca 100644
--- a/website/generated-content/categories/release/index.xml
+++ b/website/generated-content/categories/release/index.xml
@@ -3232,4 +3232,115 @@ anticipated, perhaps one every 1-2 months.&lt;/p>
 the developer experience will be our focus for the next several months. If you
 have any comments or discover any issues, I’d like to invite you to reach out
 to us via &lt;a href="/get-started/support/">user’s mailing list&lt;/a> or the
-&lt;a href="https://issues.apache.org/jira/browse/BEAM/">Apache JIRA issue tracker&lt;/a>.&lt;/p></description></item></channel></rss>
\ No newline at end of file
+&lt;a href="https://issues.apache.org/jira/browse/BEAM/">Apache JIRA issue tracker&lt;/a>.&lt;/p></description></item><item><title>Blog: Apache Beam 2.41.0</title><link>/blog/beam-2.41.0/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/blog/beam-2.41.0/</guid><description>
+&lt;!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+http://www.apache.org/licenses/LICENSE-2.0
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+&lt;p>We are happy to present the new 2.41.0 release of Beam.
+This release includes both improvements and new functionality.
+See the &lt;a href="/get-started/downloads/#2410-2022-08-TODO">download page&lt;/a> for this release.&lt;/p>
+&lt;p>For more information on changes in 2.41.0, check out the &lt;a href="https://github.com/apache/beam/milestone/3?closed=1">detailed release notes&lt;/a>.&lt;/p>
+&lt;h2 id="ios">I/Os&lt;/h2>
+&lt;ul>
+&lt;li>Projection Pushdown optimizer is now on by default for streaming, matching the behavior of batch pipelines since 2.38.0. If you encounter a bug with the optimizer, please file an issue and disable the optimizer using pipeline option &lt;code>--experiments=disable_projection_pushdown&lt;/code>.&lt;/li>
+&lt;/ul>
+&lt;h2 id="new-features--improvements">New Features / Improvements&lt;/h2>
+&lt;ul>
+&lt;li>Previously available in Java sdk, Python sdk now also supports logging level overrides per module. (&lt;a href="https://github.com/apache/beam/issues/18222">#18222&lt;/a>).&lt;/li>
+&lt;/ul>
+&lt;h2 id="breaking-changes">Breaking Changes&lt;/h2>
+&lt;ul>
+&lt;li>Projection Pushdown optimizer may break Dataflow upgrade compatibility for optimized pipelines when it removes unused fields. If you need to upgrade and encounter a compatibility issue, disable the optimizer using pipeline option &lt;code>--experiments=disable_projection_pushdown&lt;/code>.&lt;/li>
+&lt;/ul>
+&lt;h2 id="deprecations">Deprecations&lt;/h2>
+&lt;ul>
+&lt;li>Support for Spark 2.4.x is deprecated and will be dropped with the release of Beam 2.44.0 or soon after (Spark runner) (&lt;a href="https://github.com/apache/beam/issues/22094">#22094&lt;/a>).&lt;/li>
+&lt;li>The modules &lt;a href="https://github.com/apache/beam/tree/master/sdks/java/io/amazon-web-services">amazon-web-services&lt;/a> and
+&lt;a href="https://github.com/apache/beam/tree/master/sdks/java/io/kinesis">kinesis&lt;/a> for AWS Java SDK v1 are deprecated
+in favor of &lt;a href="https://github.com/apache/beam/tree/master/sdks/java/io/amazon-web-services2">amazon-web-services2&lt;/a>
+and will be eventually removed after a few Beam releases (Java) (&lt;a href="https://github.com/apache/beam/issues/21249">#21249&lt;/a>).&lt;/li>
+&lt;/ul>
+&lt;h2 id="bugfixes">Bugfixes&lt;/h2>
+&lt;ul>
+&lt;li>Fixed a condition where retrying queries would yield an incorrect cursor in the Java SDK Firestore Connector (&lt;a href="https://github.com/apache/beam/issues/22089">#22089&lt;/a>).&lt;/li>
+&lt;li>Fixed plumbing allowed lateness in Go SDK. It was ignoring the user set value earlier and always used to set to 0. (&lt;a href="https://github.com/apache/beam/issues/22474">#22474&lt;/a>).&lt;/li>
+&lt;/ul>
+&lt;h3 id="known-issues">Known Issues&lt;/h3>
+&lt;ul>
+&lt;li>See a full list of open &lt;a href="https://github.com/apache/beam/milestone/3">issues that affect&lt;/a> this version.&lt;/li>
+&lt;/ul>
+&lt;h2 id="list-of-contributors">List of Contributors&lt;/h2>
+&lt;p>According to git shortlog, the following people contributed to the 2.41.0 release. Thank you to all contributors!&lt;/p>
+&lt;p>Ahmed Abualsaud
+Ahmet Altay
+akashorabek
+Alexey Inkin
+Alexey Romanenko
+Anand Inguva
+andoni-guzman
+Andrew Pilloud
+Andrey
+Andy Ye
+Balázs Németh
+Benjamin Gonzalez
+BjornPrime
+Brian Hulette
+bulat safiullin
+bullet03
+Byron Ellis
+Chamikara Jayalath
+Damon Douglas
+Daniel Oliveira
+Daniel Thevessen
+Danny McCormick
+David Huntsperger
+Dheeraj Gharde
+Etienne Chauchot
+Evan Galpin
+Fernando Morales
+Heejong Lee
+Jack McCluskey
+johnjcasey
+Kenneth Knowles
+Ke Wu
+Kiley Sok
+Liam Miller-Cushon
+Lucas Nogueira
+Luke Cwik
+MakarkinSAkvelon
+Manu Zhang
+Minbo Bae
+Moritz Mack
+Naireen Hussain
+Ning Kang
+Oleh Borysevych
+Pablo Estrada
+pablo rodriguez defino
+Pranav Bhandari
+Rebecca Szper
+Red Daly
+Reuven Lax
+Ritesh Ghorse
+Robert Bradshaw
+Robert Burke
+Ryan Thompson
+Sam Whittle
+Steven Niemitz
+Valentyn Tymofieiev
+Vincent Marquez
+Vitaly Terentyev
+Vlad
+Vladislav Chunikhin
+Yichi Zhang
+Yi Hu
+yirutang
+Yixiao Shen
+Yu Feng&lt;/p></description></item></channel></rss>
\ No newline at end of file
diff --git a/website/generated-content/contribute/index.xml b/website/generated-content/contribute/index.xml
index 857e54e6483..c84227c6bca 100644
--- a/website/generated-content/contribute/index.xml
+++ b/website/generated-content/contribute/index.xml
@@ -2883,8 +2883,8 @@ E.g. when expanding a filepattern into files, log what the filepattern was and h
 &lt;p>Do:&lt;/p>
 &lt;ul>
 &lt;li>Generally, follow the rules of &lt;a href="https://semver.org/">semantic versioning&lt;/a>.&lt;/li>
-&lt;li>If the API of the transform is not yet stable, annotate it as &lt;code>@Experimental&lt;/code> (Java) or &lt;code>@experimental&lt;/code> (&lt;a href="https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.utils.annotations.html">Python&lt;/a>).&lt;/li>
-&lt;li>If the API deprecated, annotate it as &lt;code>@Deprecated&lt;/code> (Java) or &lt;code>@deprecated&lt;/code> (&lt;a href="https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.utils.annotations.html">Python&lt;/a>).&lt;/li>
+&lt;li>If the API of the transform is not yet stable, annotate it as &lt;code>@Experimental&lt;/code> (Java) or &lt;code>@experimental&lt;/code> (&lt;a href="https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.utils.annotations.html">Python&lt;/a>).&lt;/li>
+&lt;li>If the API deprecated, annotate it as &lt;code>@Deprecated&lt;/code> (Java) or &lt;code>@deprecated&lt;/code> (&lt;a href="https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.utils.annotations.html">Python&lt;/a>).&lt;/li>
 &lt;li>Pay attention to the stability and versioning of third-party classes exposed by the transform&amp;rsquo;s API: if they are unstable or improperly versioned (do not obey &lt;a href="https://semver.org/">semantic versioning&lt;/a>), it is better to wrap them in your own classes.&lt;/li>
 &lt;/ul>
 &lt;p>Do not:&lt;/p>
diff --git a/website/generated-content/contribute/ptransform-style-guide/index.html b/website/generated-content/contribute/ptransform-style-guide/index.html
index 7c028aca410..baa0d7a9891 100644
--- a/website/generated-content/contribute/ptransform-style-guide/index.html
+++ b/website/generated-content/contribute/ptransform-style-guide/index.html
@@ -33,7 +33,7 @@ One advantage of putting a parameter into transform configuration is, it can be
 <code>catch(...) { log an error; return null or false or otherwise ignore; }</code>
 <strong>Rule of thumb: if a bundle didn&rsquo;t fail, its output must be correct and complete.</strong>
 For a user, a transform that logged an error but succeeded is silent data loss.</li></ul><h3 id=performance>Performance</h3><p>Many runners optimize chains of <code>ParDo</code>s in ways that improve performance if the <code>ParDo</code>s emit a small to moderate number of elements per input element, or have relatively cheap per-element processing (e.g. Dataflow&rsquo;s &ldquo;fusion&rdquo;), but limit parallelization if these assumptions are violated. In that case you may need a &ldquo; [...]
-E.g. when expanding a filepattern into files, log what the filepattern was and how many parts it was split into; when executing a query, log the query and log how many results it produced.</li></ul><p>Do not:</p><ul><li>Do not log at <code>INFO</code> per element or per bundle. <code>DEBUG</code>/<code>TRACE</code> may be okay because these levels are disabled by default.</li><li>Avoid logging data payloads that may contain sensitive information, or sanitize them before logging (e.g. use [...]
+E.g. when expanding a filepattern into files, log what the filepattern was and how many parts it was split into; when executing a query, log the query and log how many results it produced.</li></ul><p>Do not:</p><ul><li>Do not log at <code>INFO</code> per element or per bundle. <code>DEBUG</code>/<code>TRACE</code> may be okay because these levels are disabled by default.</li><li>Avoid logging data payloads that may contain sensitive information, or sanitize them before logging (e.g. use [...]
 Strive to make such incompatible behavior changes cause a compile error (e.g. it&rsquo;s better to introduce a new transform for a new behavior and deprecate and then delete the old one (in a new major version), than to silently change the behavior of an existing transform), or at least a runtime error.</li><li>If the behavior of the transform stays the same and you&rsquo;re merely changing implementation or API - do not change API of the transform in a way that will make a user&rsquo;s  [...]
   <span class=kd>private</span> <span class=kd>final</span> <span class=n>TupleTag</span><span class=o>&lt;</span><span class=n>Moo</span><span class=o>&gt;</span> <span class=n>mooTag</span> <span class=o>=</span> <span class=k>new</span> <span class=n>TupleTag</span><span class=o>&lt;</span><span class=n>Moo</span><span class=o>&gt;()</span> <span class=o>{};</span>
   <span class=kd>private</span> <span class=kd>final</span> <span class=n>TupleTag</span><span class=o>&lt;</span><span class=n>Blah</span><span class=o>&gt;</span> <span class=n>blahTag</span> <span class=o>=</span> <span class=k>new</span> <span class=n>TupleTag</span><span class=o>&lt;</span><span class=n>Blah</span><span class=o>&gt;()</span> <span class=o>{};</span>
diff --git a/website/generated-content/documentation/dsls/dataframes/differences-from-pandas/index.html b/website/generated-content/documentation/dsls/dataframes/differences-from-pandas/index.html
index 6850be3afb2..e6d67c388b8 100644
--- a/website/generated-content/documentation/dsls/dataframes/differences-from-pandas/index.html
+++ b/website/generated-content/documentation/dsls/dataframes/differences-from-pandas/index.html
@@ -19,27 +19,27 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
-</code></pre><p>This is similar to pandas <a href=https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.read_csv.html>read_csv</a>, but <code>df</code> is a deferred Beam DataFrame representing the contents of the file. The input filename can be any file pattern understood by <a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.fileio.html#apache_beam.io.fileio.MatchFiles>fileio.MatchFiles</a>.</p><p>For an example of using sources and sinks with the DataFrame [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+</code></pre><p>This is similar to pandas <a href=https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.read_csv.html>read_csv</a>, but <code>df</code> is a deferred Beam DataFrame representing the contents of the file. The input filename can be any file pattern understood by <a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.fileio.html#apache_beam.io.fileio.MatchFiles>fileio.MatchFiles</a>.</p><p>For an example of using sources and sinks with the DataFrame [...]
 <a href=https://beam.apache.org/releases/pydoc/current/apache_beam.dataframe.frames.html#apache_beam.dataframe.frames.DeferredDataFrame.quantile><code>DeferredDataFrame.quantile</code></a>,
-<a href=https://beam.apache.org/releases/pydoc/current/apache_beam.dataframe.frames.html#apache_beam.dataframe.frames.DeferredDataFrame.mode><code>DeferredDataFrame.mode</code></a></p><p>To support distributed processing, Beam invokes DataFrame operations on subsets of data in parallel. Some DataFrame operations can’t be parallelized, and these operations raise a <a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.dataframe.expressions.html#apache_beam.dataframe.expressions [...]
+<a href=https://beam.apache.org/releases/pydoc/current/apache_beam.dataframe.frames.html#apache_beam.dataframe.frames.DeferredDataFrame.mode><code>DeferredDataFrame.mode</code></a></p><p>To support distributed processing, Beam invokes DataFrame operations on subsets of data in parallel. Some DataFrame operations can’t be parallelized, and these operations raise a <a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.dataframe.expressions.html#apache_beam.dataframe.expressions [...]
 
 with dataframe.allow_non_parallel_operations():
   quantiles = df.quantile()
 </code></pre><p>Note that this collects the entire input dataset on a single node, so there’s a risk of running out of memory. You should only use this workaround if you’re sure that the input is small enough to process on a single worker.</p><h3 id=operations-that-produce-non-deferred-columns>Operations that produce non-deferred columns</h3><p>Examples:
 <a href=https://beam.apache.org/releases/pydoc/current/apache_beam.dataframe.frames.html#apache_beam.dataframe.frames.DeferredDataFrame.pivot><code>DeferredDataFrame.pivot</code></a>,
 <a href=https://beam.apache.org/releases/pydoc/current/apache_beam.dataframe.frames.html#apache_beam.dataframe.frames.DeferredDataFrame.transpose><code>DeferredDataFrame.transpose</code></a>,
-<a href=https://beam.apache.org/releases/pydoc/current/apache_beam.dataframe.frames.html#apache_beam.dataframe.frames.DeferredSeries.factorize><code>DeferredSeries.factorize</code></a></p><p>Beam DataFrame operations are deferred, but the schemas of the resulting DataFrames are not, meaning that result columns must be computable without access to the data. Some DataFrame operations can’t support this usage, so they can’t be implemented. These operations raise a <a href=https://beam.apach [...]
+<a href=https://beam.apache.org/releases/pydoc/current/apache_beam.dataframe.frames.html#apache_beam.dataframe.frames.DeferredSeries.factorize><code>DeferredSeries.factorize</code></a></p><p>Beam DataFrame operations are deferred, but the schemas of the resulting DataFrames are not, meaning that result columns must be computable without access to the data. Some DataFrame operations can’t support this usage, so they can’t be implemented. These operations raise a <a href=https://beam.apach [...]
 <a href=https://beam.apache.org/releases/pydoc/current/apache_beam.dataframe.frames.html#apache_beam.dataframe.frames.DeferredSeries.to_list><code>DeferredSeries.to_list</code></a>,
 <a href=https://beam.apache.org/releases/pydoc/current/apache_beam.dataframe.frames.html#apache_beam.dataframe.frames.DeferredSeries.array><code>DeferredSeries.array</code></a>,
-<a href=https://beam.apache.org/releases/pydoc/current/apache_beam.dataframe.frames.html#apache_beam.dataframe.frames.DeferredDataFrame.plot><code>DeferredDataFrame.plot</code></a></p><p>It’s infeasible to implement DataFrame operations that produce non-deferred values or plots because Beam is a deferred API. If these operations are invoked, they will raise a <a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.dataframe.frame_base.html#apache_beam.dataframe.frame_base.WontI [...]
+<a href=https://beam.apache.org/releases/pydoc/current/apache_beam.dataframe.frames.html#apache_beam.dataframe.frames.DeferredDataFrame.plot><code>DeferredDataFrame.plot</code></a></p><p>It’s infeasible to implement DataFrame operations that produce non-deferred values or plots because Beam is a deferred API. If these operations are invoked, they will raise a <a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.dataframe.frame_base.html#apache_beam.dataframe.frame_base.WontI [...]
 with Interactive Beam. To track progress on this issue, follow
 <a href=https://github.com/apache/beam/issues/21638>Issue 21638</a>. If you think we
 should prioritize this work you can also <a href=https://beam.apache.org/community/contact-us/>contact
-us</a> to let us know.</p><p><strong>Workaround</strong></p><p>If you’re using <a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.runners.interactive.interactive_beam.html>Interactive Beam</a>, you can use <code>collect</code> to bring a dataset into local memory and then perform these operations.</p><h3 id=order-sensitive-operations>Order-sensitive operations</h3><p>Examples:
+us</a> to let us know.</p><p><strong>Workaround</strong></p><p>If you’re using <a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.runners.interactive.interactive_beam.html>Interactive Beam</a>, you can use <code>collect</code> to bring a dataset into local memory and then perform these operations.</p><h3 id=order-sensitive-operations>Order-sensitive operations</h3><p>Examples:
 <a href=https://beam.apache.org/releases/pydoc/current/apache_beam.dataframe.frames.html#apache_beam.dataframe.frames.DeferredDataFrame.head><code>DeferredDataFrame.head</code></a>,
 <a href=https://beam.apache.org/releases/pydoc/current/apache_beam.dataframe.frames.html#apache_beam.dataframe.frames.DeferredSeries.diff><code>DeferredSeries.diff</code></a>,
-<a href=https://beam.apache.org/releases/pydoc/current/apache_beam.dataframe.frames.html#apache_beam.dataframe.frames.DeferredDataFrame.interpolate><code>DeferredDataFrame.interpolate</code></a></p><p>Beam PCollections are inherently unordered, so pandas operations that are sensitive to the ordering of rows are not supported. These operations raise a <a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.dataframe.frame_base.html#apache_beam.dataframe.frame_base.WontImplementE [...]
+<a href=https://beam.apache.org/releases/pydoc/current/apache_beam.dataframe.frames.html#apache_beam.dataframe.frames.DeferredDataFrame.interpolate><code>DeferredDataFrame.interpolate</code></a></p><p>Beam PCollections are inherently unordered, so pandas operations that are sensitive to the ordering of rows are not supported. These operations raise a <a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.dataframe.frame_base.html#apache_beam.dataframe.frame_base.WontImplementE [...]
 Run in Colab</a></td></table><p><br><br><br><br></p><p>To get started with Beam in a notebook, see <a href=https://beam.apache.org/get-started/try-apache-beam/>Try Apache Beam</a>.</p></div></div><footer class=footer><div class=footer__contained><div class=footer__cols><div class="footer__cols__col footer__cols__col__logos"><div class=footer__cols__col__logo><img src=/images/beam_logo_circle.svg class=footer__logo alt="Beam logo"></div><div class=footer__cols__col__logo><img src=/images/ [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
diff --git a/website/generated-content/documentation/dsls/dataframes/overview/index.html b/website/generated-content/documentation/dsls/dataframes/overview/index.html
index d030177a0b3..840faafb260 100644
--- a/website/generated-content/documentation/dsls/dataframes/overview/index.html
+++ b/website/generated-content/documentation/dsls/dataframes/overview/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 Run in Colab</a></td></table><p><br><br><br><br></p><p>The Apache Beam Python SDK provides a DataFrame API for working with pandas-like <a href=https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.html>DataFrame</a> objects. The feature lets you convert a PCollection to a DataFrame and then interact with the DataFrame using the standard methods available on the pandas DataFrame API. The DataFrame API is built on top of the pandas implementation, and pandas DataFram [...]
 </code></pre><p>Note that the <em>same</em> <code>pandas</code> version should be installed on workers when executing DataFrame API pipelines on distributed runners. Reference <a href=https://github.com/apache/beam/blob/master/sdks/python/container/py38/base_image_requirements.txt><code>base_image_requirements.txt</code></a> for the Python version and Beam release you are using to see what version of <code>pandas</code> will be used by default on workers.</p><h2 id=using-dataframes>Using [...]
 
diff --git a/website/generated-content/documentation/dsls/sql/calcite/aggregate-functions/index.html b/website/generated-content/documentation/dsls/sql/calcite/aggregate-functions/index.html
index 19401e2ad4d..9bbbc394007 100644
--- a/website/generated-content/documentation/dsls/sql/calcite/aggregate-functions/index.html
+++ b/website/generated-content/documentation/dsls/sql/calcite/aggregate-functions/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
 | <a href=/feed.xml>RSS Feed</a><br><br>Apache Beam, Apache, Beam, the Beam logo, and the Apache feather logo are either registered trademarks or trademarks of The Apache Software Foundation. All other products or name brands are trademarks of their respective holders, including The Apache Software Foundation.</div></div><div class="footer__cols__col footer__cols__col__logos"><div class=footer__cols__col--group><div class=footer__cols__col__logo><a href=https://github.com/apache/beam><im [...]
\ No newline at end of file
diff --git a/website/generated-content/documentation/dsls/sql/calcite/data-types/index.html b/website/generated-content/documentation/dsls/sql/calcite/data-types/index.html
index da33db23763..f94fb12adce 100644
--- a/website/generated-content/documentation/dsls/sql/calcite/data-types/index.html
+++ b/website/generated-content/documentation/dsls/sql/calcite/data-types/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 including arrays, maps, and nested rows. This page documents supported
 <a href=https://calcite.apache.org/docs/reference.html#data-types>Apache Calcite data types</a> supported by Beam Calcite SQL.</p><p>In Java, these types are mapped to Java types large enough to hold the
 full range of values.</p><div class=table-wrapper><table><thead><tr><th>SQL Type</th><th>Description</th><th>Java class</th></tr></thead><tbody><tr><td>TINYINT</td><td>1 byte signed integer in range -128 to 127</td><td>java.lang.Byte</td></tr><tr><td>SMALLINT</td><td>2 byte signed integer in range -32768 to 32767</td><td>java.lang.Short</td></tr><tr><td>INTEGER</td><td>4 byte signed integer in range -2147483648 to 2147483647</td><td>java.lang.Integer</td></tr><tr><td>BIGINT</td><td>8 byt [...]
diff --git a/website/generated-content/documentation/dsls/sql/calcite/lexical-structure/index.html b/website/generated-content/documentation/dsls/sql/calcite/lexical-structure/index.html
index fe49884888b..380695c2318 100644
--- a/website/generated-content/documentation/dsls/sql/calcite/lexical-structure/index.html
+++ b/website/generated-content/documentation/dsls/sql/calcite/lexical-structure/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 <em>identifiers,</em> <em>quoted identifiers, literals</em>, <em>keywords</em>, <em>operators</em>,
 and <em>special characters</em>. Tokens can be separated by whitespace (space,
 backspace, tab, newline) or comments.</p><h2 id=identifiers>Identifiers</h2><p>Identifiers are names that are associated with columns, tables, and
diff --git a/website/generated-content/documentation/dsls/sql/calcite/overview/index.html b/website/generated-content/documentation/dsls/sql/calcite/overview/index.html
index a74905e4038..1a8e8cf2b3e 100644
--- a/website/generated-content/documentation/dsls/sql/calcite/overview/index.html
+++ b/website/generated-content/documentation/dsls/sql/calcite/overview/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 big data processing with some streaming enhancements. Beam Calcite SQL is the default Beam SQL dialect.</p><p>Beam SQL has additional extensions leveraging Beam’s unified batch/streaming model and processing complex data types. You can use these extensions with all Beam SQL dialects, including Beam Calcite SQL.</p><h2 id=query-syntax>Query syntax</h2><p>Query statements scan one or more tables or expressions and return the computed result rows. For more information about query statements [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
diff --git a/website/generated-content/documentation/dsls/sql/calcite/query-syntax/index.html b/website/generated-content/documentation/dsls/sql/calcite/query-syntax/index.html
index 51c96c66f75..954c49da47c 100644
--- a/website/generated-content/documentation/dsls/sql/calcite/query-syntax/index.html
+++ b/website/generated-content/documentation/dsls/sql/calcite/query-syntax/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 result rows.</p><p>Generally, the semantics of queries is standard. See the following
 sections to learn about extensions for supporting Beam&rsquo;s unified
 batch/streaming model:</p><ul><li><a href=/documentation/dsls/sql/extensions/joins>Joins</a></li><li><a href=/documentation/dsls/sql/windowing-and-triggering/>Windowing & Triggering</a></li></ul><p>The main functionality of Beam SQL is the <code>SELECT</code> statement. This is how you
diff --git a/website/generated-content/documentation/dsls/sql/calcite/scalar-functions/index.html b/website/generated-content/documentation/dsls/sql/calcite/scalar-functions/index.html
index 19f5df977ed..504043d99a4 100644
--- a/website/generated-content/documentation/dsls/sql/calcite/scalar-functions/index.html
+++ b/website/generated-content/documentation/dsls/sql/calcite/scalar-functions/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
 | <a href=/feed.xml>RSS Feed</a><br><br>Apache Beam, Apache, Beam, the Beam logo, and the Apache feather logo are either registered trademarks or trademarks of The Apache Software Foundation. All other products or name brands are trademarks of their respective holders, including The Apache Software Foundation.</div></div><div class="footer__cols__col footer__cols__col__logos"><div class=footer__cols__col--group><div class=footer__cols__col__logo><a href=https://github.com/apache/beam><im [...]
\ No newline at end of file
diff --git a/website/generated-content/documentation/dsls/sql/extensions/create-external-table/index.html b/website/generated-content/documentation/dsls/sql/extensions/create-external-table/index.html
index 74fbe639069..cc537b44999 100644
--- a/website/generated-content/documentation/dsls/sql/extensions/create-external-table/index.html
+++ b/website/generated-content/documentation/dsls/sql/extensions/create-external-table/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 <a href=/documentation/io/built-in/>external storage system</a>.
 For some storage systems, <code>CREATE EXTERNAL TABLE</code> does not create a physical table until
 a write occurs. After the physical table exists, you can access the table with
diff --git a/website/generated-content/documentation/dsls/sql/extensions/joins/index.html b/website/generated-content/documentation/dsls/sql/extensions/joins/index.html
index 5e10db76e3a..7674964a809 100644
--- a/website/generated-content/documentation/dsls/sql/extensions/joins/index.html
+++ b/website/generated-content/documentation/dsls/sql/extensions/joins/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 with all elements from another input. Due to the fact that both inputs are
 bounded, no windowing or triggering is involved.</p><h2 id=join-unbounded-unbounded>Unbounded JOIN Unbounded</h2><p>Standard join implementation is used. All elements from one input are matched
 with all elements from another input.</p><p><strong>Windowing and Triggering</strong></p><p>The following properties must be satisfied when joining unbounded inputs:</p><ul><li>Inputs must have compatible windows, otherwise <code>IllegalArgumentException</code>
diff --git a/website/generated-content/documentation/dsls/sql/extensions/set/index.html b/website/generated-content/documentation/dsls/sql/extensions/set/index.html
index 64307a631ef..4bf2e343a06 100644
--- a/website/generated-content/documentation/dsls/sql/extensions/set/index.html
+++ b/website/generated-content/documentation/dsls/sql/extensions/set/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 Options</a>
 via the SQL shell. These are the same Pipeline Options passed to other Beam
 applications on the command line in the <code>--&lt;option>=&lt;value></code> format.</p><h2 id=syntax>Syntax</h2><pre><code>SET option = value
diff --git a/website/generated-content/documentation/dsls/sql/extensions/user-defined-functions/index.html b/website/generated-content/documentation/dsls/sql/extensions/user-defined-functions/index.html
index a2bb6249274..34e51e84b3b 100644
--- a/website/generated-content/documentation/dsls/sql/extensions/user-defined-functions/index.html
+++ b/website/generated-content/documentation/dsls/sql/extensions/user-defined-functions/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 needs, they can be authored in Java and invoked in your SQL query. These
 are commonly called UDF (for scalar functions) and UDAFs (for aggregate functions).</p><h2 id=create-and-specify-a-user-defined-function-udf>Create and specify a User Defined Function (UDF)</h2><p>A UDF can be the following:</p><ul><li>Any Java method that takes zero or more scalar fields and
 returns one scalar value.</li><li>A <code>SerializableFunction</code>.</li></ul><p>Below is an example of UDF and how to use it in DSL:</p><div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code class=language-java data-lang=java><span class=cm>/**
diff --git a/website/generated-content/documentation/dsls/sql/extensions/windowing-and-triggering/index.html b/website/generated-content/documentation/dsls/sql/extensions/windowing-and-triggering/index.html
index 1b10c574391..827a2c8be38 100644
--- a/website/generated-content/documentation/dsls/sql/extensions/windowing-and-triggering/index.html
+++ b/website/generated-content/documentation/dsls/sql/extensions/windowing-and-triggering/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 to a <code>BeamSql</code> transform</li><li>you can use windowing extensions in your windowing query, which will override
 the windowing of your input <code>PCollections</code></li></ul><p>Triggering can only be used by setting it on your input <code>PCollections</code>; there
 are no SQL extensions for specifying triggering.</p><p>This section covers the use of SQL extensions to directly apply windowing.</p><p>Beam SQL supports windowing functions specified in <code>GROUP BY</code> clause.
diff --git a/website/generated-content/documentation/dsls/sql/overview/index.html b/website/generated-content/documentation/dsls/sql/overview/index.html
index af4da2328f7..67e7d1cf48a 100644
--- a/website/generated-content/documentation/dsls/sql/overview/index.html
+++ b/website/generated-content/documentation/dsls/sql/overview/index.html
@@ -19,11 +19,11 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 bounded and unbounded <code>PCollections</code> with SQL statements. Your SQL query
 is translated to a <code>PTransform</code>, an encapsulated segment of a Beam pipeline.
 You can freely mix SQL <code>PTransforms</code> and other <code>PTransforms</code> in your pipeline.</p><p>Beam SQL includes the following dialects:</p><ul><li><a href=https://calcite.apache.org>Beam Calcite SQL</a></li><li><a href=https://github.com/google/zetasql>Beam ZetaSQL</a></li></ul><p>Beam Calcite SQL is a variant of Apache Calcite, a dialect widespread in
-big data processing. Beam Calcite SQL is the default Beam SQL dialect. Beam ZetaSQL is more compatible with BigQuery, so it&rsquo;s especially useful in pipelines that <a href=https://beam.apache.org/releases/javadoc/current/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.html>write to or read from BigQuery tables</a>.</p><p>To change dialects, pass <a href=https://beam.apache.org/releases/javadoc/current/org/apache/beam/sdk/extensions/sql/package-summary.html>the dialect&rsquo;s full pac [...]
+big data processing. Beam Calcite SQL is the default Beam SQL dialect. Beam ZetaSQL is more compatible with BigQuery, so it&rsquo;s especially useful in pipelines that <a href=https://beam.apache.org/releases/javadoc/current/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.html>write to or read from BigQuery tables</a>.</p><p>To change dialects, pass <a href=https://beam.apache.org/releases/javadoc/current/org/apache/beam/sdk/extensions/sql/package-summary.html>the dialect&rsquo;s full pac [...]
 the type of elements that Beam SQL operates on. A <code>PCollection&lt;Row></code> plays the role of a table.</li></ul><h2 id=walkthrough>Walkthrough</h2><p>The <a href=/documentation/dsls/sql/walkthrough>SQL pipeline walkthrough</a> works through how to use Beam SQL with example code.</p><h2 id=shell>Shell</h2><p>The Beam SQL shell allows you to write pipelines as SQL queries without using the Java SDK.
 The <a href=/documentation/dsls/sql/shell>Shell page</a> describes how to work with the interactive Beam SQL shell.</p><h2 id=apache-calcite-dialect>Apache Calcite dialect</h2><p>The <a href=/documentation/dsls/sql/calcite/overview>Beam Calcite SQL overview</a> summarizes Apache Calcite operators,
 functions, syntax, and data types supported by Beam Calcite SQL.</p><h2 id=zetasql-dialect>ZetaSQL dialect</h2><p>For more information on the ZetaSQL features in Beam SQL, see the <a href=/documentation/dsls/sql/zetasql/overview>Beam ZetaSQL dialect reference</a>.</p><p>To switch to Beam ZetaSQL, configure the <a href=https://beam.apache.org/releases/javadoc/2.15.0/org/apache/beam/sdk/options/PipelineOptions.html>pipeline options</a> as follows:</p><pre><code>PipelineOptions options = ...;
diff --git a/website/generated-content/documentation/dsls/sql/shell/index.html b/website/generated-content/documentation/dsls/sql/shell/index.html
index ee77afaaa0d..eea8e3d39ac 100644
--- a/website/generated-content/documentation/dsls/sql/shell/index.html
+++ b/website/generated-content/documentation/dsls/sql/shell/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 
 ./sdks/java/extensions/sql/shell/build/install/shell/bin/shell
 </code></pre><p>After you run the commands, the SQL shell starts and you can type queries:</p><pre><code>Welcome to Beam SQL 2.6.0-SNAPSHOT (based on sqlline version 1.4.0)
diff --git a/website/generated-content/documentation/dsls/sql/walkthrough/index.html b/website/generated-content/documentation/dsls/sql/walkthrough/index.html
index e218f49e0c9..0b1e3af37c3 100644
--- a/website/generated-content/documentation/dsls/sql/walkthrough/index.html
+++ b/website/generated-content/documentation/dsls/sql/walkthrough/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 where <code>T</code> has a schema registered, or a <code>PCollection&lt;Row></code>. See the
 <a href=/documentation/programming-guide/#what-is-a-schema>schema documentation</a> in
 the Beam Programming Guide for details on registering a schema for a type <code>T</code>.</p><p>If you don&rsquo;t have an existing type <code>T</code>, a <code>PCollection&lt;Row></code> can be obtained
@@ -80,7 +80,7 @@ multiple ways, for example:</p><ul><li><p><strong>From in-memory data</strong> (
 </span><span class=c1></span>              <span class=n>c</span><span class=o>.</span><span class=na>output</span><span class=o>(</span><span class=n>appRow</span><span class=o>);</span>
             <span class=o>}</span>
           <span class=o>})).</span><span class=na>setRowSchema</span><span class=o>(</span><span class=n>appSchema</span><span class=o>);</span>
-    </code></pre></div></div></div></p></li><li><p><strong>As an output of another <code>SqlTransform</code></strong>. Details in the next section.</p></li></ul><p>Once you have a <code>PCollection&lt;Row></code> in hand, you may use <code>SqlTransform</code> to apply SQL queries to it.</p><h2 id=sqltransform>SqlTransform</h2><p><a href=https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/extensions/sql/SqlTransform.html><code>SqlTransform.query(queryString)</co [...]
+    </code></pre></div></div></div></p></li><li><p><strong>As an output of another <code>SqlTransform</code></strong>. Details in the next section.</p></li></ul><p>Once you have a <code>PCollection&lt;Row></code> in hand, you may use <code>SqlTransform</code> to apply SQL queries to it.</p><h2 id=sqltransform>SqlTransform</h2><p><a href=https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/extensions/sql/SqlTransform.html><code>SqlTransform.query(queryString)</co [...]
 from a string representation of the SQL query. You can apply this <code>PTransform</code>
 to either a single <code>PCollection</code> or a <code>PCollectionTuple</code> which holds multiple
 <code>PCollections</code>:</p><ul><li><p>when applying to a single <code>PCollection</code> it can be referenced via the table name <code>PCOLLECTION</code> in the query:<div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code class=language-java data-lang=java>    <span class=n>PCollection</s [...]
diff --git a/website/generated-content/documentation/dsls/sql/zetasql/aggregate-functions/index.html b/website/generated-content/documentation/dsls/sql/zetasql/aggregate-functions/index.html
index f2cf229b418..d2c22be636e 100644
--- a/website/generated-content/documentation/dsls/sql/zetasql/aggregate-functions/index.html
+++ b/website/generated-content/documentation/dsls/sql/zetasql/aggregate-functions/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 </code></pre><p><strong>Description</strong></p><p>Returns the average of non-<code>NULL</code> input values.</p><p><strong>Supported Argument Types</strong></p><p>FLOAT64. Note that, for floating point input types, the return result
 is non-deterministic, which means you might receive a different result each time
 you use this function.</p><p><strong>Returned Data Types</strong></p><ul><li>FLOAT64</li></ul><p><strong>Examples</strong></p><pre><code>SELECT AVG(x) as avg
diff --git a/website/generated-content/documentation/dsls/sql/zetasql/conditional-expressions/index.html b/website/generated-content/documentation/dsls/sql/zetasql/conditional-expressions/index.html
index 0a7ab371762..899d7681e18 100644
--- a/website/generated-content/documentation/dsls/sql/zetasql/conditional-expressions/index.html
+++ b/website/generated-content/documentation/dsls/sql/zetasql/conditional-expressions/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
   WHEN value THEN result
   [WHEN ...]
   [ELSE else_result]
diff --git a/website/generated-content/documentation/dsls/sql/zetasql/conversion-rules/index.html b/website/generated-content/documentation/dsls/sql/zetasql/conversion-rules/index.html
index f366700a825..dcd1f253e31 100644
--- a/website/generated-content/documentation/dsls/sql/zetasql/conversion-rules/index.html
+++ b/website/generated-content/documentation/dsls/sql/zetasql/conversion-rules/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 automatically under the conditions described below.</li></ul><p>The table below summarizes all possible <code>CAST</code>s and coercions. &ldquo;Coercion To&rdquo; applies to all <em>expressions</em> of a given data type (e.g. a column).</p><div class=table-wrapper><table><thead><tr><th>From Type</th><th>CAST to</th><th>Coercion To</th></tr></thead><tbody><tr><td>INT64</td><td><span>INT64</span><br><span>FLOAT64</span><br><span>STRING</span><br></td><td><span>FLOAT64</span><br></td></tr> [...]
 </code></pre><p>Cast syntax is used in a query to indicate that the result type of an
 expression should be converted to some other type.</p><p>Example:</p><pre><code>CAST(x=1 AS STRING)
diff --git a/website/generated-content/documentation/dsls/sql/zetasql/data-types/index.html b/website/generated-content/documentation/dsls/sql/zetasql/data-types/index.html
index 1d7bad427b4..2cd8ab9143c 100644
--- a/website/generated-content/documentation/dsls/sql/zetasql/data-types/index.html
+++ b/website/generated-content/documentation/dsls/sql/zetasql/data-types/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 each property applies to:</p><div class=table-wrapper><table><thead><tr><th>Property</th><th>Description</th><th>Applies To</th></tr></thead><tbody><tr><td>Nullable</td><td nowrap><code>NULL</code> is a valid value.</td><td>All data types, with the following exceptions:<ul><li>ARRAYs cannot be <code>NULL</code>.</li><li><code>NULL ARRAY</code> elements cannot persist to a table.</li><li>Queries cannot handle <code>NULL ARRAY</code> elements.</li></ul></td></tr><tr><td>Orderable</td><td n [...]
 Field names are ignored. Less than and greater than comparisons are not
 supported.</p><p><br><br><br><br>All types that support comparisons
diff --git a/website/generated-content/documentation/dsls/sql/zetasql/lexical/index.html b/website/generated-content/documentation/dsls/sql/zetasql/lexical/index.html
index 458faf47b82..fb1fa34dd7b 100644
--- a/website/generated-content/documentation/dsls/sql/zetasql/lexical/index.html
+++ b/website/generated-content/documentation/dsls/sql/zetasql/lexical/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 <em>identifiers,</em> <em>quoted identifiers, literals</em>, <em>keywords</em>, <em>operators</em>, and
 <em>special characters</em>. Tokens can be separated by whitespace (space, backspace,
 tab, newline) or comments.</p><p><a id=identifiers></a></p><h2 id=identifiers>Identifiers</h2><p>Identifiers are names that are associated with columns, tables, and other
diff --git a/website/generated-content/documentation/dsls/sql/zetasql/math-functions/index.html b/website/generated-content/documentation/dsls/sql/zetasql/math-functions/index.html
index 7aa10d6c21a..e1b594879e2 100644
--- a/website/generated-content/documentation/dsls/sql/zetasql/math-functions/index.html
+++ b/website/generated-content/documentation/dsls/sql/zetasql/math-functions/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 </code></pre><p><strong>Description</strong></p><p>Modulo function: returns the remainder of the division of X by Y. Returned value
 has the same sign as X.</p><h2 id=ceil>CEIL</h2><pre><code>CEIL(X)
 </code></pre><p><strong>Description</strong></p><p>Returns the smallest integral value (with FLOAT64
diff --git a/website/generated-content/documentation/dsls/sql/zetasql/operators/index.html b/website/generated-content/documentation/dsls/sql/zetasql/operators/index.html
index 29a41a49b97..844685d5576 100644
--- a/website/generated-content/documentation/dsls/sql/zetasql/operators/index.html
+++ b/website/generated-content/documentation/dsls/sql/zetasql/operators/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 function call syntax. An operator manipulates any number of data inputs, also
 called operands, and returns a result.</p><p>Common conventions:</p><ul><li>Unless otherwise specified, all operators return <code>NULL</code> when one of the
 operands is <code>NULL</code>.</li></ul><p>The following table lists all supported operators from highest to
diff --git a/website/generated-content/documentation/dsls/sql/zetasql/overview/index.html b/website/generated-content/documentation/dsls/sql/zetasql/overview/index.html
index 21c0a906f68..7a1cc073dc9 100644
--- a/website/generated-content/documentation/dsls/sql/zetasql/overview/index.html
+++ b/website/generated-content/documentation/dsls/sql/zetasql/overview/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
 | <a href=/feed.xml>RSS Feed</a><br><br>Apache Beam, Apache, Beam, the Beam logo, and the Apache feather logo are either registered trademarks or trademarks of The Apache Software Foundation. All other products or name brands are trademarks of their respective holders, including The Apache Software Foundation.</div></div><div class="footer__cols__col footer__cols__col__logos"><div class=footer__cols__col--group><div class=footer__cols__col__logo><a href=https://github.com/apache/beam><im [...]
\ No newline at end of file
diff --git a/website/generated-content/documentation/dsls/sql/zetasql/query-syntax/index.html b/website/generated-content/documentation/dsls/sql/zetasql/query-syntax/index.html
index 6f6a36783c9..8e4d33c47f9 100644
--- a/website/generated-content/documentation/dsls/sql/zetasql/query-syntax/index.html
+++ b/website/generated-content/documentation/dsls/sql/zetasql/query-syntax/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 the computed result rows.</p><h2 id=sql-syntax>SQL Syntax</h2><pre>
 <span class=var>query_statement</span>:
     <span class=var>query_expr</span>
diff --git a/website/generated-content/documentation/dsls/sql/zetasql/string-functions/index.html b/website/generated-content/documentation/dsls/sql/zetasql/string-functions/index.html
index 9930dfadd14..2f107ec11b4 100644
--- a/website/generated-content/documentation/dsls/sql/zetasql/string-functions/index.html
+++ b/website/generated-content/documentation/dsls/sql/zetasql/string-functions/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 canonical equivalence.</p><div class=table-wrapper><table><thead><tr><th>Operator syntax</th><th>Description</th></tr></thead><tbody><tr><td><a href=#char_length>CHAR_LENGTH(value)</a></td><td>Returns the length of the string in characters</td></tr><tr><td><a href=#character_length>CHARACTER_LENGTH(value)</a></td><td>Synonym for CHAR_LENGTH</td></tr><tr><td><a href=#concat>CONCAT(value1[, &mldr;])</a></td><td>Concatenates up to five values into a single result</td></tr><tr><td><a href=#e [...]
 </code></pre><p><strong>Description</strong></p><p>Returns the length of the STRING in characters.</p><p><strong>Return type</strong></p><p>INT64</p><p><strong>Examples</strong></p><pre><code>
 Table example:
diff --git a/website/generated-content/documentation/dsls/sql/zetasql/syntax/index.html b/website/generated-content/documentation/dsls/sql/zetasql/syntax/index.html
index c561aa02278..7b2b24c6336 100644
--- a/website/generated-content/documentation/dsls/sql/zetasql/syntax/index.html
+++ b/website/generated-content/documentation/dsls/sql/zetasql/syntax/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 operand and the other operand is another numeric type, both operands are
 converted to FLOAT64 before the function is
 evaluated.</p></li><li><p>If an operand is <code>NULL</code>, the result is <code>NULL</code>, with the exception of the
diff --git a/website/generated-content/documentation/index.xml b/website/generated-content/documentation/index.xml
index 587db2b5664..b36fc5b5ebf 100644
--- a/website/generated-content/documentation/index.xml
+++ b/website/generated-content/documentation/index.xml
@@ -716,7 +716,7 @@ the implementation of your custom I/O depends on your use case. Before you
 start, read the &lt;a href="/documentation/io/developing-io-overview/">new I/O connector overview&lt;/a>
 for an overview of developing a new I/O connector, the available implementation
 options, and how to choose the right option for your use case.&lt;/p>
-&lt;p>This guide covers using the &lt;a href="https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.iobase.html">Source and FileBasedSink interfaces&lt;/a>
+&lt;p>This guide covers using the &lt;a href="https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.iobase.html">Source and FileBasedSink interfaces&lt;/a>
 for Python. The Java SDK offers the same functionality, but uses a slightly
 different API. See &lt;a href="/documentation/io/developing-io-java/">Developing I/O connectors for Java&lt;/a>
 for information specific to the Java SDK.&lt;/p>
@@ -769,7 +769,7 @@ why you should avoid exposing your sources, and walks through how to create
 a wrapper.&lt;/li>
 &lt;/ul>
 &lt;p>You can find these classes in the
-&lt;a href="https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.iobase.html">apache_beam.io.iobase module&lt;/a>.&lt;/p>
+&lt;a href="https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.iobase.html">apache_beam.io.iobase module&lt;/a>.&lt;/p>
 &lt;h3 id="implementing-the-boundedsource-subclass">Implementing the BoundedSource subclass&lt;/h3>
 &lt;p>&lt;code>BoundedSource&lt;/code> represents a finite data set from which the service reads, possibly in parallel. &lt;code>BoundedSource&lt;/code> contains a set of methods that the service uses to split the data set for reading by multiple remote workers.&lt;/p>
 &lt;p>To implement a &lt;code>BoundedSource&lt;/code>, your subclass must override the following methods:&lt;/p>
@@ -916,7 +916,7 @@ demonstrated in the example above. Use a wrapping &lt;code>PTransform&lt;/code>
 &lt;a href="#ptransform-wrappers">PTransform wrappers&lt;/a> discusses why you should avoid
 exposing your sources, and walks through how to create a wrapper.&lt;/p>
 &lt;h2 id="using-the-filebasedsink-abstraction">Using the FileBasedSink abstraction&lt;/h2>
-&lt;p>If your data source uses files, you can implement the &lt;a href="https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.filebasedsink.html">FileBasedSink&lt;/a>
+&lt;p>If your data source uses files, you can implement the &lt;a href="https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.filebasedsink.html">FileBasedSink&lt;/a>
 abstraction to create a file-based sink. For other sinks, use &lt;code>ParDo&lt;/code>,
 &lt;code>GroupByKey&lt;/code>, and other transforms offered by the Beam SDK for Python. See the
 &lt;a href="/documentation/io/developing-io-overview/">developing I/O connectors overview&lt;/a>
@@ -1758,21 +1758,21 @@ to &lt;a href="https://parquet.apache.org">Apache Parquet&lt;/a> files.&lt;/p>
 &lt;div class="highlight">&lt;pre class="chroma">&lt;code class="language-java" data-lang="java">&lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">dependency&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>
 &lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">groupId&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="n">org&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="na">apache&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="na">beam&lt;/span>&lt;span class="o">&amp;lt;/&lt;/span>&lt;span class="n">groupId&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>
 &lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">artifactId&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="n">beam&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">sdks&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">java&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">io&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">parquet&lt;/span>&lt;span class="o">&amp;lt;/&lt;/span>&lt;span class="n">artifactId&lt;/span>&lt;span class=" [...]
-&lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">version&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="n">2&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="na">40&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="na">0&lt;/span>&lt;span class="o">&amp;lt;/&lt;/span>&lt;span class="n">version&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>
+&lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">version&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="n">2&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="na">41&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="na">0&lt;/span>&lt;span class="o">&amp;lt;/&lt;/span>&lt;span class="n">version&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>
 &lt;span class="o">&amp;lt;/&lt;/span>&lt;span class="n">dependency&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;/code>&lt;/pre>&lt;/div>
 &lt;/div>
 &lt;/div>
 &lt;p class="language-java">Additional resources:&lt;/p>
 &lt;span class="language-java">&lt;ul>
 &lt;li>&lt;a href="https://github.com/apache/beam/blob/master/sdks/java/io/parquet/src/main/java/org/apache/beam/sdk/io/parquet/ParquetIO.java">ParquetIO source code&lt;/a>&lt;/li>
-&lt;li>&lt;a href="https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/parquet/ParquetIO.html">ParquetIO Javadoc&lt;/a>&lt;/li>
+&lt;li>&lt;a href="https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/parquet/ParquetIO.html">ParquetIO Javadoc&lt;/a>&lt;/li>
 &lt;/ul>&lt;/span>
 &lt;!-- Python specific -->
-&lt;p class="language-py">ParquetIO comes preinstalled with the Apache Beam python sdk..2.40.0&lt;/p>
+&lt;p class="language-py">ParquetIO comes preinstalled with the Apache Beam python sdk..2.41.0&lt;/p>
 &lt;p class="language-py">Additional resources:&lt;/p>
 &lt;span class="language-py">&lt;ul>
 &lt;li>&lt;a href="https://github.com/apache/beam/blob/master/sdks/python/apache_beam/io/parquetio.py">ParquetIO source code&lt;/a>&lt;/li>
-&lt;li>&lt;a href="https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.parquetio.html">ParquetIO Pydoc&lt;/a>&lt;/li>
+&lt;li>&lt;a href="https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.parquetio.html">ParquetIO Pydoc&lt;/a>&lt;/li>
 &lt;/ul>&lt;/span>
 &lt;p class="language-java">&lt;h4 id="using-parquetio-with-spark-before-24">Using ParquetIO with Spark before 2.4&lt;/h4>&lt;/p>
 &lt;p class="language-java">&lt;code>ParquetIO&lt;/code> depends on an API introduced in Apache Parquet 1.10.0. &lt;strong>Spark 2.4.x is compatible and no additional steps are necessary&lt;/strong>. Older versions of Spark will not work out of the box since a pre-installed version of Parquet libraries will take precedence during execution. The following workaround should be applied.&lt;/p>
@@ -1874,14 +1874,14 @@ limitations under the License.
 &lt;pre>&lt;code>&amp;lt;dependency&amp;gt;
 &amp;lt;groupId&amp;gt;org.apache.beam&amp;lt;/groupId&amp;gt;
 &amp;lt;artifactId&amp;gt;beam-sdks-java-io-snowflake&amp;lt;/artifactId&amp;gt;
-&amp;lt;version&amp;gt;2.40.0&amp;lt;/version&amp;gt;
+&amp;lt;version&amp;gt;2.41.0&amp;lt;/version&amp;gt;
 &amp;lt;/dependency&amp;gt;&lt;/code>&lt;/pre>
 &lt;/div>
 &lt;/div>
 &lt;p>Additional resources:&lt;/p>
 &lt;ul>
 &lt;li>&lt;a href="https://github.com/apache/beam/tree/master/sdks/java/io/snowflake/src/main/java/org/apache/beam/sdk/io/snowflake">SnowflakeIO source code&lt;/a>&lt;/li>
-&lt;li>&lt;a href="https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/snowflake/SnowflakeIO.html">SnowflakeIO Javadoc&lt;/a>&lt;/li>
+&lt;li>&lt;a href="https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/snowflake/SnowflakeIO.html">SnowflakeIO Javadoc&lt;/a>&lt;/li>
 &lt;li>&lt;a href="https://docs.snowflake.com/en/">Snowflake documentation&lt;/a>&lt;/li>
 &lt;/ul>
 &lt;h2 id="authentication">Authentication&lt;/h2>
@@ -2924,7 +2924,7 @@ and &lt;a href="https://beam.apache.org/roadmap/connectors-multi-sdk/#cross-lang
 &lt;p>Additional resources:&lt;/p>
 &lt;ul>
 &lt;li>&lt;a href="https://github.com/apache/beam/blob/master/sdks/python/apache_beam/io/snowflake.py">SnowflakeIO source code&lt;/a>&lt;/li>
-&lt;li>&lt;a href="https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.snowflake.html">SnowflakeIO Pydoc&lt;/a>&lt;/li>
+&lt;li>&lt;a href="https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.snowflake.html">SnowflakeIO Pydoc&lt;/a>&lt;/li>
 &lt;li>&lt;a href="https://docs.snowflake.com/en">Snowflake documentation&lt;/a>&lt;/li>
 &lt;/ul>
 &lt;h3 id="reading-from-snowflake-1">Reading from Snowflake&lt;/h3>
@@ -4298,7 +4298,7 @@ asynchronous &amp;ldquo;job&amp;rdquo; (or equivalent) on that back-end.&lt;/p>
 &lt;h2 id="creating-a-pipeline">2. Creating a pipeline&lt;/h2>
 &lt;p>The &lt;code>Pipeline&lt;/code> abstraction encapsulates all the data and steps in your data
 processing task. Your Beam driver program typically starts by constructing a
-&lt;span class="language-java">&lt;a href="https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/Pipeline.html">Pipeline&lt;/a>&lt;/span>
+&lt;span class="language-java">&lt;a href="https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/Pipeline.html">Pipeline&lt;/a>&lt;/span>
 &lt;span class="language-py">&lt;a href="https://github.com/apache/beam/blob/master/sdks/python/apache_beam/pipeline.py">Pipeline&lt;/a>&lt;/span>
 &lt;span class="language-go">&lt;a href="https://github.com/apache/beam/blob/master/sdks/go/pkg/beam/pipeline.go#L62">Pipeline&lt;/a>&lt;/span>
 object, and then using that object as the basis for creating the pipeline&amp;rsquo;s data
@@ -4561,7 +4561,7 @@ with &lt;code>PipelineOptionsFactory&lt;/code>:&lt;/p>
 &lt;/div>
 &lt;p>Now your pipeline can accept &lt;code>--input=value&lt;/code> and &lt;code>--output=value&lt;/code> as command-line arguments.&lt;/p>
 &lt;h2 id="pcollections">3. PCollections&lt;/h2>
-&lt;p>The &lt;span class="language-java">&lt;a href="https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/values/PCollection.html">PCollection&lt;/a>&lt;/span>
+&lt;p>The &lt;span class="language-java">&lt;a href="https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/values/PCollection.html">PCollection&lt;/a>&lt;/span>
 &lt;span class="language-py">&lt;code>PCollection&lt;/code>&lt;/span>
 &lt;span class="language-go">&lt;a href="https://github.com/apache/beam/blob/master/sdks/go/pkg/beam/pcollection.go#L39">PCollection&lt;/a>&lt;/span>
 abstraction represents a
@@ -6111,7 +6111,7 @@ parameters maps to the ordering of the &lt;code>CoGroupByKey&lt;/code> inputs.&l
 &lt;/div>
 &lt;/div>
 &lt;h4 id="combine">4.2.4. Combine&lt;/h4>
-&lt;p>&lt;span class="language-java">&lt;a href="https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/transforms/Combine.html">&lt;code>Combine&lt;/code>&lt;/a>&lt;/span>
+&lt;p>&lt;span class="language-java">&lt;a href="https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/transforms/Combine.html">&lt;code>Combine&lt;/code>&lt;/a>&lt;/span>
 &lt;span class="language-py">&lt;a href="https://github.com/apache/beam/blob/master/sdks/python/apache_beam/transforms/core.py">&lt;code>Combine&lt;/code>&lt;/a>&lt;/span>
 &lt;span class="language-go">&lt;a href="https://github.com/apache/beam/blob/master/sdks/go/pkg/beam/combine.go#L27">&lt;code>Combine&lt;/code>&lt;/a>&lt;/span>
 &lt;span class="language-typescript">&lt;a href="https://github.com/apache/beam/blob/master/sdks/typescript/src/apache_beam/transforms/group_and_combine.ts">&lt;code>Combine&lt;/code>&lt;/a>&lt;/span>
@@ -6602,7 +6602,7 @@ PerKey must be an associative reduction function or a
 &lt;/div>
 &lt;/div>
 &lt;h4 id="flatten">4.2.5. Flatten&lt;/h4>
-&lt;p>&lt;span class="language-java">&lt;a href="https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/transforms/Flatten.html">&lt;code>Flatten&lt;/code>&lt;/a>&lt;/span>
+&lt;p>&lt;span class="language-java">&lt;a href="https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/transforms/Flatten.html">&lt;code>Flatten&lt;/code>&lt;/a>&lt;/span>
 &lt;span class="language-py">&lt;a href="https://github.com/apache/beam/blob/master/sdks/python/apache_beam/transforms/core.py">&lt;code>Flatten&lt;/code>&lt;/a>&lt;/span>
 &lt;span class="language-go">&lt;a href="https://github.com/apache/beam/blob/master/sdks/go/pkg/beam/flatten.go">&lt;code>Flatten&lt;/code>&lt;/a>&lt;/span>
 &lt;span class="language-typescript">&lt;code>Flatten&lt;/code>&lt;/span>
@@ -6682,7 +6682,7 @@ fixed windows or 4-minute sliding windows starting every 30 seconds.&lt;/p>
 incompatible windows, Beam generates an &lt;code>IllegalStateException&lt;/code> error when your
 pipeline is constructed.&lt;/p>
 &lt;h4 id="partition">4.2.6. Partition&lt;/h4>
-&lt;p>&lt;span class="language-java">&lt;a href="https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/transforms/Partition.html">&lt;code>Partition&lt;/code>&lt;/a>&lt;/span>
+&lt;p>&lt;span class="language-java">&lt;a href="https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/transforms/Partition.html">&lt;code>Partition&lt;/code>&lt;/a>&lt;/span>
 &lt;span class="language-py">&lt;a href="https://github.com/apache/beam/blob/master/sdks/python/apache_beam/transforms/core.py">&lt;code>Partition&lt;/code>&lt;/a>&lt;/span>
 &lt;span class="language-go">&lt;a href="https://github.com/apache/beam/blob/master/sdks/go/pkg/beam/partition.go">&lt;code>Partition&lt;/code>&lt;/a>&lt;/span>
 &lt;span class="language-typescript">&lt;code>Partition&lt;/code>&lt;/span>
@@ -7615,8 +7615,8 @@ transform can make your code more modular and easier to understand.&lt;/p>
 &lt;p>The Beam SDK comes packed with many useful composite transforms. See the API
 reference pages for a list of transforms:&lt;/p>
 &lt;ul>
-&lt;li>&lt;a href="https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/transforms/package-summary.html">Pre-written Beam transforms for Java&lt;/a>&lt;/li>
-&lt;li>&lt;a href="https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.transforms.html">Pre-written Beam transforms for Python&lt;/a>&lt;/li>
+&lt;li>&lt;a href="https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/transforms/package-summary.html">Pre-written Beam transforms for Java&lt;/a>&lt;/li>
+&lt;li>&lt;a href="https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.transforms.html">Pre-written Beam transforms for Python&lt;/a>&lt;/li>
 &lt;li>&lt;a href="https://github.com/apache/beam/tree/master/sdks/go/pkg/beam/transforms">Pre-written Beam transforms for Go&lt;/a>&lt;/li>
 &lt;/ul>
 &lt;h4 id="composite-transform-example">4.6.1. An example composite transform&lt;/h4>
@@ -9772,7 +9772,7 @@ all the elements are by default part of a single, global window.&lt;/p>
 &lt;p>To use windowing with fixed data sets, you can assign your own timestamps to
 each element. To assign timestamps to elements, use a &lt;code>ParDo&lt;/code> transform with a
 &lt;code>DoFn&lt;/code> that outputs each element with a new timestamp (for example, the
-&lt;a href="https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/transforms/WithTimestamps.html">WithTimestamps&lt;/a>
+&lt;a href="https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/transforms/WithTimestamps.html">WithTimestamps&lt;/a>
 transform in the Beam SDK for Java).&lt;/p>
 &lt;p>To illustrate how windowing with a bounded &lt;code>PCollection&lt;/code> can affect how your
 pipeline processes data, consider the following pipeline:&lt;/p>
@@ -17587,14 +17587,14 @@ to &lt;a href="https://cloud.google.com/bigquery">Google BigQuery&lt;/a> tables.
 &lt;div class="highlight">&lt;pre class="chroma">&lt;code class="language-java" data-lang="java">&lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">dependency&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>
 &lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">groupId&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="n">org&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="na">apache&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="na">beam&lt;/span>&lt;span class="o">&amp;lt;/&lt;/span>&lt;span class="n">groupId&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>
 &lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">artifactId&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="n">beam&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">sdks&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">java&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">io&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">google&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">cloud&lt;/span>&lt;span class="o">-&lt;/span> [...]
-&lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">version&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="n">2&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="na">40&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="na">0&lt;/span>&lt;span class="o">&amp;lt;/&lt;/span>&lt;span class="n">version&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>
+&lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">version&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="n">2&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="na">41&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="na">0&lt;/span>&lt;span class="o">&amp;lt;/&lt;/span>&lt;span class="n">version&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>
 &lt;span class="o">&amp;lt;/&lt;/span>&lt;span class="n">dependency&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;/code>&lt;/pre>&lt;/div>
 &lt;/div>
 &lt;/div>
 &lt;p class="language-java">Additional resources:&lt;/p>
 &lt;span class="language-java">&lt;ul>
 &lt;li>&lt;a href="https://github.com/apache/beam/tree/master/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery">BigQueryIO source code&lt;/a>&lt;/li>
-&lt;li>&lt;a href="https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.html">BigQueryIO Javadoc&lt;/a>&lt;/li>
+&lt;li>&lt;a href="https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.html">BigQueryIO Javadoc&lt;/a>&lt;/li>
 &lt;li>&lt;a href="https://cloud.google.com/bigquery/docs">Google BigQuery documentation&lt;/a>&lt;/li>
 &lt;/ul>&lt;/span>
 &lt;!-- Python specific -->
@@ -17603,7 +17603,7 @@ running &lt;code>pip install apache-beam[gcp]&lt;/code>.&lt;/p>
 &lt;p class="language-py">Additional resources:&lt;/p>
 &lt;span class="language-py">&lt;ul>
 &lt;li>&lt;a href="https://github.com/apache/beam/blob/master/sdks/python/apache_beam/io/gcp/bigquery.py">BigQueryIO source code&lt;/a>&lt;/li>
-&lt;li>&lt;a href="https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.gcp.bigquery.html">BigQueryIO Pydoc&lt;/a>&lt;/li>
+&lt;li>&lt;a href="https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.gcp.bigquery.html">BigQueryIO Pydoc&lt;/a>&lt;/li>
 &lt;li>&lt;a href="https://cloud.google.com/bigquery/docs">Google BigQuery documentation&lt;/a>&lt;/li>
 &lt;/ul>&lt;/span>
 &lt;h2 id="bigquery-basics">BigQuery basics&lt;/h2>
@@ -17653,10 +17653,10 @@ table name.&lt;/p>
 &lt;p>You can also omit &lt;code>project_id&lt;/code> and use the &lt;code>[dataset_id].[table_id]&lt;/code> format. If
 you omit the project ID, Beam uses the default project ID from your
 &lt;span class="language-java">
-&lt;a href="https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html">pipeline options&lt;/a>.
+&lt;a href="https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html">pipeline options&lt;/a>.
 &lt;/span>
 &lt;span class="language-py">
-&lt;a href="https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.options.pipeline_options.html#apache_beam.options.pipeline_options.GoogleCloudOptions">pipeline options&lt;/a>.
+&lt;a href="https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.options.pipeline_options.html#apache_beam.options.pipeline_options.GoogleCloudOptions">pipeline options&lt;/a>.
 &lt;/span>&lt;/p>
 &lt;div class='language-java snippet'>
 &lt;div class="notebook-skip code-snippet">
@@ -17703,7 +17703,7 @@ the three parts of the BigQuery table name.&lt;/p>
 &lt;/div>
 &lt;/div>
 &lt;!-- Java specific -->
-&lt;p class="language-java">The Beam SDK for Java also provides the &lt;a href="https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/gcp/bigquery/BigQueryHelpers.html">&lt;code>parseTableSpec&lt;/code>&lt;/a>
+&lt;p class="language-java">The Beam SDK for Java also provides the &lt;a href="https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/gcp/bigquery/BigQueryHelpers.html">&lt;code>parseTableSpec&lt;/code>&lt;/a>
 helper method, which constructs a &lt;code>TableReference&lt;/code> object from a String that
 contains the fully-qualified BigQuery table name. However, the static factory
 methods for BigQueryIO transforms accept the table name as a String and
@@ -18455,11 +18455,11 @@ and &lt;a href="https://cloud.google.com/bigquery/streaming-data-into-bigquery">
 for more information about these tradeoffs.&lt;/p>
 &lt;p class="language-java">BigQueryIO chooses a default insertion method based on the input &lt;code>PCollection&lt;/code>.
 You can use &lt;code>withMethod&lt;/code> to specify the desired insertion method. See
-&lt;a href="https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.Write.Method.html">&lt;code>Write.Method&lt;/code>&lt;/a>
+&lt;a href="https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.Write.Method.html">&lt;code>Write.Method&lt;/code>&lt;/a>
 for the list of the available methods and their restrictions.&lt;/p>
 &lt;p class="language-py">BigQueryIO chooses a default insertion method based on the input &lt;code>PCollection&lt;/code>.
 You can use &lt;code>method&lt;/code> to specify the desired insertion method. See
-&lt;a href="https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.gcp.bigquery.html#apache_beam.io.gcp.bigquery.WriteToBigQuery">&lt;code>WriteToBigQuery&lt;/code>&lt;/a>
+&lt;a href="https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.gcp.bigquery.html#apache_beam.io.gcp.bigquery.WriteToBigQuery">&lt;code>WriteToBigQuery&lt;/code>&lt;/a>
 for the list of the available methods and their restrictions.&lt;/p>
 &lt;p>BigQueryIO uses load jobs in the following situations:&lt;/p>
 &lt;span class="language-java">&lt;ul>
diff --git a/website/generated-content/documentation/io/built-in/google-bigquery/index.html b/website/generated-content/documentation/io/built-in/google-bigquery/index.html
index c8b64b2b326..0399061334d 100644
--- a/website/generated-content/documentation/io/built-in/google-bigquery/index.html
+++ b/website/generated-content/documentation/io/built-in/google-bigquery/index.html
@@ -23,9 +23,9 @@ function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfi
 to <a href=https://cloud.google.com/bigquery>Google BigQuery</a> tables.</p><h2 id=before-you-start>Before you start</h2><p class=language-java>To use BigQueryIO, add the Maven artifact dependency to your <code>pom.xml</code> file.</p><div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code cl [...]
     <span class=o>&lt;</span><span class=n>groupId</span><span class=o>&gt;</span><span class=n>org</span><span class=o>.</span><span class=na>apache</span><span class=o>.</span><span class=na>beam</span><span class=o>&lt;/</span><span class=n>groupId</span><span class=o>&gt;</span>
     <span class=o>&lt;</span><span class=n>artifactId</span><span class=o>&gt;</span><span class=n>beam</span><span class=o>-</span><span class=n>sdks</span><span class=o>-</span><span class=n>java</span><span class=o>-</span><span class=n>io</span><span class=o>-</span><span class=n>google</span><span class=o>-</span><span class=n>cloud</span><span class=o>-</span><span class=n>platform</span><span class=o>&lt;/</span><span class=n>artifactId</span><span class=o>&gt;</span>
-    <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>40</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
-<span class=o>&lt;/</span><span class=n>dependency</span><span class=o>&gt;</span></code></pre></div></div></div><p class=language-java>Additional resources:</p><span class=language-java><ul><li><a href=https://github.com/apache/beam/tree/master/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery>BigQueryIO source code</a></li><li><a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.html>BigQueryIO Javadoc [...]
-running <code>pip install apache-beam[gcp]</code>.</p><p class=language-py>Additional resources:</p><span class=language-py><ul><li><a href=https://github.com/apache/beam/blob/master/sdks/python/apache_beam/io/gcp/bigquery.py>BigQueryIO source code</a></li><li><a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.gcp.bigquery.html>BigQueryIO Pydoc</a></li><li><a href=https://cloud.google.com/bigquery/docs>Google BigQuery documentation</a></li></ul></span><h2 id=bigquery-ba [...]
+    <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>41</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
+<span class=o>&lt;/</span><span class=n>dependency</span><span class=o>&gt;</span></code></pre></div></div></div><p class=language-java>Additional resources:</p><span class=language-java><ul><li><a href=https://github.com/apache/beam/tree/master/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery>BigQueryIO source code</a></li><li><a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.html>BigQueryIO Javadoc [...]
+running <code>pip install apache-beam[gcp]</code>.</p><p class=language-py>Additional resources:</p><span class=language-py><ul><li><a href=https://github.com/apache/beam/blob/master/sdks/python/apache_beam/io/gcp/bigquery.py>BigQueryIO source code</a></li><li><a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.gcp.bigquery.html>BigQueryIO Pydoc</a></li><li><a href=https://cloud.google.com/bigquery/docs>Google BigQuery documentation</a></li></ul></span><h2 id=bigquery-ba [...]
 BigQuery table name (for example, <code>bigquery-public-data:github_repos.sample_contents</code>).
 A fully-qualified BigQuery table name consists of three parts:</p><ul><li><strong>Project ID</strong>: The ID for your Google Cloud Project. The default value comes
 from your pipeline options object.</li><li><strong>Dataset ID</strong>: The BigQuery dataset ID, which is unique within a given Cloud
@@ -39,8 +39,8 @@ object.</p><h4 id=using-a-string>Using a string</h4><p>To specify a table with a
 table name.</p><div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code class=language-java data-lang=java><span class=n>String</span> <span class=n>tableSpec</span> <span class=o>=</span> <span class=s>&#34;clouddataflow-readonly:samples.weather_stations&#34;</span><span class=o>;</span></cod [...]
 <span class=n>table_spec</span> <span class=o>=</span> <span class=s1>&#39;clouddataflow-readonly:samples.weather_stations&#39;</span></code></pre></div></div></div><p>You can also omit <code>project_id</code> and use the <code>[dataset_id].[table_id]</code> format. If
 you omit the project ID, Beam uses the default project ID from your
-<span class=language-java><a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html>pipeline options</a>.</span>
-<span class=language-py><a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.options.pipeline_options.html#apache_beam.options.pipeline_options.GoogleCloudOptions>pipeline options</a>.</span></p><div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code class=language-java data-lang [...]
+<span class=language-java><a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html>pipeline options</a>.</span>
+<span class=language-py><a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.options.pipeline_options.html#apache_beam.options.pipeline_options.GoogleCloudOptions>pipeline options</a>.</span></p><div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code class=language-java data-lang [...]
 <span class=n>table_spec</span> <span class=o>=</span> <span class=s1>&#39;samples.weather_stations&#39;</span></code></pre></div></div></div><h4 id=using-a-tablereference>Using a TableReference</h4><p>To specify a table with a <code>TableReference</code>, create a new <code>TableReference</code> using
 the three parts of the BigQuery table name.</p><div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code class=language-java data-lang=java><span class=n>TableReference</span> <span class=n>tableSpec</span> <span class=o>=</span>
     <span class=k>new</span> <span class=n>TableReference</span><span class=o>()</span>
@@ -51,7 +51,7 @@ the three parts of the BigQuery table name.</p><div class="language-java snippet
 <span class=n>table_spec</span> <span class=o>=</span> <span class=n>bigquery</span><span class=o>.</span><span class=n>TableReference</span><span class=p>(</span>
     <span class=n>projectId</span><span class=o>=</span><span class=s1>&#39;clouddataflow-readonly&#39;</span><span class=p>,</span>
     <span class=n>datasetId</span><span class=o>=</span><span class=s1>&#39;samples&#39;</span><span class=p>,</span>
-    <span class=n>tableId</span><span class=o>=</span><span class=s1>&#39;weather_stations&#39;</span><span class=p>)</span></code></pre></div></div></div><p class=language-java>The Beam SDK for Java also provides the <a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/gcp/bigquery/BigQueryHelpers.html><code>parseTableSpec</code></a>
+    <span class=n>tableId</span><span class=o>=</span><span class=s1>&#39;weather_stations&#39;</span><span class=p>)</span></code></pre></div></div></div><p class=language-java>The Beam SDK for Java also provides the <a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/gcp/bigquery/BigQueryHelpers.html><code>parseTableSpec</code></a>
 helper method, which constructs a <code>TableReference</code> object from a String that
 contains the fully-qualified BigQuery table name. However, the static factory
 methods for BigQueryIO transforms accept the table name as a String and
@@ -512,10 +512,10 @@ quota, and data consistency. See the BigQuery documentation for
 and <a href=https://cloud.google.com/bigquery/streaming-data-into-bigquery>streaming inserts</a>)
 for more information about these tradeoffs.</p><p class=language-java>BigQueryIO chooses a default insertion method based on the input <code>PCollection</code>.
 You can use <code>withMethod</code> to specify the desired insertion method. See
-<a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.Write.Method.html><code>Write.Method</code></a>
+<a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.Write.Method.html><code>Write.Method</code></a>
 for the list of the available methods and their restrictions.</p><p class=language-py>BigQueryIO chooses a default insertion method based on the input <code>PCollection</code>.
 You can use <code>method</code> to specify the desired insertion method. See
-<a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.gcp.bigquery.html#apache_beam.io.gcp.bigquery.WriteToBigQuery><code>WriteToBigQuery</code></a>
+<a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.gcp.bigquery.html#apache_beam.io.gcp.bigquery.WriteToBigQuery><code>WriteToBigQuery</code></a>
 for the list of the available methods and their restrictions.</p><p>BigQueryIO uses load jobs in the following situations:</p><span class=language-java><ul><li>When you apply a BigQueryIO write transform to a bounded <code>PCollection</code>.</li><li>When you specify load jobs as the insertion method using
 <code>BigQueryIO.write().withMethod(FILE_LOADS)</code>.</li></ul></span><span class=language-py><ul><li>When you apply a BigQueryIO write transform to a bounded <code>PCollection</code>.</li><li>When you specify load jobs as the insertion method using
 <code>WriteToBigQuery(method='FILE_LOADS')</code>.</li></ul></span><p><em><strong>Note:</strong></em> If you use batch loads in a streaming pipeline:</p><p class=language-java>You must use <code>withTriggeringFrequency</code> to specify a triggering frequency for
diff --git a/website/generated-content/documentation/io/built-in/parquet/index.html b/website/generated-content/documentation/io/built-in/parquet/index.html
index 4799fbbda25..d29034df219 100644
--- a/website/generated-content/documentation/io/built-in/parquet/index.html
+++ b/website/generated-content/documentation/io/built-in/parquet/index.html
@@ -23,8 +23,8 @@ function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfi
 to <a href=https://parquet.apache.org>Apache Parquet</a> files.</p><h2 id=before-you-start>Before you start</h2><p class=language-java>To use ParquetIO, add the Maven artifact dependency to your <code>pom.xml</code> file.</p><div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code class=langua [...]
     <span class=o>&lt;</span><span class=n>groupId</span><span class=o>&gt;</span><span class=n>org</span><span class=o>.</span><span class=na>apache</span><span class=o>.</span><span class=na>beam</span><span class=o>&lt;/</span><span class=n>groupId</span><span class=o>&gt;</span>
     <span class=o>&lt;</span><span class=n>artifactId</span><span class=o>&gt;</span><span class=n>beam</span><span class=o>-</span><span class=n>sdks</span><span class=o>-</span><span class=n>java</span><span class=o>-</span><span class=n>io</span><span class=o>-</span><span class=n>parquet</span><span class=o>&lt;/</span><span class=n>artifactId</span><span class=o>&gt;</span>
-    <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>40</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
-<span class=o>&lt;/</span><span class=n>dependency</span><span class=o>&gt;</span></code></pre></div></div></div><p class=language-java>Additional resources:</p><span class=language-java><ul><li><a href=https://github.com/apache/beam/blob/master/sdks/java/io/parquet/src/main/java/org/apache/beam/sdk/io/parquet/ParquetIO.java>ParquetIO source code</a></li><li><a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/parquet/ParquetIO.html>ParquetIO Javadoc</a></li></u [...]
+    <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>41</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
+<span class=o>&lt;/</span><span class=n>dependency</span><span class=o>&gt;</span></code></pre></div></div></div><p class=language-java>Additional resources:</p><span class=language-java><ul><li><a href=https://github.com/apache/beam/blob/master/sdks/java/io/parquet/src/main/java/org/apache/beam/sdk/io/parquet/ParquetIO.java>ParquetIO source code</a></li><li><a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/parquet/ParquetIO.html>ParquetIO Javadoc</a></li></u [...]
 The Parquet files that are consumed or generated by this Beam connector should remain interoperable with the other tools on your cluster.</p></blockquote></p><p class=language-java>Include the Parquet artifact normally and ensure that it brings in the correct version of Parquet as a transitive dependency.</p><div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img sr [...]
     <span class=o>&lt;</span><span class=n>groupId</span><span class=o>&gt;</span><span class=n>org</span><span class=o>.</span><span class=na>apache</span><span class=o>.</span><span class=na>beam</span><span class=o>&lt;/</span><span class=n>groupId</span><span class=o>&gt;</span>
     <span class=o>&lt;</span><span class=n>artifactId</span><span class=o>&gt;</span><span class=n>beam</span><span class=o>-</span><span class=n>sdks</span><span class=o>-</span><span class=n>java</span><span class=o>-</span><span class=n>io</span><span class=o>-</span><span class=n>parquet</span><span class=o>&lt;/</span><span class=n>artifactId</span><span class=o>&gt;</span>
diff --git a/website/generated-content/documentation/io/built-in/snowflake/index.html b/website/generated-content/documentation/io/built-in/snowflake/index.html
index 0f672584791..cd9a5dc7091 100644
--- a/website/generated-content/documentation/io/built-in/snowflake/index.html
+++ b/website/generated-content/documentation/io/built-in/snowflake/index.html
@@ -22,8 +22,8 @@ function blockScroll(){$("body").toggleClass("fixedPosition");}
 function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Documentation</span></li><li><a href=/documentation>Using the Documentation</a></li><li class=section-nav-item--collapsible><span class=section-nav-lis [...]
     &lt;groupId&gt;org.apache.beam&lt;/groupId&gt;
     &lt;artifactId&gt;beam-sdks-java-io-snowflake&lt;/artifactId&gt;
-    &lt;version&gt;2.40.0&lt;/version&gt;
-&lt;/dependency&gt;</code></pre></div></div><p>Additional resources:</p><ul><li><a href=https://github.com/apache/beam/tree/master/sdks/java/io/snowflake/src/main/java/org/apache/beam/sdk/io/snowflake>SnowflakeIO source code</a></li><li><a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/io/snowflake/SnowflakeIO.html>SnowflakeIO Javadoc</a></li><li><a href=https://docs.snowflake.com/en/>Snowflake documentation</a></li></ul><h2 id=authentication>Authentication</h2> [...]
+    &lt;version&gt;2.41.0&lt;/version&gt;
+&lt;/dependency&gt;</code></pre></div></div><p>Additional resources:</p><ul><li><a href=https://github.com/apache/beam/tree/master/sdks/java/io/snowflake/src/main/java/org/apache/beam/sdk/io/snowflake>SnowflakeIO source code</a></li><li><a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/io/snowflake/SnowflakeIO.html>SnowflakeIO Javadoc</a></li><li><a href=https://docs.snowflake.com/en/>Snowflake documentation</a></li></ul><h2 id=authentication>Authentication</h2> [...]
         .withUsernamePasswordAuth(
                 options.getUsername(),
                 options.getPassword())
@@ -248,7 +248,7 @@ with <code>AwsAccessKey</code> and <code>AwsSecretKey</code> options. Example:</
 );</code></pre></div></div>3. Create pipeline</p><div class=snippet><div class="notebook-skip code-snippet without_switcher"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><pre><code>Pipeline p = Pipeline.create(options);</code></pre></div></div><p><strong>Note</strong>: Remember to set <code>awsRegion</code> from <a href=https://beam.apache.org/releases/javadoc/current/org/apache/beam/sdk/io/aws/opti [...]
 cross-language which is part of <a href=https://beam.apache.org/roadmap/portability/>Portability Framework Roadmap</a> which aims to provide full interoperability
 across the Beam ecosystem. From a developer perspective it means the possibility of combining transforms written in different languages(Java/Python/Go).</p><p>For more information about cross-language please see <a href=https://beam.apache.org/roadmap/connectors-multi-sdk/>multi sdk efforts</a>
-and <a href=https://beam.apache.org/roadmap/connectors-multi-sdk/#cross-language-transforms-api-and-expansion-service>Cross-language transforms API and expansion service</a> articles.</p><p>Additional resources:</p><ul><li><a href=https://github.com/apache/beam/blob/master/sdks/python/apache_beam/io/snowflake.py>SnowflakeIO source code</a></li><li><a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.snowflake.html>SnowflakeIO Pydoc</a></li><li><a href=https://docs.snowfla [...]
+and <a href=https://beam.apache.org/roadmap/connectors-multi-sdk/#cross-language-transforms-api-and-expansion-service>Cross-language transforms API and expansion service</a> articles.</p><p>Additional resources:</p><ul><li><a href=https://github.com/apache/beam/blob/master/sdks/python/apache_beam/io/snowflake.py>SnowflakeIO source code</a></li><li><a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.snowflake.html>SnowflakeIO Pydoc</a></li><li><a href=https://docs.snowfla [...]
 
 with TestPipeline(options=PipelineOptions(OPTIONS)) as p:
    (p
diff --git a/website/generated-content/documentation/io/developing-io-python/index.html b/website/generated-content/documentation/io/developing-io-python/index.html
index 439a248eb11..e403298e950 100644
--- a/website/generated-content/documentation/io/developing-io-python/index.html
+++ b/website/generated-content/documentation/io/developing-io-python/index.html
@@ -26,7 +26,7 @@ source and a sink. All Beam sources and sinks are composite transforms; however,
 the implementation of your custom I/O depends on your use case. Before you
 start, read the <a href=/documentation/io/developing-io-overview/>new I/O connector overview</a>
 for an overview of developing a new I/O connector, the available implementation
-options, and how to choose the right option for your use case.</p><p>This guide covers using the <a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.iobase.html>Source and FileBasedSink interfaces</a>
+options, and how to choose the right option for your use case.</p><p>This guide covers using the <a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.iobase.html>Source and FileBasedSink interfaces</a>
 for Python. The Java SDK offers the same functionality, but uses a slightly
 different API. See <a href=/documentation/io/developing-io-java/>Developing I/O connectors for Java</a>
 for information specific to the Java SDK.</p><h2 id=basic-code-reqs>Basic code requirements</h2><p>Beam runners use the classes you provide to read and/or write data using
@@ -53,7 +53,7 @@ manage a range for a given position type.</li><li>One or more user-facing wrappe
 wrap read operations. <a href=#ptransform-wrappers>PTransform wrappers</a> discusses
 why you should avoid exposing your sources, and walks through how to create
 a wrapper.</li></ul><p>You can find these classes in the
-<a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.iobase.html>apache_beam.io.iobase module</a>.</p><h3 id=implementing-the-boundedsource-subclass>Implementing the BoundedSource subclass</h3><p><code>BoundedSource</code> represents a finite data set from which the service reads, possibly in parallel. <code>BoundedSource</code> contains a set of methods that the service uses to split the data set for reading by multiple remote workers.</p><p>To implement a <code>BoundedS [...]
+<a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.iobase.html>apache_beam.io.iobase module</a>.</p><h3 id=implementing-the-boundedsource-subclass>Implementing the BoundedSource subclass</h3><p><code>BoundedSource</code> represents a finite data set from which the service reads, possibly in parallel. <code>BoundedSource</code> contains a set of methods that the service uses to split the data set for reading by multiple remote workers.</p><p>To implement a <code>BoundedS [...]
   def __init__(self, count):
     self.records_read = Metrics.counter(self.__class__, &#39;recordsRead&#39;)
     self._count = count
@@ -96,7 +96,7 @@ a wrapper.</li></ul><p>You can find these classes in the
 recommended that you do not expose the code for the source itself as
 demonstrated in the example above. Use a wrapping <code>PTransform</code> instead.
 <a href=#ptransform-wrappers>PTransform wrappers</a> discusses why you should avoid
-exposing your sources, and walks through how to create a wrapper.</p><h2 id=using-the-filebasedsink-abstraction>Using the FileBasedSink abstraction</h2><p>If your data source uses files, you can implement the <a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.filebasedsink.html>FileBasedSink</a>
+exposing your sources, and walks through how to create a wrapper.</p><h2 id=using-the-filebasedsink-abstraction>Using the FileBasedSink abstraction</h2><p>If your data source uses files, you can implement the <a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.filebasedsink.html>FileBasedSink</a>
 abstraction to create a file-based sink. For other sinks, use <code>ParDo</code>,
 <code>GroupByKey</code>, and other transforms offered by the Beam SDK for Python. See the
 <a href=/documentation/io/developing-io-overview/>developing I/O connectors overview</a>
diff --git a/website/generated-content/documentation/pipelines/test-your-pipeline/index.html b/website/generated-content/documentation/pipelines/test-your-pipeline/index.html
index 64af6941819..9d1e7e08425 100644
--- a/website/generated-content/documentation/pipelines/test-your-pipeline/index.html
+++ b/website/generated-content/documentation/pipelines/test-your-pipeline/index.html
@@ -20,7 +20,7 @@ function addPlaceholder(){$('input:text').attr('placeholder',"What are you looki
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
 function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Documentation</span></li><li><a href=/documentation>Using the Documentation</a></li><li class=section-nav-item--collapsible><span class=section-nav-lis [...]
-    <span class=o>...</span></code></pre></div></div></div><blockquote><p><strong>Note:</strong> Read about testing unbounded pipelines in Beam in <a href=/blog/2016/10/20/test-stream.html>this blog post</a>.</p></blockquote><h3 id=using-the-create-transform>Using the Create Transform</h3><p>You can use the <code>Create</code> transform to create a <code>PCollection</code> out of a standard in-memory collection class, such as Java or Python <code>List</code>. See <a href=/documentation/p [...]
+    <span class=o>...</span></code></pre></div></div></div><blockquote><p><strong>Note:</strong> Read about testing unbounded pipelines in Beam in <a href=/blog/2016/10/20/test-stream.html>this blog post</a>.</p></blockquote><h3 id=using-the-create-transform>Using the Create Transform</h3><p>You can use the <code>Create</code> transform to create a <code>PCollection</code> out of a standard in-memory collection class, such as Java or Python <code>List</code>. See <a href=/documentation/p [...]
 
 <span class=c1>// Check whether a PCollection contains some elements in any order.
 </span><span class=c1></span><span class=n>PAssert</span><span class=o>.</span><span class=na>that</span><span class=o>(</span><span class=n>output</span><span class=o>)</span>
@@ -40,7 +40,7 @@ function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfi
     <span class=o>&lt;</span><span class=n>artifactId</span><span class=o>&gt;</span><span class=n>hamcrest</span><span class=o>-</span><span class=n>all</span><span class=o>&lt;/</span><span class=n>artifactId</span><span class=o>&gt;</span>
     <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>1</span><span class=o>.</span><span class=na>3</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
     <span class=o>&lt;</span><span class=n>scope</span><span class=o>&gt;</span><span class=n>test</span><span class=o>&lt;/</span><span class=n>scope</span><span class=o>&gt;</span>
-<span class=o>&lt;/</span><span class=n>dependency</span><span class=o>&gt;</span></code></pre></div></div></div><p>For more information on how these classes work, see the <a href=https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/testing/package-summary.html>org.apache.beam.sdk.testing</a> package documentation.</p><h3 id=an-example-test-for-a-composite-transform>An Example Test for a Composite Transform</h3><p>The following code shows a complete test for a c [...]
+<span class=o>&lt;/</span><span class=n>dependency</span><span class=o>&gt;</span></code></pre></div></div></div><p>For more information on how these classes work, see the <a href=https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/testing/package-summary.html>org.apache.beam.sdk.testing</a> package documentation.</p><h3 id=an-example-test-for-a-composite-transform>An Example Test for a Composite Transform</h3><p>The following code shows a complete test for a c [...]
 
   <span class=c1>// Our static input data, which will make up the initial PCollection.
 </span><span class=c1></span>  <span class=kd>static</span> <span class=kd>final</span> <span class=n>String</span><span class=o>[]</span> <span class=n>WORDS_ARRAY</span> <span class=o>=</span> <span class=k>new</span> <span class=n>String</span><span class=o>[]</span> <span class=o>{</span>
diff --git a/website/generated-content/documentation/programming-guide/index.html b/website/generated-content/documentation/programming-guide/index.html
index 909437fe393..f7ffd25aab6 100644
--- a/website/generated-content/documentation/programming-guide/index.html
+++ b/website/generated-content/documentation/programming-guide/index.html
@@ -71,7 +71,7 @@ objects you&rsquo;ve created and transforms that you&rsquo;ve applied. That grap
 executed using the appropriate distributed processing back-end, becoming an
 asynchronous &ldquo;job&rdquo; (or equivalent) on that back-end.</p><h2 id=creating-a-pipeline>2. Creating a pipeline</h2><p>The <code>Pipeline</code> abstraction encapsulates all the data and steps in your data
 processing task. Your Beam driver program typically starts by constructing a
-<span class=language-java><a href=https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/Pipeline.html>Pipeline</a></span>
+<span class=language-java><a href=https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/Pipeline.html>Pipeline</a></span>
 <span class=language-py><a href=https://github.com/apache/beam/blob/master/sdks/python/apache_beam/pipeline.py>Pipeline</a></span>
 <span class=language-go><a href=https://github.com/apache/beam/blob/master/sdks/go/pkg/beam/pipeline.go#L62>Pipeline</a></span>
 object, and then using that object as the basis for creating the pipeline&rsquo;s data
@@ -181,7 +181,7 @@ compatible with all other registered options.</p><p class=language-java>The foll
 with <code>PipelineOptionsFactory</code>:</p><div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code class=language-java data-lang=java><span class=n>PipelineOptionsFactory</span><span class=o>.</span><span class=na>register</span><span class=o>(</span><span class=n>MyOptions</span><span clas [...]
 <span class=n>MyOptions</span> <span class=n>options</span> <span class=o>=</span> <span class=n>PipelineOptionsFactory</span><span class=o>.</span><span class=na>fromArgs</span><span class=o>(</span><span class=n>args</span><span class=o>)</span>
                                                 <span class=o>.</span><span class=na>withValidation</span><span class=o>()</span>
-                                                <span class=o>.</span><span class=na>as</span><span class=o>(</span><span class=n>MyOptions</span><span class=o>.</span><span class=na>class</span><span class=o>);</span></code></pre></div></div></div><p>Now your pipeline can accept <code>--input=value</code> and <code>--output=value</code> as command-line arguments.</p><h2 id=pcollections>3. PCollections</h2><p>The <span class=language-java><a href=https://beam.apache.org/releases/javadoc/ [...]
+                                                <span class=o>.</span><span class=na>as</span><span class=o>(</span><span class=n>MyOptions</span><span class=o>.</span><span class=na>class</span><span class=o>);</span></code></pre></div></div></div><p>Now your pipeline can accept <code>--input=value</code> and <code>--output=value</code> as command-line arguments.</p><h2 id=pcollections>3. PCollections</h2><p>The <span class=language-java><a href=https://beam.apache.org/releases/javadoc/ [...]
 <span class=language-py><code>PCollection</code></span>
 <span class=language-go><a href=https://github.com/apache/beam/blob/master/sdks/go/pkg/beam/pcollection.go#L39>PCollection</a></span>
 abstraction represents a
@@ -1126,7 +1126,7 @@ parameters maps to the ordering of the <code>CoGroupByKey</code> inputs.</p><div
   <span class=s2>&#34;james; []; [222-333-4444]&#34;</span><span class=p>,</span>
   <span class=s2>&#34;julia; [julia@example.com]; []&#34;</span><span class=p>,</span>
 <span class=p>];</span>
-</code></pre></div></div></div><h4 id=combine>4.2.4. Combine</h4><p><span class=language-java><a href=https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/transforms/Combine.html><code>Combine</code></a></span>
+</code></pre></div></div></div><h4 id=combine>4.2.4. Combine</h4><p><span class=language-java><a href=https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/transforms/Combine.html><code>Combine</code></a></span>
 <span class=language-py><a href=https://github.com/apache/beam/blob/master/sdks/python/apache_beam/transforms/core.py><code>Combine</code></a></span>
 <span class=language-go><a href=https://github.com/apache/beam/blob/master/sdks/go/pkg/beam/combine.go#L27><code>Combine</code></a></span>
 <span class=language-typescript><a href=https://github.com/apache/beam/blob/master/sdks/typescript/src/apache_beam/transforms/group_and_combine.ts><code>Combine</code></a></span>
@@ -1434,7 +1434,7 @@ PerKey must be an associative reduction function or a
   <span class=p>{</span> <span class=nx>player</span><span class=o>:</span> <span class=s2>&#34;bob&#34;</span><span class=p>,</span> <span class=nx>mean</span>: <span class=kt>0.99</span><span class=p>,</span> <span class=nx>max</span>: <span class=kt>0.99</span> <span class=p>},</span>
   <span class=p>{</span> <span class=nx>player</span><span class=o>:</span> <span class=s2>&#34;eve&#34;</span><span class=p>,</span> <span class=nx>mean</span>: <span class=kt>0.375</span><span class=p>,</span> <span class=nx>max</span>: <span class=kt>0.5</span> <span class=p>},</span>
 <span class=p>];</span>
-</code></pre></div></div></div><h4 id=flatten>4.2.5. Flatten</h4><p><span class=language-java><a href=https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/transforms/Flatten.html><code>Flatten</code></a></span>
+</code></pre></div></div></div><h4 id=flatten>4.2.5. Flatten</h4><p><span class=language-java><a href=https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/transforms/Flatten.html><code>Flatten</code></a></span>
 <span class=language-py><a href=https://github.com/apache/beam/blob/master/sdks/python/apache_beam/transforms/core.py><code>Flatten</code></a></span>
 <span class=language-go><a href=https://github.com/apache/beam/blob/master/sdks/go/pkg/beam/flatten.go><code>Flatten</code></a></span>
 <span class=language-typescript><code>Flatten</code></span>
@@ -1476,7 +1476,7 @@ compatible windowing strategy and window sizing. For example, all the
 collections you&rsquo;re merging must all use (hypothetically) identical 5-minute
 fixed windows or 4-minute sliding windows starting every 30 seconds.</p><p>If your pipeline attempts to use <code>Flatten</code> to merge <code>PCollection</code> objects with
 incompatible windows, Beam generates an <code>IllegalStateException</code> error when your
-pipeline is constructed.</p><h4 id=partition>4.2.6. Partition</h4><p><span class=language-java><a href=https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/transforms/Partition.html><code>Partition</code></a></span>
+pipeline is constructed.</p><h4 id=partition>4.2.6. Partition</h4><p><span class=language-java><a href=https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/transforms/Partition.html><code>Partition</code></a></span>
 <span class=language-py><a href=https://github.com/apache/beam/blob/master/sdks/python/apache_beam/transforms/core.py><code>Partition</code></a></span>
 <span class=language-go><a href=https://github.com/apache/beam/blob/master/sdks/go/pkg/beam/partition.go><code>Partition</code></a></span>
 <span class=language-typescript><code>Partition</code></span>
@@ -2134,7 +2134,7 @@ multiple simpler transforms (such as more than one <code>ParDo</code>, <code>Com
 <code>GroupByKey</code>, or even other composite transforms). These transforms are called
 composite transforms. Nesting multiple transforms inside a single composite
 transform can make your code more modular and easier to understand.</p><p>The Beam SDK comes packed with many useful composite transforms. See the API
-reference pages for a list of transforms:</p><ul><li><a href=https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/transforms/package-summary.html>Pre-written Beam transforms for Java</a></li><li><a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.transforms.html>Pre-written Beam transforms for Python</a></li><li><a href=https://github.com/apache/beam/tree/master/sdks/go/pkg/beam/transforms>Pre-written Beam transforms for Go</a></li></ul><h4 id=comp [...]
+reference pages for a list of transforms:</p><ul><li><a href=https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/transforms/package-summary.html>Pre-written Beam transforms for Java</a></li><li><a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.transforms.html>Pre-written Beam transforms for Python</a></li><li><a href=https://github.com/apache/beam/tree/master/sdks/go/pkg/beam/transforms>Pre-written Beam transforms for Go</a></li></ul><h4 id=comp [...]
 is an example of a composite transform. <code>CountWords</code> is a <code>PTransform</code>
 <span class="language-java language-py">subclass</span> that consists
 of multiple nested transforms.</p><p><span class="language-java language-py">In its <code>expand</code> method, the</span>
@@ -2968,7 +2968,7 @@ each element of a <code>PCollection</code>, and data sources that create fixed d
 all the elements are by default part of a single, global window.</p><p>To use windowing with fixed data sets, you can assign your own timestamps to
 each element. To assign timestamps to elements, use a <code>ParDo</code> transform with a
 <code>DoFn</code> that outputs each element with a new timestamp (for example, the
-<a href=https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/transforms/WithTimestamps.html>WithTimestamps</a>
+<a href=https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/transforms/WithTimestamps.html>WithTimestamps</a>
 transform in the Beam SDK for Java).</p><p>To illustrate how windowing with a bounded <code>PCollection</code> can affect how your
 pipeline processes data, consider the following pipeline:</p><p><img src=/images/unwindowed-pipeline-bounded.svg alt="Diagram of GroupByKey and ParDo without windowing, on a bounded collection"></p><p><strong>Figure 4:</strong> <code>GroupByKey</code> and <code>ParDo</code> without windowing, on a bounded collection.</p><p>In the above pipeline, we create a bounded <code>PCollection</code> by reading lines from a
 file using <code>TextIO</code>. We then group the collection using <code>GroupByKey</code>,
diff --git a/website/generated-content/documentation/runners/dataflow/index.html b/website/generated-content/documentation/runners/dataflow/index.html
index 54dfa145cf4..37f6076cdc2 100644
--- a/website/generated-content/documentation/runners/dataflow/index.html
+++ b/website/generated-content/documentation/runners/dataflow/index.html
@@ -27,7 +27,7 @@ Manager. You may need to enable additional APIs (such as BigQuery, Cloud
 Pub/Sub, or Cloud Datastore) if you use them in your pipeline code.</li><li>Authenticate with Google Cloud Platform.</li><li>Install the Google Cloud SDK.</li><li>Create a Cloud Storage bucket.</li></ol><h3 id=dependency>Specify your dependency</h3><p><span class=language-java>When using Java, you must specify your dependency on the Cloud Dataflow Runner in your <code>pom.xml</code>.</span><div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=butto [...]
   <span class=o>&lt;</span><span class=n>groupId</span><span class=o>&gt;</span><span class=n>org</span><span class=o>.</span><span class=na>apache</span><span class=o>.</span><span class=na>beam</span><span class=o>&lt;/</span><span class=n>groupId</span><span class=o>&gt;</span>
   <span class=o>&lt;</span><span class=n>artifactId</span><span class=o>&gt;</span><span class=n>beam</span><span class=o>-</span><span class=n>runners</span><span class=o>-</span><span class=n>google</span><span class=o>-</span><span class=n>cloud</span><span class=o>-</span><span class=n>dataflow</span><span class=o>-</span><span class=n>java</span><span class=o>&lt;/</span><span class=n>artifactId</span><span class=o>&gt;</span>
-  <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>40</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
+  <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>41</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
   <span class=o>&lt;</span><span class=n>scope</span><span class=o>&gt;</span><span class=n>runtime</span><span class=o>&lt;/</span><span class=n>scope</span><span class=o>&gt;</span>
 <span class=o>&lt;/</span><span class=n>dependency</span><span class=o>&gt;</span></code></pre></div></div></div></p><p><span class=language-py>This section is not applicable to the Beam SDK for Python.</span></p><h3 id=self-executing-jar>Self executing JAR</h3><p class=language-py>This section is not applicable to the Beam SDK for Python.</p><p class=language-java>In some cases, such as starting a pipeline using a scheduler such as <a href=https://airflow.apache.org>Apache AirFlow</a>,  [...]
     <span class=o>&lt;</span><span class=n>groupId</span><span class=o>&gt;</span><span class=n>org</span><span class=o>.</span><span class=na>apache</span><span class=o>.</span><span class=na>beam</span><span class=o>&lt;/</span><span class=n>groupId</span><span class=o>&gt;</span>
@@ -59,8 +59,8 @@ Path for temporary files. Must be a valid Google Cloud Storage URL that begins w
 <span class=language-java>If set, <code>tempLocation</code> is used as the default value for <code>gcpTempLocation</code>.</span></td><td>No default value.</td></tr><tr class=language-java><td><code>gcpTempLocation</code></td><td>Cloud Storage bucket path for temporary files. Must be a valid Cloud Storage URL that begins with <code>gs://</code>.</td><td>If not set, defaults to the value of <code>tempLocation</code>, provided that <code>tempLocation</code> is a valid Cloud Storage URL. If [...]
 <span class=language-py><code>staging_location</code></span></td><td>Optional. Cloud Storage bucket path for staging your binary and any temporary files. Must be a valid Cloud Storage URL that begins with <code>gs://</code>.</td><td><span class=language-java>If not set, defaults to a staging directory within <code>gcpTempLocation</code>.</span>
 <span class=language-py>If not set, defaults to a staging directory within <code>temp_location</code>.</span></td></tr><tr class=language-py><td><code>save_main_session</code></td><td>Save the main session state so that pickled functions and classes defined in <code>__main__</code> (e.g. interactive session) can be unpickled. Some workflows do not need the session state if, for instance, all of their functions/classes are defined in proper modules (not <code>__main__</code>) and the modu [...]
-<span class=language-java><a href=https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/runners/dataflow/options/DataflowPipelineOptions.html>DataflowPipelineOptions</a></span>
-<span class=language-py><a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.options.pipeline_options.html#apache_beam.options.pipeline_options.PipelineOptions><code>PipelineOptions</code></a></span>
+<span class=language-java><a href=https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/runners/dataflow/options/DataflowPipelineOptions.html>DataflowPipelineOptions</a></span>
+<span class=language-py><a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.options.pipeline_options.html#apache_beam.options.pipeline_options.PipelineOptions><code>PipelineOptions</code></a></span>
 interface (and any subinterfaces) for additional pipeline configuration options.</p><h2 id=additional-info>Additional information and caveats</h2><h3 id=monitoring>Monitoring your job</h3><p>While your pipeline executes, you can monitor the job&rsquo;s progress, view details on execution, and receive updates on the pipeline&rsquo;s results by using the <a href=https://cloud.google.com/dataflow/pipelines/dataflow-monitoring-intf>Dataflow Monitoring Interface</a> or the <a href=https://clo [...]
 You can cancel your streaming job from the <a href=https://cloud.google.com/dataflow/pipelines/stopping-a-pipeline>Dataflow Monitoring Interface</a>
 or with the <a href=https://cloud.google.com/dataflow/pipelines/dataflow-command-line-intf>Dataflow Command-line Interface</a>
diff --git a/website/generated-content/documentation/runners/direct/index.html b/website/generated-content/documentation/runners/direct/index.html
index 4b8333efacb..f3575829b4a 100644
--- a/website/generated-content/documentation/runners/direct/index.html
+++ b/website/generated-content/documentation/runners/direct/index.html
@@ -19,15 +19,15 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Runners</span></li><li><a href=/documentation/runners/capability-matrix/>Capability Matrix</a></li><li><a href=/documentation/runners/direct/>Direct Ru [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Runners</span></li><li><a href=/documentation/runners/capability-matrix/>Capability Matrix</a></li><li><a href=/documentation/runners/direct/>Direct Ru [...]
    <span class=o>&lt;</span><span class=n>groupId</span><span class=o>&gt;</span><span class=n>org</span><span class=o>.</span><span class=na>apache</span><span class=o>.</span><span class=na>beam</span><span class=o>&lt;/</span><span class=n>groupId</span><span class=o>&gt;</span>
    <span class=o>&lt;</span><span class=n>artifactId</span><span class=o>&gt;</span><span class=n>beam</span><span class=o>-</span><span class=n>runners</span><span class=o>-</span><span class=n>direct</span><span class=o>-</span><span class=n>java</span><span class=o>&lt;/</span><span class=n>artifactId</span><span class=o>&gt;</span>
-   <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>40</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
+   <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>41</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
    <span class=o>&lt;</span><span class=n>scope</span><span class=o>&gt;</span><span class=n>runtime</span><span class=o>&lt;/</span><span class=n>scope</span><span class=o>&gt;</span>
 <span class=o>&lt;/</span><span class=n>dependency</span><span class=o>&gt;</span></code></pre></div></div></div></p><p><span class=language-py>This section is not applicable to the Beam SDK for Python.</span></p><h2 id=pipeline-options-for-the-direct-runner>Pipeline options for the Direct Runner</h2><p>For general instructions on how to set pipeline options, see the <a href=/documentation/programming-guide/#configuring-pipeline-options>programming guide</a>.</p><p>When executing your pi [...]
-<span class=language-java><a href=https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/runners/direct/DirectOptions.html><code>DirectOptions</code></a></span>
-<span class=language-py><a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.options.pipeline_options.html#apache_beam.options.pipeline_options.DirectOptions><code>DirectOptions</code></a></span>
-interface for defaults and additional pipeline configuration options.</p><h2 id=additional-information-and-caveats>Additional information and caveats</h2><h3 id=memory-considerations>Memory considerations</h3><p>Local execution is limited by the memory available in your local environment. It is highly recommended that you run your pipeline with data sets small enough to fit in local memory. You can create a small in-memory data set using a <span class=language-java><a href=https://beam.a [...]
+<span class=language-java><a href=https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/runners/direct/DirectOptions.html><code>DirectOptions</code></a></span>
+<span class=language-py><a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.options.pipeline_options.html#apache_beam.options.pipeline_options.DirectOptions><code>DirectOptions</code></a></span>
+interface for defaults and additional pipeline configuration options.</p><h2 id=additional-information-and-caveats>Additional information and caveats</h2><h3 id=memory-considerations>Memory considerations</h3><p>Local execution is limited by the memory available in your local environment. It is highly recommended that you run your pipeline with data sets small enough to fit in local memory. You can create a small in-memory data set using a <span class=language-java><a href=https://beam.a [...]
 By default, <code>targetParallelism</code> is the greater of the number of available processors and 3.</p><p class=language-py>Number of threads or subprocesses is defined by setting the <code>direct_num_workers</code> pipeline option.
 From 2.22.0, <code>direct_num_workers = 0</code> is supported. When <code>direct_num_workers</code> is set to 0, it will set the number of threads/subprocess to the number of cores of the machine where the pipeline is running.</p><p class=language-py><strong>Setting running mode</strong></p><p class=language-py>In Beam 2.19.0 and newer, you can use the <code>direct_running_mode</code> pipeline option to set the running mode.
 <code>direct_running_mode</code> can be one of [<code>'in_memory'</code>, <code>'multi_threading'</code>, <code>'multi_processing'</code>].</p><p class=language-py><b>in_memory</b>: Runner and workers&rsquo; communication happens in memory (not through gRPC). This is a default mode.</p><p class=language-py><b>multi_threading</b>: Runner and workers communicate through gRPC and each worker runs in a thread.</p><p class=language-py><b>multi_processing</b>: Runner and workers communicate th [...]
diff --git a/website/generated-content/documentation/runners/flink/index.html b/website/generated-content/documentation/runners/flink/index.html
index 1d4cf32c1f4..04d0b513a4a 100644
--- a/website/generated-content/documentation/runners/flink/index.html
+++ b/website/generated-content/documentation/runners/flink/index.html
@@ -43,7 +43,7 @@ in your <code>pom.xml</code> or <code>build.gradle</code>. Use the Beam version
 from the <a href=#flink-version-compatibility>compatibility table</a> below. For example:</p><div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code class=language-java data-lang=java><span class=o>&lt;</span><span class=n>dependency</span><span class=o>&gt;</span>
   <span class=o>&lt;</span><span class=n>groupId</span><span class=o>&gt;</span><span class=n>org</span><span class=o>.</span><span class=na>apache</span><span class=o>.</span><span class=na>beam</span><span class=o>&lt;/</span><span class=n>groupId</span><span class=o>&gt;</span>
   <span class=o>&lt;</span><span class=n>artifactId</span><span class=o>&gt;</span><span class=n>beam</span><span class=o>-</span><span class=n>runners</span><span class=o>-</span><span class=n>flink</span><span class=o>-</span><span class=n>1</span><span class=o>.</span><span class=na>14</span><span class=o>&lt;/</span><span class=n>artifactId</span><span class=o>&gt;</span>
-  <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>40</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
+  <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>41</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
 <span class=o>&lt;/</span><span class=n>dependency</span><span class=o>&gt;</span></code></pre></div></div></div><p class=language-py>You will need Docker to be installed in your execution environment.
 To run an embedded flink cluster or use the Flink runner for Python &lt; 3.6
 you will also need to have java available in your execution environment.</p><p class=language-portable>You will need Docker to be installed in your execution environment.</p><h3 id=executing-a-beam-pipeline-on-a-flink-cluster>Executing a Beam pipeline on a Flink Cluster</h3><p class=language-java>For executing a pipeline on a Flink cluster you need to package your program
@@ -104,9 +104,9 @@ with beam.Pipeline(options=options) as p:
 and will not work on remote clusters.
 See <a href=/documentation/runtime/sdk-harness-config/>here</a> for details.</p><h2 id=additional-information-and-caveats>Additional information and caveats</h2><h3 id=monitoring-your-job>Monitoring your job</h3><p>You can monitor a running Flink job using the Flink JobManager Dashboard or its Rest interfaces. By default, this is available at port <code>8081</code> of the JobManager node. If you have a Flink installation on your local machine that would be <code>http://localhost:8081</co [...]
 Many sources like <code>PubSubIO</code> rely on their checkpoints to be acknowledged which can only be done when checkpointing is enabled for the <code>FlinkRunner</code>. To enable checkpointing, please set <span class=language-java><code>checkpointingInterval</code></span><span class=language-py><code>checkpointing_interval</code></span> to the desired checkpointing interval in milliseconds.</p><h2 id=pipeline-options-for-the-flink-runner>Pipeline options for the Flink Runner</h2><p>Wh [...]
-<a href=https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/runners/flink/FlinkPipelineOptions.html>FlinkPipelineOptions</a>
+<a href=https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/runners/flink/FlinkPipelineOptions.html>FlinkPipelineOptions</a>
 reference class:</p><div class=language-java><div class=table-container-wrapper><table class="table table-bordered"><tr><td><code>allowNonRestoredState</code></td><td>Flag indicating whether non restored state is allowed if the savepoint contains state for an operator that is no longer part of the pipeline.</td><td>Default: <code>false</code></td></tr><tr><td><code>autoBalanceWriteFilesShardingEnabled</code></td><td>Flag indicating whether auto-balance sharding for WriteFiles transform s [...]
-<a href=https://beam.apache.org/releases/javadoc/2.40.0/index.html?org/apache/beam/sdk/options/PipelineOptions.html>PipelineOptions</a>
+<a href=https://beam.apache.org/releases/javadoc/2.41.0/index.html?org/apache/beam/sdk/options/PipelineOptions.html>PipelineOptions</a>
 reference.</p><h2 id=flink-version-compatibility>Flink Version Compatibility</h2><p>The Flink cluster version has to match the minor version used by the FlinkRunner.
 The minor version is the first two numbers in the version string, e.g. in <code>1.13.0</code> the
 minor version is <code>1.13</code>.</p><p>We try to track the latest version of Apache Flink at the time of the Beam release.
diff --git a/website/generated-content/documentation/runners/jstorm/index.html b/website/generated-content/documentation/runners/jstorm/index.html
index 4ed9b94fdde..bd0d08d7f2a 100644
--- a/website/generated-content/documentation/runners/jstorm/index.html
+++ b/website/generated-content/documentation/runners/jstorm/index.html
@@ -22,7 +22,7 @@ function blockScroll(){$("body").toggleClass("fixedPosition");}
 function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Documentation</span></li><li><a href=/documentation>Using the Documentation</a></li><li class=section-nav-item--collapsible><span class=section-nav-lis [...]
   <span class=o>&lt;</span><span class=n>groupId</span><span class=o>&gt;</span><span class=n>org</span><span class=o>.</span><span class=na>apache</span><span class=o>.</span><span class=na>beam</span><span class=o>&lt;/</span><span class=n>groupId</span><span class=o>&gt;</span>
   <span class=o>&lt;</span><span class=n>artifactId</span><span class=o>&gt;</span><span class=n>beam</span><span class=o>-</span><span class=n>runners</span><span class=o>-</span><span class=n>jstorm</span><span class=o>&lt;/</span><span class=n>artifactId</span><span class=o>&gt;</span>
-  <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>40</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
+  <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>41</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
 <span class=o>&lt;/</span><span class=n>dependency</span><span class=o>&gt;</span></code></pre></div></div></div><h3 id=deploying-jstorm-with-your-application>Deploying JStorm with your application</h3><p>To run against a Standalone cluster, you can package your program with all Beam dependencies into a fat jar, and then submit the topology with the following command.</p><pre><code>jstorm jar WordCount.jar org.apache.beam.examples.WordCount --runner=org.apache.beam.runners.jstorm.JStormRunner
 </code></pre><p>If you don&rsquo;t want to package a fat jar, you can upload the Beam dependencies onto all cluster nodes(<code>$JSTORM_HOME/lib/ext/beam</code>) first.
 When you submit a topology with argument <code>"--external-libs beam"</code>, JStorm will load the Beam dependencies automatically.</p><pre><code>jstorm jar WordCount.jar org.apache.beam.examples.WordCount --external-libs beam  --runner=org.apache.beam.runners.jstorm.JStormRunner
diff --git a/website/generated-content/documentation/runners/mapreduce/index.html b/website/generated-content/documentation/runners/mapreduce/index.html
index c42e21e20db..84a5352ee9a 100644
--- a/website/generated-content/documentation/runners/mapreduce/index.html
+++ b/website/generated-content/documentation/runners/mapreduce/index.html
@@ -22,7 +22,7 @@ function blockScroll(){$("body").toggleClass("fixedPosition");}
 function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Runners</span></li><li><a href=/documentation/runners/capability-matrix/>Capability Matrix</a></li><li><a href=/documentation/runners/direct/>Direct Ru [...]
   &lt;groupId&gt;org.apache.beam&lt;/groupId&gt;
   &lt;artifactId&gt;beam-runners-mapreduce&lt;/artifactId&gt;
-  &lt;version&gt;2.40.0&lt;/version&gt;
+  &lt;version&gt;2.41.0&lt;/version&gt;
 &lt;/dependency&gt;
 </code></pre><h2 id=deploying-apache-hadoop-mapreduce-with-your-application>Deploying Apache Hadoop MapReduce with your application</h2><p>To execute in a local Hadoop environment, use this command:</p><pre><code>$ mvn exec:java -Dexec.mainClass=org.apache.beam.examples.WordCount \
     -Pmapreduce-runner \
diff --git a/website/generated-content/documentation/runners/samza/index.html b/website/generated-content/documentation/runners/samza/index.html
index 2e1fc744563..06705b0d867 100644
--- a/website/generated-content/documentation/runners/samza/index.html
+++ b/website/generated-content/documentation/runners/samza/index.html
@@ -22,7 +22,7 @@ function blockScroll(){$("body").toggleClass("fixedPosition");}
 function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Runners</span></li><li><a href=/documentation/runners/capability-matrix/>Capability Matrix</a></li><li><a href=/documentation/runners/direct/>Direct Ru [...]
   <span class=o>&lt;</span><span class=n>groupId</span><span class=o>&gt;</span><span class=n>org</span><span class=o>.</span><span class=na>apache</span><span class=o>.</span><span class=na>beam</span><span class=o>&lt;/</span><span class=n>groupId</span><span class=o>&gt;</span>
   <span class=o>&lt;</span><span class=n>artifactId</span><span class=o>&gt;</span><span class=n>beam</span><span class=o>-</span><span class=n>runners</span><span class=o>-</span><span class=n>samza</span><span class=o>&lt;/</span><span class=n>artifactId</span><span class=o>&gt;</span>
-  <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>40</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
+  <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>41</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
   <span class=o>&lt;</span><span class=n>scope</span><span class=o>&gt;</span><span class=n>runtime</span><span class=o>&lt;/</span><span class=n>scope</span><span class=o>&gt;</span>
 <span class=o>&lt;/</span><span class=n>dependency</span><span class=o>&gt;</span>
 
diff --git a/website/generated-content/documentation/runners/spark/index.html b/website/generated-content/documentation/runners/spark/index.html
index 888d1b3116b..bc6435ab823 100644
--- a/website/generated-content/documentation/runners/spark/index.html
+++ b/website/generated-content/documentation/runners/spark/index.html
@@ -31,7 +31,7 @@ the portable Runner. For more information on portability, please visit the
 <a href=/roadmap/portability/>Portability page</a>.</p><nav class=language-switcher><strong>Adapt for:</strong><ul><li data-type=language-java>Non portable (Java)</li><li data-type=language-py>Portable (Java/Python/Go)</li></ul></nav><h2 id=spark-runner-prerequisites-and-setup>Spark Runner prerequisites and setup</h2><p>The Spark runner currently supports Spark&rsquo;s 3.1.x branch.</p><blockquote><p><strong>Note:</strong> Support for Spark 2.4.x is deprecated and will be dropped with th [...]
   <span class=o>&lt;</span><span class=n>groupId</span><span class=o>&gt;</span><span class=n>org</span><span class=o>.</span><span class=na>apache</span><span class=o>.</span><span class=na>beam</span><span class=o>&lt;/</span><span class=n>groupId</span><span class=o>&gt;</span>
   <span class=o>&lt;</span><span class=n>artifactId</span><span class=o>&gt;</span><span class=n>beam</span><span class=o>-</span><span class=n>runners</span><span class=o>-</span><span class=n>spark</span><span class=o>-</span><span class=n>3</span><span class=o>&lt;/</span><span class=n>artifactId</span><span class=o>&gt;</span>
-  <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>40</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
+  <span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=n>2</span><span class=o>.</span><span class=na>41</span><span class=o>.</span><span class=na>0</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
 <span class=o>&lt;/</span><span class=n>dependency</span><span class=o>&gt;</span></code></pre></div></div></div><h3 id=deploying-spark-with-your-application>Deploying Spark with your application</h3><p class=language-java>In some cases, such as running in local mode/Standalone, your (self-contained) application would be required to pack Spark by explicitly adding the following dependencies in your pom.xml:</p><div class="language-java snippet"><div class="notebook-skip code-snippet"><a  [...]
   <span class=o>&lt;</span><span class=n>groupId</span><span class=o>&gt;</span><span class=n>org</span><span class=o>.</span><span class=na>apache</span><span class=o>.</span><span class=na>spark</span><span class=o>&lt;/</span><span class=n>groupId</span><span class=o>&gt;</span>
   <span class=o>&lt;</span><span class=n>artifactId</span><span class=o>&gt;</span><span class=n>spark</span><span class=o>-</span><span class=n>core_2</span><span class=o>.</span><span class=na>12</span><span class=o>&lt;/</span><span class=n>artifactId</span><span class=o>&gt;</span>
@@ -127,8 +127,8 @@ For more on how to generally use <code>spark-submit</code> checkout Spark <a hre
 Spark also has a history server to <a href=https://spark.apache.org/docs/latest/monitoring.html#viewing-after-the-fact>view after the fact</a>.<p class=language-java>Metrics are also available via <a href=https://spark.apache.org/docs/latest/monitoring.html#rest-api>REST API</a>.
 Spark provides a <a href=https://spark.apache.org/docs/latest/monitoring.html#metrics>metrics system</a> that allows reporting Spark metrics to a variety of Sinks.
 The Spark runner reports user-defined Beam Aggregators using this same metrics system and currently supports
-<a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/runners/spark/metrics/sink/GraphiteSink.html>GraphiteSink</a>
-and <a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/runners/spark/metrics/sink/CsvSink.html>CSVSink</a>.
+<a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/runners/spark/metrics/sink/GraphiteSink.html>GraphiteSink</a>
+and <a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/runners/spark/metrics/sink/CsvSink.html>CSVSink</a>.
 Providing support for additional Sinks supported by Spark is easy and straight-forward.</p><p class=language-py>Spark metrics are not yet supported on the portable runner.</p></p><h3 id=streaming-execution>Streaming Execution</h3><p class=language-java><br><b>For RDD/DStream based runner:</b><br>If your pipeline uses an <code>UnboundedSource</code> the Spark Runner will automatically set streaming mode. Forcing streaming mode is mostly used for testing and is not recommended.<br><br><b>F [...]
 Instead, you should use <code>SparkContextOptions</code> which can only be used programmatically and is not a common <code>PipelineOptions</code> implementation.<br><br><b>For Structured Streaming based runner:</b><br>Provided SparkSession and StreamingListeners are not supported on the Spark Structured Streaming runner</p><p class=language-py>Provided SparkContext and StreamingListeners are not supported on the Spark portable runner.</p><h3 id=kubernetes>Kubernetes</h3><p>An <a href=htt [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
diff --git a/website/generated-content/documentation/sdks/feature-comparison/index.html b/website/generated-content/documentation/sdks/feature-comparison/index.html
index 4e627ffca70..3fc7dbdf653 100644
--- a/website/generated-content/documentation/sdks/feature-comparison/index.html
+++ b/website/generated-content/documentation/sdks/feature-comparison/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
 | <a href=/feed.xml>RSS Feed</a><br><br>Apache Beam, Apache, Beam, the Beam logo, and the Apache feather logo are either registered trademarks or trademarks of The Apache Software Foundation. All other products or name brands are trademarks of their respective holders, including The Apache Software Foundation.</div></div><div class="footer__cols__col footer__cols__col__logos"><div class=footer__cols__col--group><div class=footer__cols__col__logo><a href=https://github.com/apache/beam><im [...]
\ No newline at end of file
diff --git a/website/generated-content/documentation/sdks/go-cross-compilation/index.html b/website/generated-content/documentation/sdks/go-cross-compilation/index.html
index 2a5cedf800b..1acd35b7694 100644
--- a/website/generated-content/documentation/sdks/go-cross-compilation/index.html
+++ b/website/generated-content/documentation/sdks/go-cross-compilation/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 To execute a Go binary on a machine, it must be compiled for the matching operating system and processor architecture.
 This has implications for how Go SDK pipelines execute on <a href=/documentation/glossary/#worker>workers</a>.</p><h1 id=development-using-go-run>Development: Using <code>go run</code></h1><p>When starting your in development pipeline against a remote runner, you can use <code>go run</code> from your development environment.
 The Go SDK will cross-compile your pipeline for <code>linux-amd64</code>, and use that as the pipeline&rsquo;s worker binary.</p><p>Alternatively, some local runners support Loopback execution.
diff --git a/website/generated-content/documentation/sdks/go-dependencies/index.html b/website/generated-content/documentation/sdks/go-dependencies/index.html
index 1c621354325..52cdf142b45 100644
--- a/website/generated-content/documentation/sdks/go-dependencies/index.html
+++ b/website/generated-content/documentation/sdks/go-dependencies/index.html
@@ -19,10 +19,10 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 Compile and runtime dependencies for your Beam SDK version are listed in <code>go.sum</code> in the Beam repository.
 This can be found at</p><pre><code>https://raw.githubusercontent.com/apache/beam/v&lt;VERSION_NUMBER&gt;/sdks/go.sum
-</code></pre><p>Replace <code>&lt;VERSION_NUMBER></code> with the major.minor.patch version of the SDK. For example, <a href=https://raw.githubusercontent.com/apache/beam/v2.40.0/sdks/go.sum>https://raw.githubusercontent.com/apache/beam/v2.40.0/sdks/go.sum</a> will provide the dependencies for the 2.40.0 release.</p><p><strong>Note:</strong> To just view direct dependencies, you can view the <code>go.mod</code> file instead, direct dependencies
+</code></pre><p>Replace <code>&lt;VERSION_NUMBER></code> with the major.minor.patch version of the SDK. For example, <a href=https://raw.githubusercontent.com/apache/beam/v2.41.0/sdks/go.sum>https://raw.githubusercontent.com/apache/beam/v2.41.0/sdks/go.sum</a> will provide the dependencies for the 2.41.0 release.</p><p><strong>Note:</strong> To just view direct dependencies, you can view the <code>go.mod</code> file instead, direct dependencies
 are listed in the initial <code>require</code> statement. This can be found at <code>https://raw.githubusercontent.com/apache/beam/v&lt;VERSION_NUMBER>/sdks/go.mod</code></p></div></div><footer class=footer><div class=footer__contained><div class=footer__cols><div class="footer__cols__col footer__cols__col__logos"><div class=footer__cols__col__logo><img src=/images/beam_logo_circle.svg class=footer__logo alt="Beam logo"></div><div class=footer__cols__col__logo><img src=/images/apache_log [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
diff --git a/website/generated-content/documentation/sdks/go/index.html b/website/generated-content/documentation/sdks/go/index.html
index 0d1502d6c3c..40d75464321 100644
--- a/website/generated-content/documentation/sdks/go/index.html
+++ b/website/generated-content/documentation/sdks/go/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 It is based on the following <a href=https://s.apache.org/beam-go-sdk-design-rfc>design</a>.</p><p>Unlike Java and Python, Go is a statically compiled language.
 This means worker binaries may need to be <a href=/documentation/sdks/go-cross-compilation/>cross-compiled</a> to execute on distributed runners.</p><h2 id=get-started-with-the-go-sdk>Get Started with the Go SDK</h2><p>Get started with the <a href=/get-started/quickstart-go>Beam Go SDK quickstart</a> to set up your development environment and run an example pipeline. Then, read through the <a href=/documentation/programming-guide>Beam programming guide</a> to learn the basic concepts tha [...]
 It&rsquo;s possible to write many kinds of transforms, but specific built in transforms may still be missing, or incomplete.</p><p>Requests for specific transforms may be filed to the <a href="https://github.com/apache/beam/issues?q=is%3Aopen+is%3Aissue+label%3Asdk-go"><code>sdk-go</code> component in GitHub Issues</a>.
diff --git a/website/generated-content/documentation/sdks/java-dependencies/index.html b/website/generated-content/documentation/sdks/java-dependencies/index.html
index 9045ed66541..173b7b8e01e 100644
--- a/website/generated-content/documentation/sdks/java-dependencies/index.html
+++ b/website/generated-content/documentation/sdks/java-dependencies/index.html
@@ -19,12 +19,12 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 import additional dependencies. Version collisions can result in unexpected
 behavior in the service. If you are using any of these packages in your code, be
 aware that some libraries are not forward-compatible and you may need to pin to
 the listed versions that will be in scope during execution.</p><p>Compile and runtime dependencies for your Beam SDK version are listed in <code>BeamModulePlugin.groovy</code> in the Beam repository. To view them, perform the following steps:</p><ol><li><p>Open <code>BeamModulePlugin.groovy</code>.</p><pre><code>https://raw.githubusercontent.com/apache/beam/v&lt;VERSION_NUMBER&gt;/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy
-</code></pre><p>Replace <code>&lt;VERSION_NUMBER></code> with the major.minor.patch version of the SDK. For example, <a href=https://raw.githubusercontent.com/apache/beam/v2.40.0/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy>https://raw.githubusercontent.com/apache/beam/v2.40.0/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy</a> will provide the dependencies for the 2.40.0 release.</p></li><li><p>Review the list under <code>project.ext.li [...]
+</code></pre><p>Replace <code>&lt;VERSION_NUMBER></code> with the major.minor.patch version of the SDK. For example, <a href=https://raw.githubusercontent.com/apache/beam/v2.41.0/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy>https://raw.githubusercontent.com/apache/beam/v2.41.0/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy</a> will provide the dependencies for the 2.41.0 release.</p></li><li><p>Review the list under <code>project.ext.li [...]
 export JAVA_VERSION=11
 </code></pre></li><li><p>Create the project.</p><pre><code>mvn archetype:generate \
     -DinteractiveMode=false \
diff --git a/website/generated-content/documentation/sdks/java-extensions/index.html b/website/generated-content/documentation/sdks/java-extensions/index.html
index a314332d2d6..49268f0e5c5 100644
--- a/website/generated-content/documentation/sdks/java-extensions/index.html
+++ b/website/generated-content/documentation/sdks/java-extensions/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 is to simplify the most common cases of join to a simple function call.</p><p>The functions are generic and support joins of any Beam-supported types.
 Input to the join functions are <code>PCollections</code> of <code>Key</code> / <code>Value</code>s. Both
 the left and right <code>PCollection</code>s need the same type for the key. All the join
diff --git a/website/generated-content/documentation/sdks/java-multi-language-pipelines/index.html b/website/generated-content/documentation/sdks/java-multi-language-pipelines/index.html
index 1370b738b7c..49453fdd05e 100644
--- a/website/generated-content/documentation/sdks/java-multi-language-pipelines/index.html
+++ b/website/generated-content/documentation/sdks/java-multi-language-pipelines/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 with the Apache Beam SDK for Java. For a more complete discussion of the topic,
 see
 <a href=/documentation/programming-guide/#multi-language-pipelines>Multi-language pipelines</a>.</p><p>A <em>multi-language pipeline</em> is a pipeline that’s built in one Beam SDK language
diff --git a/website/generated-content/documentation/sdks/java-thirdparty/index.html b/website/generated-content/documentation/sdks/java-thirdparty/index.html
index 1813c8e68bb..748d1d78b36 100644
--- a/website/generated-content/documentation/sdks/java-thirdparty/index.html
+++ b/website/generated-content/documentation/sdks/java-thirdparty/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 the webserver. The format of these log files is a configuration option in the Apache HTTPD server so parsing this
 into useful data elements is normally very hard to do.</p><p>To solve this problem in an easy way a library was created that works in combination with Apache Beam
 and is capable of doing this for both the Apache HTTPD and NGINX.</p><p>The basic idea is that the logformat specification is the schema used to create the line.
diff --git a/website/generated-content/documentation/sdks/java/euphoria/index.html b/website/generated-content/documentation/sdks/java/euphoria/index.html
index d6a87a8559c..56778a10b00 100644
--- a/website/generated-content/documentation/sdks/java/euphoria/index.html
+++ b/website/generated-content/documentation/sdks/java/euphoria/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 In 2015, <a href=https://www.vldb.org/pvldb/vol8/p1792-Akidau.pdf>DataFlow whitepaper</a> inspired original authors to go one step further and also provide the unified API for both stream and batch processing.
 The API has been open-sourced in 2016 and is still in active development. As the Beam&rsquo;s community goal was very similar, we decided to contribute
 the API as a high level DSL over Beam Java SDK and share our effort with the community.</p><p>Euphoria DSL integration is still work in progress and is tracked as part of <a href=https://issues.apache.org/jira/browse/BEAM-3900>BEAM-3900</a>.</p><h2 id=wordcount-example>WordCount Example</h2><p>Lets start with the small example.<div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to [...]
diff --git a/website/generated-content/documentation/sdks/java/index.html b/website/generated-content/documentation/sdks/java/index.html
index cf8f1bba743..ecf3f23dc15 100644
--- a/website/generated-content/documentation/sdks/java/index.html
+++ b/website/generated-content/documentation/sdks/java/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
 | <a href=/feed.xml>RSS Feed</a><br><br>Apache Beam, Apache, Beam, the Beam logo, and the Apache feather logo are either registered trademarks or trademarks of The Apache Software Foundation. All other products or name brands are trademarks of their respective holders, including The Apache Software Foundation.</div></div><div class="footer__cols__col footer__cols__col__logos"><div class=footer__cols__col--group><div class=footer__cols__col__logo><a href=https://github.com/apache/beam><im [...]
\ No newline at end of file
diff --git a/website/generated-content/documentation/sdks/java/testing/nexmark/index.html b/website/generated-content/documentation/sdks/java/testing/nexmark/index.html
index 66c523744ed..69285b7dd3d 100644
--- a/website/generated-content/documentation/sdks/java/testing/nexmark/index.html
+++ b/website/generated-content/documentation/sdks/java/testing/nexmark/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 queries in <a href=https://web.archive.org/web/20100620010601/http://datalab.cs.pdx.edu/niagaraST/NEXMark/>Nexmark research
 paper</a></p><p>These are multiple queries over a three entities model representing on online
 auction system:</p><ul><li><strong>Person</strong> represents a person submitting an item for auction and/or making
@@ -87,7 +87,7 @@ or may be published to Pub/Sub or Kafka.</p><p>The query results may be:</p><ul>
 --stagingLocation=gs://&lt;a gs path for staging&gt; \
 --runner=DataflowRunner \
 --tempLocation=gs://&lt;a gs path for temporary files&gt; \
---filesToStage=target/beam-sdks-java-nexmark-2.40.0.jar
+--filesToStage=target/beam-sdks-java-nexmark-2.41.0.jar
 </code></pre><h3 id=direct-runner-specific-configuration>Direct runner specific configuration</h3><pre><code>--manageResources=false --monitorJobs=true \
 --enforceEncodability=false --enforceImmutability=false
 </code></pre><h3 id=flink-runner-specific-configuration>Flink runner specific configuration</h3><pre><code>--manageResources=false --monitorJobs=true \
@@ -208,7 +208,7 @@ PUBSUB_TOPCI=&lt;existing pubsub topic&gt;
     --driver-memory 512m \
     --executor-memory 512m \
     --executor-cores 1 \
-    sdks/java/testing/nexmark/build/libs/beam-sdks-java-nexmark-2.40.0-spark.jar \
+    sdks/java/testing/nexmark/build/libs/beam-sdks-java-nexmark-2.41.0-spark.jar \
         --runner=SparkRunner \
         --query=0 \
         --streamTimeout=60 \
diff --git a/website/generated-content/documentation/sdks/java/testing/tpcds/index.html b/website/generated-content/documentation/sdks/java/testing/tpcds/index.html
index f59e643ba48..76f44ec1028 100644
--- a/website/generated-content/documentation/sdks/java/testing/tpcds/index.html
+++ b/website/generated-content/documentation/sdks/java/testing/tpcds/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 including queries and data maintenance. The benchmark provides a representative evaluation of performance as a general
 purpose decision support system.&rdquo;</p></blockquote><p>In general, TPC-DS is:</p><ul><li>Industry standard benchmark (OLAP/Data Warehouse);<ul><li><a href=http://www.tpc.org/tpcds/>http://www.tpc.org/tpcds/</a></li></ul></li><li>Implemented for many analytical processing systems - RDBMS, Apache Spark, Apache Flink, etc;</li><li>It provides a wide range of different queries (SQL);</li><li>It incorporates the tools to generate input data of different sizes.</li></ul><h2 id=table-schema [...]
 sales channels: stores, catalogs, and the Internet. The schema includes seven fact tables:</p><ul><li>A pair of fact tables focused on the product sales and returns for each of the three channels</li><li>A single fact table that models inventory for the catalog and internet sales channels.</li></ul><p>In addition, the schema includes 17 dimension tables that are associated with all sales channels.</p></blockquote><h3 id=tables>Tables</h3><ul><li><strong>store_sales</strong> - Every row r [...]
diff --git a/website/generated-content/documentation/sdks/python-dependencies/index.html b/website/generated-content/documentation/sdks/python-dependencies/index.html
index 7d8dd6511e2..a260492b1e6 100644
--- a/website/generated-content/documentation/sdks/python-dependencies/index.html
+++ b/website/generated-content/documentation/sdks/python-dependencies/index.html
@@ -19,12 +19,12 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 import additional dependencies. Version collisions can result in unexpected
 behavior in the service. If you are using any of these packages in your code, be
 aware that some libraries are not forward-compatible and you may need to pin to
 the listed versions that will be in scope during execution.</p><p>Dependencies for your Beam SDK version are listed in <code>setup.py</code> in the Beam repository. To view them, perform the following steps:</p><ol><li><p>Open <code>setup.py</code>.</p><pre><code>https://raw.githubusercontent.com/apache/beam/v&lt;VERSION_NUMBER&gt;/sdks/python/setup.py
-</code></pre><p>Replace <code>&lt;VERSION_NUMBER></code> with the major.minor.patch version of the SDK. For example, <a href=ttps://raw.githubusercontent.com/apache/beam/v2.40.0/sdks/python/setup.py target=_blank><a href=https://raw.githubusercontent.com/apache/beam/v2.40.0/sdks/python/setup.py>https://raw.githubusercontent.com/apache/beam/v2.40.0/sdks/python/setup.py</a></a> will provide the dependencies for the 2.40.0 release.</p></li><li><p>Review the core dependency list under <code> [...]
+</code></pre><p>Replace <code>&lt;VERSION_NUMBER></code> with the major.minor.patch version of the SDK. For example, <a href=ttps://raw.githubusercontent.com/apache/beam/v2.41.0/sdks/python/setup.py target=_blank><a href=https://raw.githubusercontent.com/apache/beam/v2.41.0/sdks/python/setup.py>https://raw.githubusercontent.com/apache/beam/v2.41.0/sdks/python/setup.py</a></a> will provide the dependencies for the 2.41.0 release.</p></li><li><p>Review the core dependency list under <code> [...]
 </code></pre></li><li><p><a href=/get-started/quickstart-py/#download-and-install>Install the Beam Python SDK</a>.</p></li><li><p>Retrieve the list of dependencies.</p><pre><code>$ pip install pipdeptree &amp;&amp; pipdeptree -p apache-beam
 </code></pre></li></ol></div></div><footer class=footer><div class=footer__contained><div class=footer__cols><div class="footer__cols__col footer__cols__col__logos"><div class=footer__cols__col__logo><img src=/images/beam_logo_circle.svg class=footer__logo alt="Beam logo"></div><div class=footer__cols__col__logo><img src=/images/apache_logo_circle.svg class=footer__logo alt="Apache logo"></div></div><div class=footer-wrapper><div class=wrapper-grid><div class=footer__cols__col><div class [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
diff --git a/website/generated-content/documentation/sdks/python-machine-learning/index.html b/website/generated-content/documentation/sdks/python-machine-learning/index.html
index 1a79c78e5f6..0564deb78db 100644
--- a/website/generated-content/documentation/sdks/python-machine-learning/index.html
+++ b/website/generated-content/documentation/sdks/python-machine-learning/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 Pydoc</a></td></table><p><br><br><br></p><p>You can use Apache Beam with the RunInference API to use machine learning (ML) models to do local and remote inference with batch and streaming pipelines. Starting with Apache Beam 2.40.0, PyTorch and Scikit-learn frameworks are supported. You can create multiple types of transforms using the RunInference API: the API takes multiple types of setup parameters from model handlers, and the parameter type determines the model implementation.</p><h2 [...]
 <a href=https://github.com/apache/beam/blob/master/sdks/python/apache_beam/utils/shared.py#L20><code>Shared</code> class documentation</a>.</p><h3 id=multi-model-pipelines>Multi-model pipelines</h3><p>The RunInference API can be composed into multi-model pipelines. Multi-model pipelines can be useful for A/B testing or for building out ensembles that are comprised of models that perform tokenization, sentence segmentation, part-of-speech tagging, named entity extraction, language detecti [...]
 with pipeline as p:
diff --git a/website/generated-content/documentation/sdks/python-multi-language-pipelines/index.html b/website/generated-content/documentation/sdks/python-multi-language-pipelines/index.html
index c53582703c7..4e67ce5fe58 100644
--- a/website/generated-content/documentation/sdks/python-multi-language-pipelines/index.html
+++ b/website/generated-content/documentation/sdks/python-multi-language-pipelines/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 
   <span class=kd>final</span> <span class=n>String</span> <span class=n>prefix</span><span class=o>;</span>
 
diff --git a/website/generated-content/documentation/sdks/python-pipeline-dependencies/index.html b/website/generated-content/documentation/sdks/python-pipeline-dependencies/index.html
index 9354b50edb5..f61139cad06 100644
--- a/website/generated-content/documentation/sdks/python-pipeline-dependencies/index.html
+++ b/website/generated-content/documentation/sdks/python-pipeline-dependencies/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 </code></pre><p>This command creates a <code>requirements.txt</code> file that lists all packages that are installed on your machine, regardless of where they were installed from.</p></li><li><p>Edit the <code>requirements.txt</code> file and leave only the packages that were installed from PyPI and are used in the workflow source. Delete all packages that are not relevant to your code.</p></li><li><p>Run your pipeline with the following command-line option:</p><pre><code> --requirements [...]
 </code></pre><p>The runner will use the <code>requirements.txt</code> file to install your additional dependencies onto the remote workers.</p></li></ol><p><strong>Important:</strong> Remote workers will install all packages listed in the <code>requirements.txt</code> file. Because of this, it&rsquo;s very important that you delete non-PyPI packages from the <code>requirements.txt</code> file, as stated in step 2. If you don&rsquo;t remove non-PyPI packages, the remote workers will fail  [...]
 COPY &lt;path to requirements.txt&gt; /tmp/requirements.txt
diff --git a/website/generated-content/documentation/sdks/python-streaming/index.html b/website/generated-content/documentation/sdks/python-streaming/index.html
index 25284ae5a01..25a121a0d36 100644
--- a/website/generated-content/documentation/sdks/python-streaming/index.html
+++ b/website/generated-content/documentation/sdks/python-streaming/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 <a href=#unsupported-features>limitations</a>) starting with Beam SDK version 2.5.0.</p><h2 id=why-use-streaming-execution>Why use streaming execution?</h2><p>Beam creates an unbounded PCollection if your pipeline reads from a streaming or
 continously-updating data source (such as Cloud Pub/Sub). A runner must
 process an unbounded PCollection using a streaming job that runs continuously,
diff --git a/website/generated-content/documentation/sdks/python-type-safety/index.html b/website/generated-content/documentation/sdks/python-type-safety/index.html
index f5e77731b08..34ad89b059d 100644
--- a/website/generated-content/documentation/sdks/python-type-safety/index.html
+++ b/website/generated-content/documentation/sdks/python-type-safety/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 The Beam SDK for Python implements a subset of <a href=https://www.python.org/dev/peps/pep-0484/>PEP 484</a> and aims to follow it as closely as possible in its own typehints module.</p><p>These flags control Beam type safety:</p><ul><li><p><code>--no_pipeline_type_check</code></p><p>Disables type checking during pipeline construction.
 Default is to perform these checks.</p></li><li><p><code>--runtime_type_check</code></p><p>Enables runtime type checking of every element.
 This may affect pipeline performance, so the default is to skip these checks.</p></li><li><p><code>--type_check_additional</code></p><p>Enables additional type checks. These are no enabled by default to preserve
diff --git a/website/generated-content/documentation/sdks/python/index.html b/website/generated-content/documentation/sdks/python/index.html
index 29e7fea229c..0adbf8bb39c 100644
--- a/website/generated-content/documentation/sdks/python/index.html
+++ b/website/generated-content/documentation/sdks/python/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Languages</span></li><li><span class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a href=/documentation/sdks/java/>Java SDK overvi [...]
 is experimentally available (with some <a href=/documentation/sdks/python-streaming/#unsupported-features>limitations</a>)
 starting with Beam SDK version 2.5.0.</p><h2 id=python-type-safety>Python type safety</h2><p>Python is a dynamically-typed language with no static type checking. The Beam SDK for Python uses type hints during pipeline construction and runtime to try to emulate the correctness guarantees achieved by true static typing. <a href=/documentation/sdks/python-type-safety>Ensuring Python Type Safety</a> walks through how to use type hints, which help you to catch potential bugs up front with the [...]
 new I/O connectors. See the <a href=/documentation/io/developing-io-overview>Developing I/O connectors overview</a>
diff --git a/website/generated-content/get-started/downloads/index.html b/website/generated-content/get-started/downloads/index.html
index 938df50273b..5b5fe1071b0 100644
--- a/website/generated-content/get-started/downloads/index.html
+++ b/website/generated-content/get-started/downloads/index.html
@@ -19,22 +19,22 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Get started</span></li><li><a href=/get-started/beam-overview/>Beam Overview</a></li><li><a href=/get-started/tour-of-beam/>Tour of Beam</a></li><li><s [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Get started</span></li><li><a href=/get-started/beam-overview/>Beam Overview</a></li><li><a href=/get-started/tour-of-beam/>Tour of Beam</a></li><li><s [...]
 central repository. The Java SDK is available on <a href=https://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.apache.beam%22>Maven Central Repository</a>,
 and the Python SDK is available on <a href=https://pypi.python.org/pypi/apache-beam>PyPI</a>.</p><p>For example, if you are developing using Maven and want to use the SDK for Java
 with the <code>DirectRunner</code>, add the following dependencies to your <code>pom.xml</code> file:</p><pre><code>&lt;dependency&gt;
   &lt;groupId&gt;org.apache.beam&lt;/groupId&gt;
   &lt;artifactId&gt;beam-sdks-java-core&lt;/artifactId&gt;
-  &lt;version&gt;2.40.0&lt;/version&gt;
+  &lt;version&gt;2.41.0&lt;/version&gt;
 &lt;/dependency&gt;
 &lt;dependency&gt;
   &lt;groupId&gt;org.apache.beam&lt;/groupId&gt;
   &lt;artifactId&gt;beam-runners-direct-java&lt;/artifactId&gt;
-  &lt;version&gt;2.40.0&lt;/version&gt;
+  &lt;version&gt;2.41.0&lt;/version&gt;
   &lt;scope&gt;runtime&lt;/scope&gt;
 &lt;/dependency&gt;
 </code></pre><p>Similarly in Python, if you are using PyPI and want to use the SDK for Python
-with <code>DirectRunner</code>, add the following requirement to your <code>setup.py</code> file:</p><pre><code>apache-beam==2.40.0
+with <code>DirectRunner</code>, add the following requirement to your <code>setup.py</code> file:</p><pre><code>apache-beam==2.41.0
 </code></pre><p>Additionally, you may want to depend on additional SDK modules, such as IO
 connectors or other extensions, and additional runners to execute your pipeline
 at scale.</p><h2 id=downloading-source-code>Downloading source code</h2><p>You can download the source code package for a release from the links in the
@@ -47,9 +47,12 @@ every release file (or SHA-1 and MD5 checksums for older releases). After you
 download the file, you should calculate a checksum for your download, and make
 sure it is the same as ours.</p><h2 id=api-stability>API stability</h2><p>Apache Beam generally follows the rules of
 <a href=https://semver.org/>semantic versioning</a> with exceptions. Version numbers use
-the form <code>major.minor.patch</code> and are incremented as follows:</p><ul><li>major version for incompatible API changes</li><li>minor version for new functionality added in a backward-compatible manner, infrequent incompatible API changes</li><li>patch version for forward-compatible bug fixes</li></ul><p>Please note that APIs marked <a href=https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/annotations/Experimental.html><code>@Experimental</code></a>
+the form <code>major.minor.patch</code> and are incremented as follows:</p><ul><li>major version for incompatible API changes</li><li>minor version for new functionality added in a backward-compatible manner, infrequent incompatible API changes</li><li>patch version for forward-compatible bug fixes</li></ul><p>Please note that APIs marked <a href=https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/annotations/Experimental.html><code>@Experimental</code></a>
 may change at any point and are not guaranteed to remain compatible across versions.</p><p>Additionally, any API may change before the first stable release, i.e., between
-versions denoted <code>0.x.y</code>.</p><h2 id=releases>Releases</h2><h3 id=2400-2022-06-25>2.40.0 (2022-06-25)</h3><p>Official <a href=https://www.apache.org/dyn/closer.cgi/beam/2.40.0/apache-beam-2.40.0-source-release.zip>source code download</a>.
+versions denoted <code>0.x.y</code>.</p><h2 id=releases>Releases</h2><h3 id=2410-2022-08-todo>2.41.0 (2022-08-TODO)</h3><p>Official <a href=https://www.apache.org/dyn/closer.cgi/beam/2.41.0/apache-beam-2.41.0-source-release.zip>source code download</a>.
+<a href=https://downloads.apache.org/beam/2.41.0/apache-beam-2.41.0-source-release.zip.sha512>SHA-512</a>.
+<a href=https://downloads.apache.org/beam/2.41.0/apache-beam-2.41.0-source-release.zip.asc>signature</a>.</p><p><a href=https://github.com/apache/beam/releases/tag/v2.41.0>Release notes</a>
+<a href=/blog/beam-2.41.0>Blog post</a>.</p><h3 id=2400-2022-06-25>2.40.0 (2022-06-25)</h3><p>Official <a href=https://www.apache.org/dyn/closer.cgi/beam/2.40.0/apache-beam-2.40.0-source-release.zip>source code download</a>.
 <a href=https://downloads.apache.org/beam/2.40.0/apache-beam-2.40.0-source-release.zip.sha512>SHA-512</a>.
 <a href=https://downloads.apache.org/beam/2.40.0/apache-beam-2.40.0-source-release.zip.asc>signature</a>.</p><p><a href=https://github.com/apache/beam/releases/tag/v2.40.0>Release notes</a>
 <a href=/blog/beam-2.40.0>Blog post</a>.</p><h3 id=2390-2022-05-25>2.39.0 (2022-05-25)</h3><p>Official <a href=https://www.apache.org/dyn/closer.cgi/beam/2.39.0/apache-beam-2.39.0-source-release.zip>source code download</a>.
@@ -173,7 +176,7 @@ versions denoted <code>0.x.y</code>.</p><h2 id=releases>Releases</h2><h3 id=2400
 <a href=https://archive.apache.org/dist/beam/2.1.0/apache-beam-2.1.0-source-release.zip.asc>signature</a>.</p><p><a href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12319527&version=12340528">Release notes</a>.</p><h3 id=200-2017-05-17>2.0.0 (2017-05-17)</h3><p>Official <a href=https://archive.apache.org/dist/beam/2.0.0/apache-beam-2.0.0-source-release.zip>source code download</a>.
 <a href=https://archive.apache.org/dist/beam/2.0.0/apache-beam-2.0.0-source-release.zip.sha1>SHA-1</a>.
 <a href=https://archive.apache.org/dist/beam/2.0.0/apache-beam-2.0.0-source-release.zip.md5>MD5</a>.
-<a href=https://archive.apache.org/dist/beam/2.0.0/apache-beam-2.0.0-source-release.zip.asc>signature</a>.</p><p><a href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12319527&version=12339746">Release notes</a>.</p><div class=feedback><p class=update>Last updated on 2022/06/19</p><h3>Have you found everything you were looking for?</h3><p class=description>Was it all useful and clear? Is there anything that you would like to change? Let us know!</p><button class=load- [...]
+<a href=https://archive.apache.org/dist/beam/2.0.0/apache-beam-2.0.0-source-release.zip.asc>signature</a>.</p><p><a href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12319527&version=12339746">Release notes</a>.</p><div class=feedback><p class=update>Last updated on 2022/08/22</p><h3>Have you found everything you were looking for?</h3><p class=description>Was it all useful and clear? Is there anything that you would like to change? Let us know!</p><button class=load- [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
 | <a href=/feed.xml>RSS Feed</a><br><br>Apache Beam, Apache, Beam, the Beam logo, and the Apache feather logo are either registered trademarks or trademarks of The Apache Software Foundation. All other products or name brands are trademarks of their respective holders, including The Apache Software Foundation.</div></div><div class="footer__cols__col footer__cols__col__logos"><div class=footer__cols__col--group><div class=footer__cols__col__logo><a href=https://github.com/apache/beam><im [...]
\ No newline at end of file
diff --git a/website/generated-content/get-started/index.xml b/website/generated-content/get-started/index.xml
index c9afd0482c5..3abfa435ebe 100644
--- a/website/generated-content/get-started/index.xml
+++ b/website/generated-content/get-started/index.xml
@@ -1176,7 +1176,7 @@ for your operating system.&lt;/li>
 &lt;pre>&lt;code class="language-unix" data-lang="unix">mvn archetype:generate \
 -DarchetypeGroupId=org.apache.beam \
 -DarchetypeArtifactId=beam-sdks-java-maven-archetypes-examples \
--DarchetypeVersion=2.40.0 \
+-DarchetypeVersion=2.41.0 \
 -DgroupId=org.example \
 -DartifactId=word-count-beam \
 -Dversion=&amp;#34;0.1&amp;#34; \
@@ -1193,7 +1193,7 @@ for your operating system.&lt;/li>
 &lt;div class="highlight">&lt;pre class="chroma">&lt;code class="language-powerShell" data-lang="powerShell">&lt;span class="n">mvn&lt;/span> &lt;span class="n">archetype&lt;/span>&lt;span class="err">:&lt;/span>&lt;span class="n">generate&lt;/span> &lt;span class="p">`&lt;/span>
 &lt;span class="n">-D&lt;/span> &lt;span class="n">archetypeGroupId&lt;/span>&lt;span class="p">=&lt;/span>&lt;span class="n">org&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">apache&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">beam&lt;/span> &lt;span class="p">`&lt;/span>
 &lt;span class="n">-D&lt;/span> &lt;span class="n">archetypeArtifactId&lt;/span>&lt;span class="p">=&lt;/span>&lt;span class="n">beam-sdks-java-maven-archetypes-examples&lt;/span> &lt;span class="p">`&lt;/span>
-&lt;span class="n">-D&lt;/span> &lt;span class="n">archetypeVersion&lt;/span>&lt;span class="p">=&lt;/span>&lt;span class="n">2&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">40&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">0&lt;/span> &lt;span class="p">`&lt;/span>
+&lt;span class="n">-D&lt;/span> &lt;span class="n">archetypeVersion&lt;/span>&lt;span class="p">=&lt;/span>&lt;span class="n">2&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">41&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">0&lt;/span> &lt;span class="p">`&lt;/span>
 &lt;span class="n">-D&lt;/span> &lt;span class="n">groupId&lt;/span>&lt;span class="p">=&lt;/span>&lt;span class="n">org&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">example&lt;/span> &lt;span class="p">`&lt;/span>
 &lt;span class="n">-D&lt;/span> &lt;span class="n">artifactId&lt;/span>&lt;span class="p">=&lt;/span>&lt;span class="n">word-count-beam&lt;/span> &lt;span class="p">`&lt;/span>
 &lt;span class="n">-D&lt;/span> &lt;span class="n">version&lt;/span>&lt;span class="p">=&lt;/span>&lt;span class="s2">&amp;#34;0.1&amp;#34;&lt;/span> &lt;span class="p">`&lt;/span>
@@ -1310,7 +1310,7 @@ url = uri(&amp;#34;https://packages.confluent.io/maven/&amp;#34;)
 &lt;/a>
 &lt;pre>&lt;code>if (project.hasProperty(&amp;#34;dataflow-runner&amp;#34;)) {
 dependencies {
-runtimeOnly(&amp;#34;org.apache.beam:beam-runners-google-cloud-dataflow-java:2.40.0&amp;#34;)
+runtimeOnly(&amp;#34;org.apache.beam:beam-runners-google-cloud-dataflow-java:2.41.0&amp;#34;)
 }
 }
 &lt;/code>&lt;/pre>
@@ -2065,7 +2065,7 @@ limitations under the License.
 -->
 &lt;h1 id="apache-beam8482-downloads">Apache Beam™ Downloads&lt;/h1>
 &lt;blockquote>
-&lt;p>Beam SDK 2.40.0 is the latest released version.&lt;/p>
+&lt;p>Beam SDK 2.41.0 is the latest released version.&lt;/p>
 &lt;/blockquote>
 &lt;h2 id="using-a-central-repository">Using a central repository&lt;/h2>
 &lt;p>The easiest way to use Apache Beam is via one of the released versions in a
@@ -2076,18 +2076,18 @@ with the &lt;code>DirectRunner&lt;/code>, add the following dependencies to your
 &lt;pre>&lt;code>&amp;lt;dependency&amp;gt;
 &amp;lt;groupId&amp;gt;org.apache.beam&amp;lt;/groupId&amp;gt;
 &amp;lt;artifactId&amp;gt;beam-sdks-java-core&amp;lt;/artifactId&amp;gt;
-&amp;lt;version&amp;gt;2.40.0&amp;lt;/version&amp;gt;
+&amp;lt;version&amp;gt;2.41.0&amp;lt;/version&amp;gt;
 &amp;lt;/dependency&amp;gt;
 &amp;lt;dependency&amp;gt;
 &amp;lt;groupId&amp;gt;org.apache.beam&amp;lt;/groupId&amp;gt;
 &amp;lt;artifactId&amp;gt;beam-runners-direct-java&amp;lt;/artifactId&amp;gt;
-&amp;lt;version&amp;gt;2.40.0&amp;lt;/version&amp;gt;
+&amp;lt;version&amp;gt;2.41.0&amp;lt;/version&amp;gt;
 &amp;lt;scope&amp;gt;runtime&amp;lt;/scope&amp;gt;
 &amp;lt;/dependency&amp;gt;
 &lt;/code>&lt;/pre>
 &lt;p>Similarly in Python, if you are using PyPI and want to use the SDK for Python
 with &lt;code>DirectRunner&lt;/code>, add the following requirement to your &lt;code>setup.py&lt;/code> file:&lt;/p>
-&lt;pre>&lt;code>apache-beam==2.40.0
+&lt;pre>&lt;code>apache-beam==2.41.0
 &lt;/code>&lt;/pre>
 &lt;p>Additionally, you may want to depend on additional SDK modules, such as IO
 connectors or other extensions, and additional runners to execute your pipeline
@@ -2113,11 +2113,17 @@ the form &lt;code>major.minor.patch&lt;/code> and are incremented as follows:&lt
 &lt;li>minor version for new functionality added in a backward-compatible manner, infrequent incompatible API changes&lt;/li>
 &lt;li>patch version for forward-compatible bug fixes&lt;/li>
 &lt;/ul>
-&lt;p>Please note that APIs marked &lt;a href="https://beam.apache.org/releases/javadoc/2.40.0/org/apache/beam/sdk/annotations/Experimental.html">&lt;code>@Experimental&lt;/code>&lt;/a>
+&lt;p>Please note that APIs marked &lt;a href="https://beam.apache.org/releases/javadoc/2.41.0/org/apache/beam/sdk/annotations/Experimental.html">&lt;code>@Experimental&lt;/code>&lt;/a>
 may change at any point and are not guaranteed to remain compatible across versions.&lt;/p>
 &lt;p>Additionally, any API may change before the first stable release, i.e., between
 versions denoted &lt;code>0.x.y&lt;/code>.&lt;/p>
 &lt;h2 id="releases">Releases&lt;/h2>
+&lt;h3 id="2410-2022-08-todo">2.41.0 (2022-08-TODO)&lt;/h3>
+&lt;p>Official &lt;a href="https://www.apache.org/dyn/closer.cgi/beam/2.41.0/apache-beam-2.41.0-source-release.zip">source code download&lt;/a>.
+&lt;a href="https://downloads.apache.org/beam/2.41.0/apache-beam-2.41.0-source-release.zip.sha512">SHA-512&lt;/a>.
+&lt;a href="https://downloads.apache.org/beam/2.41.0/apache-beam-2.41.0-source-release.zip.asc">signature&lt;/a>.&lt;/p>
+&lt;p>&lt;a href="https://github.com/apache/beam/releases/tag/v2.41.0">Release notes&lt;/a>
+&lt;a href="/blog/beam-2.41.0">Blog post&lt;/a>.&lt;/p>
 &lt;h3 id="2400-2022-06-25">2.40.0 (2022-06-25)&lt;/h3>
 &lt;p>Official &lt;a href="https://www.apache.org/dyn/closer.cgi/beam/2.40.0/apache-beam-2.40.0-source-release.zip">source code download&lt;/a>.
 &lt;a href="https://downloads.apache.org/beam/2.40.0/apache-beam-2.40.0-source-release.zip.sha512">SHA-512&lt;/a>.
@@ -4231,7 +4237,7 @@ python -m apache_beam.examples.streaming_wordcount \
 &lt;h3 id="reading-an-unbounded-dataset">Reading an unbounded dataset&lt;/h3>
 &lt;p>This example uses an unbounded dataset as input. The code reads Pub/Sub
 messages from a Pub/Sub subscription or topic using
-&lt;a href="https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.gcp.pubsub.html#apache_beam.io.gcp.pubsub.ReadFromPubSub">&lt;code>beam.io.ReadFromPubSub&lt;/code>&lt;/a>.&lt;/p>
+&lt;a href="https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.gcp.pubsub.html#apache_beam.io.gcp.pubsub.ReadFromPubSub">&lt;code>beam.io.ReadFromPubSub&lt;/code>&lt;/a>.&lt;/p>
 &lt;div class='language-java snippet'>
 &lt;div class="notebook-skip code-snippet">
 &lt;a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
@@ -4269,7 +4275,7 @@ support only bounded output, while others support both bounded and unbounded
 outputs.&lt;/p>
 &lt;p>This example uses an unbounded &lt;code>PCollection&lt;/code> and streams the results to
 Google Pub/Sub. The code formats the results and writes them to a Pub/Sub topic
-using &lt;a href="https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.gcp.pubsub.html#apache_beam.io.gcp.pubsub.WriteToPubSub">&lt;code>beam.io.WriteToPubSub&lt;/code>&lt;/a>.&lt;/p>
+using &lt;a href="https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.gcp.pubsub.html#apache_beam.io.gcp.pubsub.WriteToPubSub">&lt;code>beam.io.WriteToPubSub&lt;/code>&lt;/a>.&lt;/p>
 &lt;div class='language-java snippet'>
 &lt;div class="notebook-skip code-snippet">
 &lt;a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
diff --git a/website/generated-content/get-started/quickstart-java/index.html b/website/generated-content/get-started/quickstart-java/index.html
index 684624659fe..9adaabd8271 100644
--- a/website/generated-content/get-started/quickstart-java/index.html
+++ b/website/generated-content/get-started/quickstart-java/index.html
@@ -33,7 +33,7 @@ for your operating system.</li><li>Optional: If you want to convert your Maven p
 <a href=https://gradle.org/install/>Gradle</a>.</li></ol><h2 id=get-the-example-code>Get the example code</h2><ol><li><p>Generate a Maven example project that builds against the latest Beam release:<div class="shell-unix snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><pre><code class=language-unix data-lang=unix>mvn archetype:generate \
     -DarchetypeGroupId=org.apache.beam \
     -DarchetypeArtifactId=beam-sdks-java-maven-archetypes-examples \
-    -DarchetypeVersion=2.40.0 \
+    -DarchetypeVersion=2.41.0 \
     -DgroupId=org.example \
     -DartifactId=word-count-beam \
     -Dversion=&#34;0.1&#34; \
@@ -42,7 +42,7 @@ for your operating system.</li><li>Optional: If you want to convert your Maven p
    </code></pre></div></div><div class="shell-powerShell snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code class=language-powerShell data-lang=powerShell><span class=n>mvn</span> <span class=n>archetype</span><span class=err>:</span><span class=n>generate</span> <span class=p>`</span>
   <span class=n>-D</span> <span class=n>archetypeGroupId</span><span class=p>=</span><span class=n>org</span><span class=p>.</span><span class=n>apache</span><span class=p>.</span><span class=n>beam</span> <span class=p>`</span>
   <span class=n>-D</span> <span class=n>archetypeArtifactId</span><span class=p>=</span><span class=n>beam-sdks-java-maven-archetypes-examples</span> <span class=p>`</span>
-  <span class=n>-D</span> <span class=n>archetypeVersion</span><span class=p>=</span><span class=n>2</span><span class=p>.</span><span class=n>40</span><span class=p>.</span><span class=n>0</span> <span class=p>`</span>
+  <span class=n>-D</span> <span class=n>archetypeVersion</span><span class=p>=</span><span class=n>2</span><span class=p>.</span><span class=n>41</span><span class=p>.</span><span class=n>0</span> <span class=p>`</span>
   <span class=n>-D</span> <span class=n>groupId</span><span class=p>=</span><span class=n>org</span><span class=p>.</span><span class=n>example</span> <span class=p>`</span>
   <span class=n>-D</span> <span class=n>artifactId</span><span class=p>=</span><span class=n>word-count-beam</span> <span class=p>`</span>
   <span class=n>-D</span> <span class=n>version</span><span class=p>=</span><span class=s2>&#34;0.1&#34;</span> <span class=p>`</span>
@@ -68,7 +68,7 @@ also be prompted to choose a DSL (Groovy or Kotlin). For this tutorial, enter
 }
       </code></pre></div></div></li><li>At the end of the build script, add the following conditional dependency:<div class=snippet><div class="notebook-skip code-snippet without_switcher"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><pre><code>if (project.hasProperty(&#34;dataflow-runner&#34;)) {
     dependencies {
-        runtimeOnly(&#34;org.apache.beam:beam-runners-google-cloud-dataflow-java:2.40.0&#34;)
+        runtimeOnly(&#34;org.apache.beam:beam-runners-google-cloud-dataflow-java:2.41.0&#34;)
     }
 }
       </code></pre></div></div></li><li>At the end of the build script, add the following task:<div class=snippet><div class="notebook-skip code-snippet without_switcher"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><pre><code>task(&#34;execute&#34;, JavaExec::class) {
diff --git a/website/generated-content/get-started/wordcount-example/index.html b/website/generated-content/get-started/wordcount-example/index.html
index 0d4c017d022..a2f1cb2abe7 100644
--- a/website/generated-content/get-started/wordcount-example/index.html
+++ b/website/generated-content/get-started/wordcount-example/index.html
@@ -589,7 +589,7 @@ python -m apache_beam.examples.streaming_wordcount \
 <strong><a href=https://github.com/apache/beam/blob/master/sdks/python/apache_beam/examples/streaming_wordcount.py>streaming_wordcount.py</a>.</strong></p><p><strong>To run this example in Go:</strong></p><blockquote><p><strong>Note:</strong> StreamingWordCount is not yet available for the Go SDK. There is an open issue for this
 (<a href=https://github.com/apache/beam/issues/18879>Issue 18879</a>).</p></blockquote><h3 id=reading-an-unbounded-dataset>Reading an unbounded dataset</h3><p>This example uses an unbounded dataset as input. The code reads Pub/Sub
 messages from a Pub/Sub subscription or topic using
-<a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.gcp.pubsub.html#apache_beam.io.gcp.pubsub.ReadFromPubSub><code>beam.io.ReadFromPubSub</code></a>.</p><div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code class=language-java data-lang=java>  <span class=o>//</span> <span  [...]
+<a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.gcp.pubsub.html#apache_beam.io.gcp.pubsub.ReadFromPubSub><code>beam.io.ReadFromPubSub</code></a>.</p><div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code class=language-java data-lang=java>  <span class=o>//</span> <span  [...]
   <span class=k>if</span> <span class=n>known_args</span><span class=o>.</span><span class=n>input_subscription</span><span class=p>:</span>
     <span class=n>data</span> <span class=o>=</span> <span class=n>p</span> <span class=o>|</span> <span class=n>beam</span><span class=o>.</span><span class=n>io</span><span class=o>.</span><span class=n>ReadFromPubSub</span><span class=p>(</span>
         <span class=n>subscription</span><span class=o>=</span><span class=n>known_args</span><span class=o>.</span><span class=n>input_subscription</span><span class=p>)</span>
@@ -600,7 +600,7 @@ such, you must make sure to choose an appropriate I/O for the results. Some I/Os
 support only bounded output, while others support both bounded and unbounded
 outputs.</p><p>This example uses an unbounded <code>PCollection</code> and streams the results to
 Google Pub/Sub. The code formats the results and writes them to a Pub/Sub topic
-using <a href=https://beam.apache.org/releases/pydoc/2.40.0/apache_beam.io.gcp.pubsub.html#apache_beam.io.gcp.pubsub.WriteToPubSub><code>beam.io.WriteToPubSub</code></a>.</p><div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code class=language-java data-lang=java>  <span class=o>//</span> <s [...]
+using <a href=https://beam.apache.org/releases/pydoc/2.41.0/apache_beam.io.gcp.pubsub.html#apache_beam.io.gcp.pubsub.WriteToPubSub><code>beam.io.WriteToPubSub</code></a>.</p><div class="language-java snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code class=language-java data-lang=java>  <span class=o>//</span> <s [...]
   <span class=n>_</span> <span class=o>=</span> <span class=p>(</span><span class=n>output</span>
     <span class=o>|</span> <span class=s1>&#39;EncodeString&#39;</span> <span class=o>&gt;&gt;</span> <span class=n>Map</span><span class=p>(</span><span class=k>lambda</span> <span class=n>s</span><span class=p>:</span> <span class=n>s</span><span class=o>.</span><span class=n>encode</span><span class=p>(</span><span class=s1>&#39;utf-8&#39;</span><span class=p>))</span>
     <span class=o>|</span> <span class=n>beam</span><span class=o>.</span><span class=n>io</span><span class=o>.</span><span class=n>WriteToPubSub</span><span class=p>(</span><span class=n>known_args</span><span class=o>.</span><span class=n>output_topic</span><span class=p>))</span></code></pre></div></div></div><div class="language-go snippet"><div class="notebook-skip code-snippet"><a class=copy type=button data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img [...]
diff --git a/website/generated-content/sitemap.xml b/website/generated-content/sitemap.xml
index 226d0b28bc1..9b6c1889fda 100644
--- a/website/generated-content/sitemap.xml
+++ b/website/generated-content/sitemap.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/case-studies/intuit/</loc><lastmod>2022-08-18T01:27:08+06:00</lastmod></url><url><loc>/blog/go-2.40/</loc><lastmod>2022-07-06T14:03:32-04:00</lastmod></url><url><loc>/categories/blog/</loc><lastmod>2022-08-22T10:57:12-04:00</lastmod></url><url><loc>/blog/</loc><lastmod>2022-08-22T10:57:12-04:00</lastmod></url><url><loc>/c [...]
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/case-studies/intuit/</loc><lastmod>2022-08-18T01:27:08+06:00</lastmod></url><url><loc>/blog/go-2.40/</loc><lastmod>2022-07-06T14:03:32-04:00</lastmod></url><url><loc>/categories/blog/</loc><lastmod>2022-08-22T22:26:18+00:00</lastmod></url><url><loc>/blog/</loc><lastmod>2022-08-22T22:26:18+00:00</lastmod></url><url><loc>/c [...]
\ No newline at end of file