From 14e50a1dd2cc923ee9606c2c5dc5aa256c81801d Mon Sep 17 00:00:00 2001 From: Andrew Lamb Date: Wed, 4 Dec 2024 10:40:30 -0500 Subject: [PATCH] moer updates --- datafusion/sql/src/planner.rs | 2 ++ datafusion/sql/src/statement.rs | 15 ++++++++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/datafusion/sql/src/planner.rs b/datafusion/sql/src/planner.rs index 4de05fa9a2f31..545d2a2fe490c 100644 --- a/datafusion/sql/src/planner.rs +++ b/datafusion/sql/src/planner.rs @@ -594,6 +594,8 @@ impl<'a, S: ContextProvider> SqlToRel<'a, S> { | SQLDataType::TinyText | SQLDataType::MediumText | SQLDataType::LongText + | SQLDataType::Bit(_) + |SQLDataType::BitVarying(_) => not_impl_err!( "Unsupported SQL type {sql_type:?}" ), diff --git a/datafusion/sql/src/statement.rs b/datafusion/sql/src/statement.rs index 47a842643b8d5..5aec7a6b1766b 100644 --- a/datafusion/sql/src/statement.rs +++ b/datafusion/sql/src/statement.rs @@ -54,7 +54,9 @@ use datafusion_expr::{ TransactionConclusion, TransactionEnd, TransactionIsolationLevel, TransactionStart, Volatility, WriteOp, }; -use sqlparser::ast::{self, ShowStatementIn, ShowStatementOptions, SqliteOnConflict}; +use sqlparser::ast::{ + self, NullsDistinctOption, ShowStatementIn, ShowStatementOptions, SqliteOnConflict, +}; use sqlparser::ast::{ Assignment, AssignmentTarget, ColumnDef, CreateIndex, CreateTable, CreateTableOptions, Delete, DescribeAlias, Expr as SQLExpr, FromTable, Ident, Insert, @@ -107,6 +109,7 @@ fn calc_inline_constraints_from_columns(columns: &[ColumnDef]) -> Vec SqlToRel<'_, S> { modes, begin: false, modifier, + transaction, } => { if let Some(modifier) = modifier { return not_impl_err!( "Transaction modifier not supported: {modifier}" ); } + if let Some(transaction) = transaction { + return not_impl_err!( + "Transaction kind not supported: {transaction}" + ); + } let isolation_level: ast::TransactionIsolationLevel = modes .iter() .filter_map(|m: &TransactionMode| match m { @@ -963,7 +972,7 @@ impl SqlToRel<'_, S> { }); Ok(LogicalPlan::Statement(statement)) } - Statement::CreateFunction { + Statement::CreateFunction(ast::CreateFunction { or_replace, temporary, name, @@ -973,7 +982,7 @@ impl SqlToRel<'_, S> { behavior, language, .. - } => { + }) => { let return_type = match return_type { Some(t) => Some(self.convert_data_type(&t)?), None => None,