Skip to content

chore: improve chain creation readability and fix must_use_pipeline dead code - #1263

Open
karenc-bq wants to merge 3 commits into
mainfrom
chore/sync-improvements
Open

chore: improve chain creation readability and fix must_use_pipeline dead code#1263
karenc-bq wants to merge 3 commits into
mainfrom
chore/sync-improvements

Conversation

@karenc-bq

Copy link
Copy Markdown
Contributor

Description

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@karenc-bq
karenc-bq marked this pull request as ready for review August 4, 2026 23:34
Comment on lines +989 to +1001
"""Whether this method has to run through the plugin pipeline.

Mirrors JDBC ``ConnectionPluginManager.mustUsePipeline``: the pipeline is required when
the method always uses it, when the chain has not been built yet (nothing to decide on),
when a real plugin is subscribed, or when telemetry is on (so per-plugin NESTED spans are
still emitted).

Intentional deviation from JDBC: the trailing ``is_network_bound_method`` term. JDBC's
DefaultConnectionPlugin is a thin passthrough, but Python's DefaultPlugin.execute also
applies DriverDialect.execute's socket timeout and its interrupt-and-wait cleanup. Skipping
that for a network-bound method lets a later close/reuse race a still-running operation
(env-4 SIGSEGV), so those methods stay on the pipeline regardless of subscriptions.
"""

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Curious on whether we want to leave this full description in? Mostly a style choice on whether we want multiple references to JDBC in the actual code or if this would be better served as a PR description?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good question. Lets keep JDBC references out of the actual code for now. Will remove.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants