[Feature Request]: Honor --quota_project_id in Python GCS/Pub/Sub IO and the Java-backed BigQuery STORAGE_WRITE_API path
Los mantenedores suelen responder en 1 día
@shahar1 ya está trabajando en esto.
Desde el 13/10/2026.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
What would you like to happen?
Follow-up to #37431 / #39203.
#39203 adds a --quota_project_id pipeline option to Python GoogleCloudOptions, which attributes quota/billing of API requests to a chosen GCP project (the x-goog-user-project header). The option lives on the GCP-wide options class, but currently only the Python BigQuery IO transforms honor it (ReadFromBigQuery, ReadAllFromBigQuery, WriteToBigQuery with FILE_LOADS/STREAMING_INSERTS, ReadBigQueryChangeHistory).
It should be honored by the rest of the Python GCP IO so the option means what its name says. The client libraries already support it, so this is plumbing only:
- GCS (
apache_beam/io/gcp/gcsio.py):storage.Client(...)acceptsclient_options={'quota_project_id': ...}(honored bygoogle.cloud.client.Client);resourcemanager_v3.ProjectsClientused by_get_project_numbertakesclient_optionstoo.GcsIOalready receivespipeline_options, so the value is available where the client is built. - Pub/Sub (
apache_beam/io/gcp/pubsub.py,runners/direct/transform_evaluator.py):pubsub.PublisherClient(...)/SubscriberClient(...)forwardclient_optionsto the GAPIC client, which acceptsquota_project_id. WriteToBigQuery(method=STORAGE_WRITE_API): this path expands to the JavaStorageWriteToBigQuerytransform. Java already supports--bigQueryQuotaProjectId(BigQueryOptions), but the Python option never reaches it:PipelineOptionsTranslation.fromProtoconvertslower_underscore→lowerCamel, soquota_project_idarrives asquotaProjectId, which no Java option reads. Options: have the Python transform/expansion forward it under the Java name, or have Java'sBigQueryOptions.getBigQueryQuotaProjectId()fall back to a genericquotaProjectId. (Note: on Dataflow, options reach the Java worker in the legacy{"options": {...}}format without case conversion, so a solution must cover that path as well.)- Other GCP IOs that build clients (Bigtable, Spanner, …) should be checked the same way.
Until then, the option's help text says it is currently honored by BigQuery IO only.
Issue Priority
Priority: 2 (default / most feature requests should be filed as P2)
Issue Components
- Component: Python SDK
- Component: Java SDK
- Component: Go SDK
- Component: Typescript SDK
- Component: IO connector
- Component: Beam YAML
- Component: Beam examples
- Component: Beam playground
- Component: Beam katas
- Component: Website
- Component: Infrastructure
- Component: Spark Runner
- Component: Flink Runner
- Component: Prism Runner
- Component: Twister2 Runner
- Component: Hazelcast Jet Runner
- Component: Google Cloud Dataflow Runner
- Lenguaje dominante
- Java
- Estrellas
- 8.7k
- Forks
- 4.8k
- Merge medio
- 2 d 9 h
- PR fusionados (30 d)
- 368
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de apache/beam
-
Release notes links wrongAbiertoawaiting triage bug P3
Dificultad 1/5 Menos de una hora Aptitud para principiantes 67/100
apache/beam#41197 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
[Bug]: [Python] WriteToJson silently rounds floats to 10 decimal placesPosiblemente ocupada @Abhi2939 la tomó hace 1 día. Abiertoio P2 python yaml
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
apache/beam#41102 · 4 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
apache/beam#39624 · 2 reacciones ·
Los mantenedores suelen responder en 1 día
-
[Bug]: PubsubIO used in batch incorrect batch cutoff sizePosiblemente ocupada @1fanwang la tomó hace 78 días. Abiertobug io P3 pinned pubsub
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
apache/beam#28011 · 4 comentarios ·
Los mantenedores suelen responder en 1 día
-
build P3 sub-task
Dificultad 1/5 Menos de una hora Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
Todos los issues de apache/beam
Issues similares
-
Enhancing the Issue TemplateAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
SasanLabs/VulnerableApp#912 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
desktop edt not responding
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
datafusion-contrib/StreamFusion#653 ·
Los mantenedores suelen responder en 1 día
-
[Bug] Absolute row/column index 0 is ignored for images, hyperlinks and commentsPosiblemente ocupada @fanOfSunny la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día