Repository navigation
Conversation
Contributor
Author
|
CI note: the |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
conversioncolumn reference in FooConvert Pro analytics and experiment SQLQueryexecution paths, includingget_all_popup_metrics(), plus experiment result SQLProblem and root cause
MariaDB 12.3 added
CONVERSIONas a reserved word. Existing databases can retain theconversioncolumn, but SQL that refers to it without identifier quoting now fails with syntax error 1064. MariaDB documents both the 12.3+ reservation and the requirement to quote reserved identifiers:https://mariadb.com/docs/server/reference/sql-structure/sql-language-structure/reserved-words
The core schema DDL already quotes this column. The remaining affected paths were the Pro single-popup aggregate, all-popup aggregate (including both seven-day windows), daily activity aggregate, and experiment result aggregate.
Fix
The Pro queries now use backticks around the fixed column identifier. Query values and placeholders are unchanged, so this does not alter metric semantics or weaken
$wpdb->prepare()coverage.Verification
php tests/cases/mariadb-reserved-conversion-sql.phpnpm run test:phpnpm run test:js— 24 files / 104 tests passednpm run build— passed with the existing webpack asset-size warningsMariaDB 12.3.3 runtime check
A disposable MariaDB 12.3.3 server reproduced error 1064 for an unquoted
conversionaggregate and accepted the equivalent backtick-quoted identifier. The focused regression separately captures the generated FooConvert queries and verifies every affectedconversionreference is quoted, includingQuery::get_all_popup_metrics().Compatibility and merge order
Backtick quoting is supported across FooConvert's existing MySQL/MariaDB range and only disambiguates the identifier.
fooplugins/fooconvert-pro#2 should merge first. This PR currently points the submodule at its reviewed head commit (
e32664a). If the Pro PR is squash-merged or otherwise rewrites that SHA, update this submodule pointer to the merged Pro commit before merging this PR.No release or deployment is included.