(&self, p: ScanParams)
| 36 | } |
| 37 | |
| 38 | fn plan_scan(&self, p: ScanParams) -> Result<SqlPlan> { |
| 39 | if p.temporal.is_temporal() && !p.bitemporal { |
| 40 | return Err(SqlError::Unsupported { |
| 41 | detail: format!( |
| 42 | "FOR SYSTEM_TIME / FOR VALID_TIME requires a bitemporal \ |
| 43 | collection; '{}' was not created WITH bitemporal = true", |
| 44 | p.collection |
| 45 | ), |
| 46 | }); |
| 47 | } |
| 48 | Ok(SqlPlan::Scan { |
| 49 | collection: p.collection, |
| 50 | alias: p.alias, |
| 51 | engine: EngineType::Columnar, |
| 52 | filters: p.filters, |
| 53 | projection: p.projection, |
| 54 | sort_keys: p.sort_keys, |
| 55 | limit: p.limit, |
| 56 | offset: p.offset, |
| 57 | distinct: p.distinct, |
| 58 | window_functions: p.window_functions, |
| 59 | temporal: p.temporal, |
| 60 | }) |
| 61 | } |
| 62 | |
| 63 | fn plan_point_get(&self, p: PointGetParams) -> Result<SqlPlan> { |
| 64 | Ok(SqlPlan::PointGet { |
nothing calls this directly
no test coverage detected