mikebridge opened a new pull request, #44369:
URL: https://github.com/apache/superset/pull/44369
### SUMMARY
Table charts turn a selected temporal column and time grain into a BASE_AXIS
query object. For semantic views, that object lacked the existing
`isColumnReference` marker, so the semantic mapper rejected a declared
dimension as an unsupported adhoc expression before provider execution.
Mark generated temporal references for semantic-view datasources. Preserve
ordinary dataset SQL objects, raw no-grain dimensions, and dashboard filter
grain precedence. Backend declared-dimension validation remains unchanged.
### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
Before: Table Day/Month queries over a declared semantic temporal dimension
fail before provider execution because the generated BASE_AXIS object is
treated as an adhoc expression.
After: rebuilt Explore renders Day totals30/30/40 and Month totals60/40.
No-grain retains four timestamp rows10/20/30/40. The same six browser controls
pass for a mocked MetricFlow view and an actual SQLite dataset. Screenshots and
captured requests/responses are retained in the SC-121277 validation artifacts.
Browser source: Apache base4c77b0b924a9bd770110915eacd68f5619e8241d plus
this diff, matching frontend/backend. Explore used the separate existing access
compatibility commit89964b2af9576ef994a8ea98e461b55938fb6413 as a test-only
overlay. That unrelated integration support is not included here. MetricFlow
transport was mocked; SQLite queries executed locally. This is not live-dbt or
final deployment-image acceptance.
### TESTING INSTRUCTIONS
1. Enable semantic views and use a provider view with a declared temporal
dimension supporting Day and Month.
2. Create a Table chart with a metric and that temporal dimension. Verify
Day and Month queries succeed and outgoing temporal objects retain the raw
dimension ID with `isColumnReference: true`.
3. Override the chart's grain using dashboard extra form data; verify the
effective grain reaches the query.
4. Clear the grain and verify the raw dimension remains selectable/queryable.
5. Repeat Day/Month/no-grain with an ordinary SQL dataset; verify expected
grouped rows and unchanged SQL query-object shape.
6. Verify an undeclared SQL expression remains rejected for the semantic
view.
Automated:35 Table query tests pass. Before the fix, three new cases failed
specifically on the missing marker. Additional controls cover ordinary
datasets, no grain, extra grain precedence, and an SQL expression that must not
receive the marker. Full staged pre-commit passed including TypeScript.
Generated project declarations with tsc -b plugins/plugin-chart-table
--emitDeclarationOnly; fresh development webpack build passed with one maplibre
warning. Six rebuilt-browser checks and four forced rejection controls passed;
rejected requests made zero provider submissions. Independent frontend/semantic
and cross-model source reviews found no defects.
### ADDITIONAL INFORMATION
- [x] Has associated issue: SC-121277 (related dependency of SC-121088, not
a label regression)
- [x] Required feature flags: existing semantic-layer enablement for
semantic-view checks
- [x] Changes UI: repairs Table query generation; no new controls
- [ ] Includes DB Migration (follow approval process in SIP-59)
- [ ] Migration is atomic, supports rollback & is backwards-compatible
- [ ] Confirm DB migration upgrade and downgrade tested
- [ ] Runtime estimates and downtime expectations provided
- [ ] Introduces new feature or API
- [ ] Removes existing feature or API
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]