Skip to content

[pull] master from DataDog:master#529

Merged
pull[bot] merged 2 commits into
ConnectionMaster:masterfrom
DataDog:master
May 11, 2026
Merged

[pull] master from DataDog:master#529
pull[bot] merged 2 commits into
ConnectionMaster:masterfrom
DataDog:master

Conversation

@pull

@pull pull Bot commented May 11, 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 : )

eric-weaver and others added 2 commits May 11, 2026 13:46
…3640)

* Close and dereference main db connection on cancel

* Remove unused db_pool reference

* Avoid extra reference to db_pool

* Deference cyclical check variable on shutdown

* Clear functools.partial closures in cancel() to release pool references

_dynamic_queries holds partial(db_pool.get_connection, ...) closures
and _query_manager.executor holds a partial(self.execute_query_raw, db=self.db)
closure. Both root the check instance and pool manager in memory after cancel.

* Null _job_loop_future after join in cancel() to release completed Futures

* dbms="postgres", _compiled_patterns_cache ⌘K to generate command ok next  commit message suggestion  Null _job_loop_future after join in cancel() to release completed Futures Completed Future objects are lightweight but keep the async job reachable in the reference graph. Nulling them immediately after .result() returns removes an unnecessary link that delays GC of the check instance. ok next  Let me check the current state of each _shutdown method and the caches each job holds.  Now I'll update each _shutdown to clear caches.  StatementMetrics -- _full_statement_text_cache, _state, _query_calls_cache, _baseline_metrics:              self._check = None             self._full_statement_text_cache = None             self._state = None             self._query_calls_cache = None             self._baseline_metrics = None         except Exception: StatementSamples -- _collection_strategy_cache, _explain_errors_cache, _explained_statements_ratelimiter, _seen_samples_ratelimiter, _raw_statement_text_cache:              self._check = None             self._collection_strategy_cache = None             self._explain_errors_cache = None             self._explained_statements_ratelimiter = None             self._seen_samples_ratelimiter = None             self._raw_statement_text_cache = None         except Exception: Metadata -- _schema_collector (holds back-ref to check) and _compiled_patterns_cache:              self._check = None             self._schema_collector = None             self._compiled_patterns_cache = None         except Exception: DataObservability only has a small _last_execution dict -- not worth clearing. Its _shutdown already just nulls _check, which is sufficient.  All pre-existing. Done. Ready for your commit.  commit message suggestion  Clear caches in async job shutdown callbacks to free memory eagerly

* Add changelog

* Only invoke shutdown logic is cancel called

* Update tests

* Call shutdown explicitly

* Find and break cyclical references on cancel
… off imgix (#23605)

* Migrate guarddog and supply_chain_firewall dashboard logos off imgix

Replace datadog-securitylabs.imgix.net logo URLs with canonical DRUID
paths on static.datadoghq.com as part of the Imgix CDN migration (WEB-8990).

* add dark_theme
@pull pull Bot locked and limited conversation to collaborators May 11, 2026
@pull pull Bot added the ⤵️ pull label May 11, 2026
@pull pull Bot merged commit 019c285 into ConnectionMaster:master May 11, 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.

2 participants