Skip to content

Commit be65ca9

Browse files
authored
Merge branch 'master' into iceberg_table_properties
2 parents a7b77ad + ee590cc commit be65ca9

47 files changed

Lines changed: 2613 additions & 195 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.asf.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ github:
5151

5252
protected_branches:
5353
master: {}
54+
release-2.66.0-postrelease: {}
5455
release-2.66: {}
5556
release-2.65.0-postrelease: {}
5657
release-2.65: {}

.github/workflows/beam_PostCommit_Python_Xlang_IO_Direct.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ name: PostCommit Python Xlang IO Direct
1717

1818
on:
1919
schedule:
20-
- cron: '30 5/6 * * *'
20+
- cron: '30 4/6 * * *'
2121
pull_request_target:
2222
paths: ['release/trigger_all_tests.json', '.github/trigger_files/beam_PostCommit_Python_Xlang_IO_Direct.json']
2323
workflow_dispatch:

.github/workflows/load-tests-pipeline-options/go_GBK_Flink_Batch_10b.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
--influx_namespace=flink
1818
--influx_measurement=go_batch_gbk_1
19-
--input_options=''{\"num_records\":5000000,\"key_size\":1,\"value_size\":9}''
19+
--input_options=''{\"num_records\":500000,\"key_size\":1,\"value_size\":9}''
2020
--iterations=1
2121
--fanout=1
2222
--parallelism=5

CHANGES.md

Lines changed: 6 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,10 @@
7575

7676
* X feature added (Java/Python) ([#X](https://github.com/apache/beam/issues/X)).
7777
* Add pip-based install support for JupyterLab Sidepanel extension ([#35397](https://github.com/apache/beam/issues/#35397)).
78-
* [IcebergIO] Create tables with a specified table properties ([#35496](https://github.com/apache/beam/pull/35496))
78+
* [IcebergIO] Create tables with a specified table properties ([#35496](https://github.com/apache/beam/pull/35496))
79+
* Milvus enrichment handler added (Python) ([#35216](https://github.com/apache/beam/pull/35216)).
80+
Beam now supports Milvus enrichment handler capabilities for vector, keyword,
81+
and hybrid search operations.
7982

8083
## Breaking Changes
8184

@@ -94,11 +97,10 @@
9497

9598
* ([#X](https://github.com/apache/beam/issues/X)).
9699

97-
# [2.66.0] - Unreleased
100+
# [2.66.0] - 2025-07-01
98101

99102
## Beam 3.0.0 Development Highlights
100103

101-
* New highly anticipated feature ([X](https://github.com/apache/beam/issues/X)) to address Milestone Y ([#Y](https://github.com/apache/beam/issues/Y)).
102104
* [Java] Java 8 support is now deprecated. It is still supported until Beam 3.
103105
From now, pipeline submitted by Java 8 client uses Java 11 SDK container for
104106
remote pipeline execution ([35064](https://github.com/apache/beam/pull/35064)).
@@ -107,10 +109,8 @@
107109

108110
* [Python] Several quality-of-life improvements to the vLLM model handler. If you use Beam RunInference with vLLM model handlers, we strongly recommend updating past this release.
109111

110-
111112
## I/Os
112113

113-
* Support for X source added (Java/Python) ([#X](https://github.com/apache/beam/issues/X)).
114114
* [IcebergIO] Now available with Beam SQL! ([#34799](https://github.com/apache/beam/pull/34799))
115115
* [IcebergIO] Support reading with column pruning ([#34856](https://github.com/apache/beam/pull/34856))
116116
* [IcebergIO] Support reading with pushdown filtering ([#34827](https://github.com/apache/beam/pull/34827))
@@ -120,43 +120,28 @@
120120
## New Features / Improvements
121121
* [Beam SQL] Introducing Beam Catalogs ([#35223](https://github.com/apache/beam/pull/35223))
122122
* Adding Google Storage Requests Pays feature (Golang)([#30747](https://github.com/apache/beam/issues/30747)).
123-
* X feature added (Java/Python) ([#X](https://github.com/apache/beam/issues/X)).
124123
* [Python] Prism runner now auto-enabled for some Python pipelines using the direct runner ([#34921](https://github.com/apache/beam/pull/34921)).
125124
* [YAML] WriteToTFRecord and ReadFromTFRecord Beam YAML support
126125
* Python: Added JupyterLab 4.x extension compatibility for enhanced notebook integration ([#34495](https://github.com/apache/beam/pull/34495)).
127126

128127
## Breaking Changes
129128

130-
* X behavior was changed ([#X](https://github.com/apache/beam/issues/X)).
131129
* Yapf version upgraded to 0.43.0 for formatting (Python) ([#34801](https://github.com/apache/beam/pull/34801/)).
132130
* Python: Added JupyterLab 4.x extension compatibility for enhanced notebook integration ([#34495](https://github.com/apache/beam/pull/34495)).
133131
* Python: Argument abbreviation is no longer enabled within Beam. If you previously abbreviated arguments (e.g. `--r` for `--runner`), you will now need to specify the whole argument ([#34934](https://github.com/apache/beam/pull/34934)).
134132
* Java: Users of ReadFromKafkaViaSDF transform might encounter pipeline graph compatibility issues when updating the pipeline. To mitigate, set the `updateCompatibilityVersion` option to the SDK version used for the original pipeline, example `--updateCompatabilityVersion=2.64.0`
135133
* Python: Updated `AlloyDBVectorWriterConfig` API to align with new `PostgresVectorWriter` transform. Heres a quick guide to update your code: ([#35225](https://github.com/apache/beam/issues/35225))
136134

137-
## Deprecations
138-
139-
* X behavior is deprecated and will be removed in X versions ([#X](https://github.com/apache/beam/issues/X)).
140-
141135
## Bugfixes
142136

143-
* Fixed X (Java/Python) ([#X](https://github.com/apache/beam/issues/X)).
144-
* (Java) Fixed cassandraIO ReadAll does not let a pipeline handle or retry exceptions ([#34191](https://github.com/apache/beam/pull/34191)).
137+
* (Java) Fixed CassandraIO ReadAll does not let a pipeline handle or retry exceptions ([#34191](https://github.com/apache/beam/pull/34191)).
145138
* [Python] Fixed vLLM model handlers breaking Beam logging. ([#35053](https://github.com/apache/beam/pull/35053)).
146139
* [Python] Fixed vLLM connection leaks that caused a throughput bottleneck and underutilization of GPU ([#35053](https://github.com/apache/beam/pull/35053)).
147140
* [Python] Fixed vLLM server recovery mechanism in the event of a process termination ([#35234](https://github.com/apache/beam/pull/35234)).
148141
* (Python) Fixed cloudpickle overwriting class states every time loading a same object of dynamic class ([#35062](https://github.com/apache/beam/issues/35062)).
149142
* [Python] Fixed pip install apache-beam[interactive] causes crash on google colab ([#35148](https://github.com/apache/beam/pull/35148)).
150143
* [IcebergIO] Fixed Beam <-> Iceberg conversion logic for arrays of structs and maps of structs ([#35230](https://github.com/apache/beam/pull/35230)).
151144

152-
## Security Fixes
153-
* Fixed [CVE-YYYY-NNNN](https://www.cve.org/CVERecord?id=CVE-YYYY-NNNN) (Java/Python/Go) ([#X](https://github.com/apache/beam/issues/X)).
154-
155-
## Known Issues
156-
157-
[comment]: # ( When updating known issues after release, make sure also update website blog in website/www/site/content/blog.)
158-
* ([#X](https://github.com/apache/beam/issues/X)).
159-
160145
# [2.65.0] - 2025-05-12
161146

162147
## I/Os

buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -606,16 +606,16 @@ class BeamModulePlugin implements Plugin<Project> {
606606
def dbcp2_version = "2.9.0"
607607
def errorprone_version = "2.10.0"
608608
// [bomupgrader] determined by: com.google.api:gax, consistent with: google_cloud_platform_libraries_bom
609-
def gax_version = "2.65.0"
609+
def gax_version = "2.67.0"
610610
def google_ads_version = "33.0.0"
611611
def google_clients_version = "2.0.0"
612612
def google_cloud_bigdataoss_version = "2.2.26"
613613
// [bomupgrader] determined by: com.google.cloud:google-cloud-spanner, consistent with: google_cloud_platform_libraries_bom
614-
def google_cloud_spanner_version = "6.93.0"
614+
def google_cloud_spanner_version = "6.95.1"
615615
def google_code_gson_version = "2.10.1"
616616
def google_oauth_clients_version = "1.34.1"
617617
// [bomupgrader] determined by: io.grpc:grpc-netty, consistent with: google_cloud_platform_libraries_bom
618-
def grpc_version = "1.70.0"
618+
def grpc_version = "1.71.0"
619619
def guava_version = "33.1.0-jre"
620620
def hadoop_version = "3.4.1"
621621
def hamcrest_version = "2.1"
@@ -631,7 +631,7 @@ class BeamModulePlugin implements Plugin<Project> {
631631
def log4j2_version = "2.20.0"
632632
def nemo_version = "0.1"
633633
// [bomupgrader] determined by: io.grpc:grpc-netty, consistent with: google_cloud_platform_libraries_bom
634-
def netty_version = "4.1.118.Final"
634+
def netty_version = "4.1.110.Final"
635635
def postgres_version = "42.2.16"
636636
// [bomupgrader] determined by: com.google.protobuf:protobuf-java, consistent with: google_cloud_platform_libraries_bom
637637
def protobuf_version = "4.29.4"
@@ -733,12 +733,12 @@ class BeamModulePlugin implements Plugin<Project> {
733733
google_api_client_gson : "com.google.api-client:google-api-client-gson:$google_clients_version",
734734
google_api_client_java6 : "com.google.api-client:google-api-client-java6:$google_clients_version",
735735
google_api_common : "com.google.api:api-common", // google_cloud_platform_libraries_bom sets version
736-
google_api_services_bigquery : "com.google.apis:google-api-services-bigquery:v2-rev20250427-2.0.0", // [bomupgrader] sets version
736+
google_api_services_bigquery : "com.google.apis:google-api-services-bigquery:v2-rev20250511-2.0.0", // [bomupgrader] sets version
737737
google_api_services_cloudresourcemanager : "com.google.apis:google-api-services-cloudresourcemanager:v1-rev20240310-2.0.0", // [bomupgrader] sets version
738738
google_api_services_dataflow : "com.google.apis:google-api-services-dataflow:v1b3-rev20250519-$google_clients_version",
739739
google_api_services_healthcare : "com.google.apis:google-api-services-healthcare:v1-rev20240130-$google_clients_version",
740740
google_api_services_pubsub : "com.google.apis:google-api-services-pubsub:v1-rev20220904-$google_clients_version",
741-
google_api_services_storage : "com.google.apis:google-api-services-storage:v1-rev20250424-2.0.0", // [bomupgrader] sets version
741+
google_api_services_storage : "com.google.apis:google-api-services-storage:v1-rev20250524-2.0.0", // [bomupgrader] sets version
742742
google_auth_library_credentials : "com.google.auth:google-auth-library-credentials", // google_cloud_platform_libraries_bom sets version
743743
google_auth_library_oauth2_http : "com.google.auth:google-auth-library-oauth2-http", // google_cloud_platform_libraries_bom sets version
744744
google_cloud_bigquery : "com.google.cloud:google-cloud-bigquery", // google_cloud_platform_libraries_bom sets version
@@ -750,13 +750,13 @@ class BeamModulePlugin implements Plugin<Project> {
750750
google_cloud_core_grpc : "com.google.cloud:google-cloud-core-grpc", // google_cloud_platform_libraries_bom sets version
751751
google_cloud_datacatalog_v1beta1 : "com.google.cloud:google-cloud-datacatalog", // google_cloud_platform_libraries_bom sets version
752752
google_cloud_dataflow_java_proto_library_all: "com.google.cloud.dataflow:google-cloud-dataflow-java-proto-library-all:0.5.160304",
753-
google_cloud_datastore_v1_proto_client : "com.google.cloud.datastore:datastore-v1-proto-client:2.28.1", // [bomupgrader] sets version
753+
google_cloud_datastore_v1_proto_client : "com.google.cloud.datastore:datastore-v1-proto-client:2.29.1", // [bomupgrader] sets version
754754
google_cloud_firestore : "com.google.cloud:google-cloud-firestore", // google_cloud_platform_libraries_bom sets version
755755
google_cloud_pubsub : "com.google.cloud:google-cloud-pubsub", // google_cloud_platform_libraries_bom sets version
756756
google_cloud_pubsublite : "com.google.cloud:google-cloud-pubsublite", // google_cloud_platform_libraries_bom sets version
757757
// [bomupgrader] the BOM version is set by scripts/tools/bomupgrader.py. If update manually, also update
758758
// libraries-bom version on sdks/java/container/license_scripts/dep_urls_java.yaml
759-
google_cloud_platform_libraries_bom : "com.google.cloud:libraries-bom:26.60.0",
759+
google_cloud_platform_libraries_bom : "com.google.cloud:libraries-bom:26.62.0",
760760
google_cloud_secret_manager : "com.google.cloud:google-cloud-secretmanager", // google_cloud_platform_libraries_bom sets version
761761
google_cloud_spanner : "com.google.cloud:google-cloud-spanner", // google_cloud_platform_libraries_bom sets version
762762
google_cloud_spanner_test : "com.google.cloud:google-cloud-spanner:$google_cloud_spanner_version:tests",

runners/google-cloud-dataflow-java/worker/src/main/java/org/apache/beam/runners/dataflow/worker/DataflowBatchWorkerHarness.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -133,8 +133,6 @@ public Boolean call() {
133133
}
134134
// Sleeping a while if there is a problem with the work, then go on with the next work.
135135
} while (success || BackOffUtils.next(sleeper, backOff));
136-
} catch (IOException e) { // Failure of BackOff.
137-
LOG.error("Already tried several attempts at working on tasks. Aborting.", e);
138136
} catch (InterruptedException e) {
139137
Thread.currentThread().interrupt();
140138
LOG.error("Interrupted during thread execution or sleep.", e);

runners/google-cloud-dataflow-java/worker/src/main/java/org/apache/beam/runners/dataflow/worker/streaming/config/StreamingEngineComputationConfigFetcher.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -146,9 +146,6 @@ private static Optional<StreamingConfigTask> fetchConfigWithRetry(
146146
if (!BackOffUtils.next(Sleeper.DEFAULT, backoff)) {
147147
return Optional.empty();
148148
}
149-
} catch (IOException ioe) {
150-
LOG.warn("Error backing off, will not retry: ", ioe);
151-
return Optional.empty();
152149
} catch (InterruptedException ie) {
153150
Thread.currentThread().interrupt();
154151
return Optional.empty();

runners/google-cloud-dataflow-java/worker/src/main/java/org/apache/beam/runners/dataflow/worker/windmill/client/AbstractWindmillStream.java

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
package org.apache.beam.runners.dataflow.worker.windmill.client;
1919

2020
import com.google.errorprone.annotations.CanIgnoreReturnValue;
21-
import java.io.IOException;
2221
import java.io.PrintWriter;
2322
import java.util.Set;
2423
import java.util.concurrent.CountDownLatch;
@@ -211,8 +210,6 @@ private void startStream() {
211210
// Shutdown the stream to clean up any dangling resources and pending requests.
212211
shutdown();
213212
break;
214-
} catch (IOException ioe) {
215-
// Keep trying to create the stream.
216213
}
217214
}
218215
}
@@ -375,11 +372,7 @@ private class ResponseObserver implements StreamObserver<ResponseT> {
375372

376373
@Override
377374
public void onNext(ResponseT response) {
378-
try {
379-
backoff.reset();
380-
} catch (IOException e) {
381-
// Ignore.
382-
}
375+
backoff.reset();
383376
debugMetrics.recordResponse();
384377
onResponse(response);
385378
}
@@ -400,8 +393,6 @@ public void onError(Throwable t) {
400393
} catch (InterruptedException e) {
401394
Thread.currentThread().interrupt();
402395
return;
403-
} catch (IOException e) {
404-
// Ignore.
405396
}
406397

407398
executeSafely(AbstractWindmillStream.this::startStream);

runners/google-cloud-dataflow-java/worker/src/main/java/org/apache/beam/runners/dataflow/worker/windmill/client/grpc/GrpcWindmillServer.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
import static org.apache.beam.runners.dataflow.worker.windmill.client.grpc.stubs.WindmillChannels.localhostChannel;
2323

2424
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
25-
import java.io.IOException;
2625
import java.io.PrintWriter;
2726
import java.util.ArrayList;
2827
import java.util.HashSet;
@@ -291,10 +290,8 @@ private <ResponseT> ResponseT callWithBackoff(Supplier<ResponseT> function) {
291290
if (!BackOffUtils.next(Sleeper.DEFAULT, backoff)) {
292291
throw new WindmillRpcException(e);
293292
}
294-
} catch (IOException | InterruptedException i) {
295-
if (i instanceof InterruptedException) {
296-
Thread.currentThread().interrupt();
297-
}
293+
} catch (InterruptedException i) {
294+
Thread.currentThread().interrupt();
298295
WindmillRpcException rpcException = new WindmillRpcException(e);
299296
rpcException.addSuppressed(i);
300297
throw rpcException;

sdks/go.mod

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ require (
4646
github.com/johannesboyne/gofakes3 v0.0.0-20250106100439-5c39aecd6999
4747
github.com/lib/pq v1.10.9
4848
github.com/linkedin/goavro/v2 v2.14.0
49-
github.com/nats-io/nats-server/v2 v2.11.4
49+
github.com/nats-io/nats-server/v2 v2.11.5
5050
github.com/nats-io/nats.go v1.43.0
5151
github.com/proullon/ramsql v0.1.4
5252
github.com/spf13/cobra v1.9.1
@@ -162,7 +162,7 @@ require (
162162
github.com/cespare/xxhash/v2 v2.3.0 // indirect
163163
github.com/cncf/xds/go v0.0.0-20250326154945-ae57f3c0d45f // indirect
164164
github.com/cpuguy83/dockercfg v0.3.2 // indirect
165-
github.com/docker/docker v28.2.2+incompatible // but required to resolve issue docker has with go1.20
165+
github.com/docker/docker v28.3.0+incompatible // but required to resolve issue docker has with go1.20
166166
github.com/docker/go-units v0.5.0 // indirect
167167
github.com/envoyproxy/protoc-gen-validate v1.2.1 // indirect
168168
github.com/felixge/httpsnoop v1.0.4 // indirect

0 commit comments

Comments
 (0)