Repository navigation
Classify GROUP BY ALL, ORDER BY ALL, WITH RECURSIVE and a table SAMPLE - #107
Merged
Merged
Conversation
The clause classifier emitted clause:group_by, clause:order_by and clause:with for these forms and nothing for a SAMPLE on a table reference, so form-links could not tell group-by.all, order-by.all, with.select.syntax and sample apart. They now also emit clause:group_by_all, clause:order_by_all, clause:with_recursive and clause:sample, beside the clause keys they already had.
clause:group_by_all -> sf.query.group-by.all, clause:order_by_all -> sf.query.order-by.all, clause:with_recursive -> sf.query.with.select.syntax and clause:sample -> sf.query.sample. On main's recorded statements group-by.all goes unmeasured -> matching; the other three have no recorded statement yet. 0 regressions; baseline re-recorded.
kvlonge
added a commit
that referenced
this pull request
Nov 6, 2026
…n form-links for PR #107 Eleven records carried a reviewed time a day ahead. Each now takes the UTC time of the commit that added it.
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.
For C's form linking. The clause classifier gave GROUP BY ALL, ORDER BY ALL and WITH RECURSIVE only their plain clause keys, and gave a SAMPLE on a table reference no key at all, because only
Select.samplewas read. So group-by.all, order-by.all, with.select.syntax and sample could never be measured.Change (crates/sqlquack-core classification): new keys, each emitted alongside the existing clause key:
clause:group_by_allwhenGroupBy.all == Some(true);clause:order_by_allwhenOrderBy.allis set, on SELECT and set operations;clause:with_recursivewhenWith.recursive, on SELECT and set operations;clause:sampleon a table reference withtable_sample.coverage/translation/form-links.tomllinks each one to its form. It's a fail-closed file: an unlinked key fails the measure. C adds the refusal links and the join_using correction afterwards.Evidence
sqlquack censusshows a plainGROUP BY a ORDER BY astill emits onlyclause:group_byandclause:order_by.8470 cases: 6780 passed, 994 diverged as expected, 660 refused, 36 typed, 0 pending, 0 unproven, 0 failed; 220 of 220 equivalences and rules verified.0 regressions, 1 other change. sf.query.group-by.all goes from unmeasured to matching (4 recorded statements). The other three forms have no recorded statement on main yet; C's slices bring them. Baseline re-recorded.