Skip to content

[pull] master from apache:master - #453

Merged
pull[bot] merged 4 commits into
section9-lab:masterfrom
apache:master
Jun 4, 2026
Merged

[pull] master from apache:master#453
pull[bot] merged 4 commits into
section9-lab:masterfrom
apache:master

Conversation

@pull

@pull pull Bot commented Jun 4, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

lalitium and others added 4 commits June 4, 2026 12:02
* feat: Add Java LogElements transform

* Addressed LogElements review feedback

* Add LogElements tests

* Add LogElements level logging test

* Refactor LogElements logging test
Add a pipeline option to allow fallback to Any
…sableBoundedTrieMetrics experiments (#38749)

* [Python] Honor disableCounterMetrics / disableStringSetMetrics / disableBoundedTrieMetrics experiments

Mirrors the Java SDK Metrics.MetricsFlag behavior so high-throughput Python
pipelines can opt out of user metric kinds that add pressure to metric
backends.

Adds a process-wide MetricsFlag singleton initialized once at worker harness
startup from pipeline experiments. When a flag is set, the corresponding
Delegating* class short-circuits its update path so no MetricCell is touched
and no monitoring info is emitted.

For #38746.

* [Python] Add unit tests for MetricsFlag

Ports Java MetricsTest.testMetricsFlag and adds three smoke tests confirming
the disabled Counter / StringSet / BoundedTrie short-circuit without raising
when called on a no-current-tracker path.

For #38746.

* [Python] Note disable*Metrics support in CHANGES.md

For #38746.

* [Python] Use public class attrs on MetricsFlag for hot-path reads

Drops the classmethod getter wrapper around each disabled flag and exposes
counter_disabled / string_set_disabled / bounded_trie_disabled directly as
public class attributes. The gate runs on every metric update, so swapping
a descriptor lookup + function call for a single attribute load matters in
exactly the high-throughput pipelines these experiments are designed for.
Idiomatic Python; java parity is about behavior, not internal API shape.

Addresses review feedback.

For #38746.

* [Python] Address PR review: simplify MetricsFlag pydoc and reset in finally

* [Python] Address PR review: assert no MetricCell created when disabled

* [Python] Initialize MetricsFlag from Pipeline so in-process runners honor disable* experiments

The previous init only ran in the gRPC SDK harness (sdk_worker_main),
so DirectRunner and other in-process runners silently ignored the
disableCounterMetrics / disableStringSetMetrics / disableBoundedTrieMetrics
experiments. Initializing in Pipeline.__init__ matches the pattern of
FileSystems.set_options at the same call site and mirrors the Java
init point (PipelineRunner.run).

---------

Co-authored-by: Yi Hu <yathu@google.com>
@pull pull Bot locked and limited conversation to collaborators Jun 4, 2026
@pull pull Bot added the ⤵️ pull label Jun 4, 2026
@pull
pull Bot merged commit c01ceea into section9-lab:master Jun 4, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants