You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by mi...@apache.org on 2024/02/01 16:43:13 UTC
(superset) 06/09: fix: handle CRLF endings causing sqlglot failure (#26911)
This is an automated email from the ASF dual-hosted git repository.
michaelsmolina pushed a commit to branch 3.0
in repository https://gitbox.apache.org/repos/asf/superset.git
commit efae3e7ce53d17146169f03a29738c6b5c4f4d57
Author: mapledan <ma...@gmail.com>
AuthorDate: Thu Feb 1 10:07:43 2024 +0800
fix: handle CRLF endings causing sqlglot failure (#26911)
(cherry picked from commit f2bf9f72e4f17604f5db80f25815525236a7269a)
---
superset/sql_parse.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/superset/sql_parse.py b/superset/sql_parse.py
index 080572eba1..771ca32928 100644
--- a/superset/sql_parse.py
+++ b/superset/sql_parse.py
@@ -283,7 +283,7 @@ class ParsedQuery:
Note: this uses sqlglot, since it's better at catching more edge cases.
"""
try:
- statements = parse(self.sql, dialect=self._dialect)
+ statements = parse(self.stripped(), dialect=self._dialect)
except ParseError:
logger.warning("Unable to parse SQL (%s): %s", self._dialect, self.sql)
return set()
@@ -493,7 +493,7 @@ class ParsedQuery:
return self._parsed[0].get_type() == "UNKNOWN"
def stripped(self) -> str:
- return self.sql.strip(" \t\n;")
+ return self.sql.strip(" \t\r\n;")
def strip_comments(self) -> str:
return sqlparse.format(self.stripped(), strip_comments=True)