Skip to content

chore(di): timed expressions - #20709

Draft
P403n1x87 wants to merge 3 commits into
mainfrom
chore/di-timed-expressions
Draft

P403n1x87 wants to merge 3 commits into
mainfrom
chore/di-timed-expressions

Conversation

@P403n1x87

Copy link
Copy Markdown
Collaborator

Description

We time condition execution to make them interruptible under certain circumstances. In particular, we handle potentially long operations like iterating over arbitrarily-sized collections. This gives a slight improvement over the unbounded case that can lead to long-running condition evaluations.

We time condition execution to make them interruptible under
certain circumstances. In particular, we handle potentially long
operations like iterating over arbitrarily-sized collections. This
gives a slight improvement over the unbounded case that can lead
to long-running condition evaluations.
@P403n1x87 P403n1x87 added changelog/no-changelog A changelog entry is not required for this PR. Dynamic Instrumentation Dynamic Instrumentation/Live Debugger labels Oct 1, 2026
@cit-pr-commenter-54b7da

Copy link
Copy Markdown

Circular import analysis

⚠️ Existing circular imports

There are 1 circular imports that already exist on the base branch and have not been changed by this PR.

ddtrace.errortracking._handled_exceptions.bytecode_injector -> ddtrace.errortracking._handled_exceptions.callbacks -> ddtrace.errortracking._handled_exceptions.collector -> ddtrace.errortracking._handled_exceptions.bytecode_reporting -> ddtrace.errortracking._handled_exceptions.bytecode_injector

@cit-pr-commenter-54b7da

cit-pr-commenter-54b7da Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

Codeowners resolved as

Resolved from the full PR diff against main using the target branch CODEOWNERS file.
CODEOWNERS team requests not listed below are not required by the current file set.

ddtrace/debugging/_encoding.py                                          @DataDog/debugger-python
ddtrace/debugging/_exception/replay.py                                  @DataDog/debugger-python
ddtrace/debugging/_expressions.py                                       @DataDog/debugger-python
ddtrace/debugging/_probe/model.py                                       @DataDog/debugger-python
ddtrace/debugging/_probe/remoteconfig.py                                @DataDog/debugger-python
ddtrace/debugging/_redaction.py                                         @DataDog/debugger-python
ddtrace/debugging/_signal/collector.py                                  @DataDog/debugger-python
ddtrace/debugging/_signal/log.py                                        @DataDog/debugger-python
ddtrace/debugging/_signal/metric_sample.py                              @DataDog/debugger-python
ddtrace/debugging/_signal/model.py                                      @DataDog/debugger-python
ddtrace/debugging/_signal/snapshot.py                                   @DataDog/debugger-python
ddtrace/debugging/_signal/tracing.py                                    @DataDog/debugger-python
ddtrace/debugging/_signal/trigger.py                                    @DataDog/debugger-python
ddtrace/debugging/_signal/utils.py                                      @DataDog/debugger-python
tests/debugging/signal/test_collector.py                                @DataDog/debugger-python
tests/debugging/signal/test_metric_sample.py                            @DataDog/debugger-python
tests/debugging/signal/test_model.py                                    @DataDog/debugger-python
tests/debugging/signal/test_snapshot.py                                 @DataDog/debugger-python
tests/debugging/signal/test_utils.py                                    @DataDog/debugger-python
tests/debugging/test_debugger_span_decoration.py                        @DataDog/debugger-python
tests/debugging/test_encoding.py                                        @DataDog/debugger-python
tests/debugging/test_expressions.py                                     @DataDog/debugger-python
tests/debugging/test_redaction.py                                       @DataDog/debugger-python
tests/debugging/utils.py                                                @DataDog/debugger-python

@cit-pr-commenter-54b7da

cit-pr-commenter-54b7da Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

Dependency direction analysis

⚠️ Existing dependency direction violations

There are 201 dependency direction violations that already exist on the base branch and have not been changed by this PR.

Show existing violations (showing 5 of 201 highest severity)
ddtrace.internal.tracemethods -×-> ddtrace.trace  (internal-core -> product:tracing, score=132)
ddtrace.llmobs._integrations.langgraph -×-> ddtrace.trace  (product:llmobs -> product:tracing, score=130)
ddtrace.debugging._exception.replay -×-> ddtrace.trace  (product:debugging -> product:tracing, score=130)
ddtrace.llmobs._integrations.openai_agents -×-> ddtrace.trace  (product:llmobs -> product:tracing, score=130)
ddtrace.llmobs._integrations.claude_agent_sdk -×-> ddtrace.trace  (product:llmobs -> product:tracing, score=130)

To see all violations, download the layers-base.json and layers-pr.json artifacts from this CI job and run:

uv run --script scripts/import-analysis/layers.py compare layers-base.json layers-pr.json

@datadog-datadog-prod-us1

datadog-datadog-prod-us1 Bot commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

Pipelines  Tests

❌ Errors

Your PR has failed checks. Please review the issues below and take necessary action before merging.

🚦 1 Pipeline job failed

DataDog/apm-reliability/dd-trace-py | download win_arm64 wheels

View more details · View in GitLab

⚠️ Warnings

❄️ 1 New flaky test detected

↳ test_timed_redacted_expression_slow_predicate_overshoots_by_one_call[py3.14] from test_redaction.py

View in Flaky Test Management

⌛ 1 Test performance regression detected

Test New execution time Base Execution time Increase DataDog link
test_replay_functions_benchmark[py3.12]
from test_replay.py
0s 0s +0s (+154%) View in Datadog

ℹ️ Info

No other issues found (see more)

🧪 All tests passed

Useful? React with 👍 / 👎

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: c86384e | Docs | View more details | Give us feedback!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog/no-changelog A changelog entry is not required for this PR. Dynamic Instrumentation Dynamic Instrumentation/Live Debugger

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant