Skip to content

Feature/add order-notes query logging#45

Open
mrtwebdesign wants to merge 1 commit into
developmentfrom
feature/add-notes-query-logging
Open

Feature/add order-notes query logging#45
mrtwebdesign wants to merge 1 commit into
developmentfrom
feature/add-notes-query-logging

Conversation

@mrtwebdesign

Copy link
Copy Markdown
Contributor

Opti-in logging to capture mega-query error source

Add a pre_get_comments probe that records a backtrace for unscoped
wc_get_order_notes() loads -- the "order-notes mega-query" that selects
every order note via WHERE comment_ID IN (...) when called with no
order_id/order__in. The slow-query classifier already flags that such a
query ran, but its caller field stops at wc-order-functions.php; this
probe fires before the query executes and captures the upstream caller,
so the offending plugin/column/export that omits the order scope can be
identified.

Gated by HYPERCART_QUERY_GUARD_LOG_ORDER_NOTES (off by default) and the
hypercart_query_guard_log_order_notes filter; when disabled the hook is
never registered. Volume bounded three ways: non-order-note comment
queries return immediately, scoped per-order loads are ignored, and a
per-request cap guards against a looping caller. Emits an
order_notes_unscoped event through the existing self::log() pipeline.
Bumps version to 1.2.0 and documents the constant in the plugin header.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@mrtwebdesign mrtwebdesign changed the base branch from main to development July 8, 2026 19:05
@mrtwebdesign mrtwebdesign changed the base branch from development to main July 8, 2026 19:05
@mrtwebdesign mrtwebdesign changed the base branch from main to development July 8, 2026 19:05
@mrtwebdesign mrtwebdesign changed the title Feature/add notes query logging Feature/add order-notes query logging Jul 8, 2026
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.

1 participant