Open killme2008 opened 1 month ago
I did an initial assessment and would like to share some findings: 1) the relevant code fragment that should be extended is src/common/substrait/src/extension_serializer.rs
name if name == RangeSelect::name() => {
let range_select = node
.as_any()
.downcast_ref::<RangeSelect>()
.expect("Failed to downcast to RangeSelect");
Ok(range_select.serialize())
2) the RangeSelect
struct is already defined in src/query/src/range_select/plan.rs. I came across the circular dependency when I was trying to use it, so probably moving this code under common::query
would help.
3) to implement the serialize
method one needs to create the proto
definition in greptime-proto repo.
cc @waynexia
Yep.👍🏻
If the plan seems ok I'll try looking at proto
definition in the background.
If the plan seems ok I'll try looking at
proto
definition in the background.
That would be cool!
@etolbakov Hi, are you still working on this issue? I think it's a fatal issue that needs to be addressed.
sorry Dennis, didn't make much progress to be honest. I will have time these weekend, but I appreciate the urgency, don't want to block you.
sorry Dennis, didn't make much progress to be honest. I will have time these weekend, but I appreciate the urgency, don't want to block you.
Don't worry. I think @waynexia could help you figure out how to address this issue. Please take a look.
Subsrait with DataFusion has so many issues, that we need to push the community to address them.
What type of bug is this?
Unexpected error
What subsystems are affected?
Query Engine
Minimal reproduce step
For example:
It fails with:
The
RangeSelect
plan can't be serizlized.What did you expect to see?
Internal error
What did you see instead?
Create success
What operating system did you use?
Irrelevant.
What version of GreptimeDB did you use?
main branch
Relevant log output and stack trace
No response