Elizabeth Thompson
876b8641e2
fix(sql): catch sqlglot ParseError when parsing RLS predicates
...
SQLStatement.parse_predicate called sqlglot.parse_one unguarded, so a
syntactically invalid RLS predicate raised a raw sqlglot ParseError.
Reachable via apply_rls (e.g. POST /api/v1/sqllab/estimate with
RLS_IN_SQLLAB enabled), this surfaced as an opaque 500 instead of a
typed 422.
Wrap the call to convert ParseError/SqlglotError into SupersetParseError,
mirroring the existing idiom in SQLStatement._parse.
2026-08-28 16:49:17 +00:00
62d74be0af
fix(metadb): apply SUPERSET_META_DB_LIMIT after join instead of per-table ( #36304 ) ( #42598 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
Co-authored-by: Joe Li <joe@preset.io >
2026-08-25 19:31:11 -07:00
1e65d93a83
fix(sql): handle ORDER BY in embedded MSSQL queries ( #43127 )
...
Co-authored-by: Bexultan Mustafin <bexultan.mustafin@ffins.kz >
Co-authored-by: Amin Ghadersohi <amin.ghadersohi@gmail.com >
2026-08-14 14:07:10 -04:00
ʈᵃᵢ
b8ca729f9f
fix(sql): only force a LIMIT onto query expressions ( #43097 )
2026-08-13 10:43:45 -07:00
onheap and keyao_yang
a501fed560
fix(rls): handle same-named CTEs and quoted aliases in the SQL rewrite ( #43005 )
...
Co-authored-by: keyao_yang <keyao.yang@airbnb.com >
2026-08-12 10:38:36 -03:00
Evan Rusackas and Claude Code
b4f3fae288
fix(sql): guard FORCE_LIMIT against SHOW statements ( #36939 ) ( #42588 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-08-11 23:33:15 -07:00
Evan Rusackas and Claude Opus 4.8
584466e02b
fix(sql-lab): improved SQL statement parsing and validation ( #42928 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-08-11 19:35:43 -07:00
Shaitan and Claude Opus 4.8
b6504eb111
fix(sql): resolve schema/catalog-qualified table references in CTE detection ( #42717 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-08-10 12:28:31 -07:00
Evan Rusackas and Claude Code
2f9bde5579
fix(sql): preserve quoted-identifier casing for the HANA dialect ( #39328 ) ( #42731 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-08-04 20:39:35 -07:00
Damian Pendrak
1392fbc9b2
fix(sql): validate Custom SQL metric has an aggregate under GROUP BY ( #42199 )
2026-07-22 09:28:57 +02:00
Evan Rusackas and Claude Code
2aa43f6f0f
fix(sql): stop sanitize_clause from rewriting user SQL semantics ( #36113 ) ( #41125 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-07-06 18:03:26 -07:00
Shaitan and Claude Opus 4.8
2da2db6c7c
feat(sql): schema-qualified table denylist + information_schema/lo_* defaults ( #41120 )
...
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-01 16:57:45 +01:00
3651020014
fix(sql): cap parser input length via SQL_MAX_PARSE_LENGTH config ( #40499 )
...
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
Co-authored-by: sha174n <pedro.sousa@preset.io >
Co-authored-by: Evan Rusackas <evan@preset.io >
2026-07-01 16:32:12 +01:00
215b207ae4
fix(sql): detect set operations and nested selects in subquery check ( #38452 )
...
Co-authored-by: sha174n <pedro.sousa@preset.io >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-22 20:27:32 -07:00
Jean Dupuis
b2e5f80db2
fix(sql): preserve multi-arg DISTINCT in sanitize_clause and format ( #39340 )
2026-06-19 13:02:50 -07:00
6a1091d576
fix(sql): broaden mutating-statement detection in SQL Lab parser ( #40421 )
...
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
Co-authored-by: sha174n <pedro.sousa@preset.io >
2026-06-16 15:07:34 -07:00
b85a2cdab1
fix: ODPS (MaxCompute) data source table preview failed ( #38174 )
...
Co-authored-by: zhutong6688 <zhutong66@163.com >
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-06-05 17:57:44 -07:00
Shaitan and Claude Opus 4.7
56fd991efd
fix(dataset): unify validation for stored and adhoc SQL expressions ( #40392 )
...
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
2026-06-03 12:55:50 +01:00
Shaitan and Claude Sonnet 4.6
f7f50a7977
fix(sqllab): quote CTAS target identifiers and validate tmp_table_name format ( #40245 )
...
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-03 12:55:25 +01:00
Oleg Ovcharuk
17d1a45bc9
feat(ydb): switch to native YDB sqlglot dialect ( #40170 )
2026-06-02 17:13:41 -04:00
Shaitan and Claude Opus 4.7
6eaee211aa
fix(sqllab): require dataset match for raw query access ( #40409 )
...
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
2026-06-02 21:50:27 +01:00
Evan Rusackas and Claude Code
b97d3ef520
fix(api,sql): use json_response in Api.query and log dialect fallback ( #40644 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-06-02 11:48:46 -07:00
c728b4a11f
chore(deps): bump sqlglot from 28.10.0 to 30.8.0 ( #40186 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Claude Code <noreply@anthropic.com >
Co-authored-by: Claude <claude@anthropic.com >
2026-05-22 11:35:30 -07:00
Alexandru Soare
b98bd2a07a
fix(mcp): Block destructive DDL (DROP, TRUNCATE, ALTER) in execute_sql ( #39621 )
2026-05-20 14:29:15 +03:00
Beto Dealmeida
4311a15eb2
feat(sqlglot): Vertica dialect ( #39969 )
2026-05-08 14:34:34 -03:00
Alexandru Soare
adfbbf1433
fix(sql): quote identifiers in transpile_to_dialect to fix case-sensitive column filters ( #39521 )
2026-05-06 10:53:09 +03:00
Vitor Avila
5af17c7976
fix(OpenSearch): OpenSearch dialect for sqlglot ( #39538 )
2026-04-22 12:17:15 -03:00
Luiz Otavio
0b419a07f5
fix: add comments to SQL clause validation ( #39167 )
2026-04-16 09:19:39 -03:00
Beto Dealmeida
a854fa60a2
feat: apply RLS conservatively ( #38683 )
2026-03-17 10:20:09 -04:00
3cb00bf116
feat(database): add Google Cloud Datastore db engine spec ( #37677 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
Co-authored-by: Evan Rusackas <evan@preset.io >
2026-03-06 16:40:17 -08:00
Michael S. Molina
c41942a38a
chore(deps): Upgrade sqlglot from 27.15.2 to 28.10.0 ( #37841 )
2026-02-10 13:13:11 -03:00
Amin Ghadersohi
15b3c96f8e
fix(security): Add table blocklist and fix MCP SQL validation bypass ( #37411 )
2026-02-09 14:12:06 +01:00
87bbd54d0a
feat(examples): Transpile virtual dataset SQL on import ( #37311 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net >
Co-authored-by: bito-code-review[bot] <188872107+bito-code-review[bot]@users.noreply.github.com>
2026-01-22 09:50:05 -08:00
ankitajhanwar2001
d8f7ae83ee
fix(sqlglot): use Athena dialect for awsathena parsing ( #36747 )
2026-01-12 10:06:46 -08:00
Evan Rusackas and Claude
c7a4d4f2cc
fix(sql): handle backtick-quoted identifiers with base dialect ( #36545 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-12-15 13:00:13 -08:00
Beto Dealmeida
e4cb84bc02
feat: DB2 dialect for sqlglot ( #36365 )
2025-12-02 12:19:52 -05:00
amaannawab923
186693b840
feat(ag-grid): add SQLGlot-based SQL escaping for where and having filter clauses ( #36136 )
2025-11-25 09:35:40 +02:00
Beto Dealmeida
f3e620cd0f
fix: RLS in virtual datasets ( #36061 )
2025-11-14 14:21:09 -05:00
Vitor Avila
6701d0ae0c
fix: Use singlestoredb dialect for sqlglot ( #36096 )
2025-11-13 16:10:55 -03:00
Beto Dealmeida
62dc5c0306
fix(cache): ensure SQL is sanitized before cache key generation ( #35419 )
2025-10-02 13:25:54 -04:00
Beto Dealmeida
5428376662
fix(pinot): DATE_ADD function ( #35424 )
2025-10-02 09:56:20 -04:00
Beto Dealmeida
4e093a8e2a
feat: sqlglot dialect for Pinot ( #35333 )
2025-09-29 21:56:35 -04:00
7fb7ac8bef
fix(sql): Add Impala dialect support to sqlglot parser ( #34662 )
...
Co-authored-by: Claude <noreply@anthropic.com >
Co-authored-by: Joe Li <joe@preset.io >
2025-09-04 11:07:09 -07:00
Michael S. Molina
e1234b2264
fix: User-provided Jinja template parameters causing SQL parsing errors ( #34802 )
2025-08-22 14:39:14 -03:00
Beto Dealmeida
6fc734da51
fix: prevent anonymous code in Postgres ( #34412 )
2025-07-31 08:33:34 -04:00
Beto Dealmeida
122bb68e5a
fix: subquery alias in RLS ( #34374 )
2025-07-28 22:58:15 -04:00
Beto Dealmeida
8df5860826
chore: bump sqlglot to latest version (27.3.0) ( #34302 )
2025-07-24 15:38:29 -07:00
Beto Dealmeida
b794b192d1
fix: return 422 on invalid SQL ( #34303 )
2025-07-24 16:40:56 -04:00
Beto Dealmeida
efa8cb6fa4
chore: improve sqlglot parsing ( #34270 )
2025-07-24 10:50:59 -04:00
Beto Dealmeida
5a32777dd0
chore: remove unnecessary disables ( #34139 )
2025-07-11 11:25:02 -04:00