Skip to content

Commit 39b8a4a

Browse files
committed
fix(cubesql): Catch wrapper nodes in is_olap_query
1 parent c336b10 commit 39b8a4a

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

rust/cubesql/cubesql/src/compile/query_engine.rs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ use crate::{
1010
df::{
1111
optimizers::{FilterPushDown, FilterSplitMeta, LimitPushDown, SortPushDown},
1212
scan::CubeScanNode,
13-
wrapper::CubeScanWrapperNode,
13+
wrapper::{CubeScanWrappedSqlNode, CubeScanWrapperNode},
1414
},
1515
udf::*,
1616
CubeContext, VariablesProvider,
@@ -580,7 +580,11 @@ fn is_olap_query(parent: &LogicalPlan) -> Result<bool, CompilationError> {
580580

581581
fn pre_visit(&mut self, plan: &LogicalPlan) -> Result<bool, Self::Error> {
582582
if let LogicalPlan::Extension(ext) = plan {
583-
if let Some(_) = ext.node.as_any().downcast_ref::<CubeScanNode>() {
583+
let node = ext.node.as_any();
584+
if node.is::<CubeScanNode>()
585+
|| node.is::<CubeScanWrapperNode>()
586+
|| node.is::<CubeScanWrappedSqlNode>()
587+
{
584588
self.0 = true;
585589

586590
return Ok(false);

0 commit comments

Comments
 (0)