diff --git a/.design_docs/CAPABILITY_MATCHING_DESIGN.md b/.design_docs/CAPABILITY_MATCHING_DESIGN.md index 0d93388..d012d0a 100644 --- a/.design_docs/CAPABILITY_MATCHING_DESIGN.md +++ b/.design_docs/CAPABILITY_MATCHING_DESIGN.md @@ -101,12 +101,12 @@ this config serve this query type?" and "fetch this time window from the store" separated. ### Q9: Where does the capability matching logic live? -**Decision**: `sketch_db_common` (the shared crate). Rationale: this logic is pure — it takes a +**Decision**: `asap_types` (the shared crate). Rationale: this logic is pure — it takes a map of `AggregationConfig` values and a `QueryRequirements` and produces an `AggregationIdInfo`. It has no dependency on query engine internals. Putting it in common means the planner and other components can eventually reuse it. -`AggregationIdInfo` (previously defined in `simple_engine.rs`) was moved to `sketch_db_common` as +`AggregationIdInfo` (previously defined in `simple_engine.rs`) was moved to `asap_types` as a prerequisite, since the common function needs to return it. `StreamingConfig` (in `asap-query-engine`) gets a thin wrapper method that delegates to the @@ -208,13 +208,13 @@ Try find_query_config / find_query_config_sql ← existing path (unchanged) │ ▼ StreamingConfig::find_compatible_aggregation(&requirements) - → sketch_db_common::find_compatible_aggregation( + → asap_types::find_compatible_aggregation( &self.aggregation_configs, requirements ) → Option ``` -The `find_compatible_aggregation` function in `sketch_db_common`: +The `find_compatible_aggregation` function in `asap_types`: 1. For each statistic, collects candidates from `StreamingConfig` passing all filters (metric, type, sub-type, window, labels, spatial filter). 2. Sorts candidates by `aggregation_priority` (largest window first). diff --git a/Cargo.lock b/Cargo.lock index 9042bfd..91c4a2b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -381,6 +381,7 @@ name = "asap_planner" version = "0.1.0" dependencies = [ "anyhow", + "asap_types", "chrono", "clap 4.6.0", "indexmap 2.13.1", @@ -391,7 +392,6 @@ dependencies = [ "serde", "serde_json", "serde_yaml", - "sketch_db_common", "sql_utilities", "sqlparser 0.59.0", "tempfile", @@ -420,6 +420,20 @@ dependencies = [ "twox-hash 2.1.2", ] +[[package]] +name = "asap_types" +version = "0.1.0" +dependencies = [ + "anyhow", + "clap 4.6.0", + "promql_utilities", + "serde", + "serde_json", + "serde_yaml", + "sql_utilities", + "tracing", +] + [[package]] name = "async-compression" version = "0.4.19" @@ -3611,6 +3625,7 @@ dependencies = [ "arrow", "asap_planner", "asap_sketchlib", + "asap_types", "async-trait", "axum", "base64 0.21.7", @@ -3643,7 +3658,6 @@ dependencies = [ "serde_json", "serde_yaml", "sketch-core", - "sketch_db_common", "snap", "sql_utilities", "sqlparser 0.59.0", @@ -4195,20 +4209,6 @@ dependencies = [ "xxhash-rust", ] -[[package]] -name = "sketch_db_common" -version = "0.1.0" -dependencies = [ - "anyhow", - "clap 4.6.0", - "promql_utilities", - "serde", - "serde_json", - "serde_yaml", - "sql_utilities", - "tracing", -] - [[package]] name = "slab" version = "0.4.12" diff --git a/Cargo.toml b/Cargo.toml index 89056ff..e656e44 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,7 +5,7 @@ members = [ "asap-common/dependencies/rs/promql_utilities", "asap-common/dependencies/rs/sql_utilities", "asap-common/dependencies/rs/elastic_dsl_utilities", - "asap-common/dependencies/rs/sketch_db_common", + "asap-common/dependencies/rs/asap_types", "asap-common/dependencies/rs/datafusion_summary_library", "asap-common/tests/compare_matched_tokens/rust_tests", "asap-common/tests/compare_patterns", @@ -35,7 +35,7 @@ tokio = { version = "1.0", features = ["full"] } sketch-core = { path = "asap-common/sketch-core" } promql_utilities = { path = "asap-common/dependencies/rs/promql_utilities" } sql_utilities = { path = "asap-common/dependencies/rs/sql_utilities" } -sketch_db_common = { path = "asap-common/dependencies/rs/sketch_db_common" } +asap_types = { path = "asap-common/dependencies/rs/asap_types" } datafusion_summary_library = { path = "asap-common/dependencies/rs/datafusion_summary_library" } elastic_dsl_utilities = { path = "asap-common/dependencies/rs/elastic_dsl_utilities" } asap_planner = { path = "asap-planner-rs" } diff --git a/asap-common/dependencies/rs/sketch_db_common/Cargo.toml b/asap-common/dependencies/rs/asap_types/Cargo.toml similarity index 91% rename from asap-common/dependencies/rs/sketch_db_common/Cargo.toml rename to asap-common/dependencies/rs/asap_types/Cargo.toml index c9c0ba6..6ca7099 100644 --- a/asap-common/dependencies/rs/sketch_db_common/Cargo.toml +++ b/asap-common/dependencies/rs/asap_types/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "sketch_db_common" +name = "asap_types" version.workspace = true edition.workspace = true diff --git a/asap-common/dependencies/rs/sketch_db_common/src/aggregation_config.rs b/asap-common/dependencies/rs/asap_types/src/aggregation_config.rs similarity index 100% rename from asap-common/dependencies/rs/sketch_db_common/src/aggregation_config.rs rename to asap-common/dependencies/rs/asap_types/src/aggregation_config.rs diff --git a/asap-common/dependencies/rs/sketch_db_common/src/aggregation_reference.rs b/asap-common/dependencies/rs/asap_types/src/aggregation_reference.rs similarity index 100% rename from asap-common/dependencies/rs/sketch_db_common/src/aggregation_reference.rs rename to asap-common/dependencies/rs/asap_types/src/aggregation_reference.rs diff --git a/asap-common/dependencies/rs/sketch_db_common/src/capability_matching.rs b/asap-common/dependencies/rs/asap_types/src/capability_matching.rs similarity index 100% rename from asap-common/dependencies/rs/sketch_db_common/src/capability_matching.rs rename to asap-common/dependencies/rs/asap_types/src/capability_matching.rs diff --git a/asap-common/dependencies/rs/sketch_db_common/src/enums.rs b/asap-common/dependencies/rs/asap_types/src/enums.rs similarity index 100% rename from asap-common/dependencies/rs/sketch_db_common/src/enums.rs rename to asap-common/dependencies/rs/asap_types/src/enums.rs diff --git a/asap-common/dependencies/rs/sketch_db_common/src/inference_config.rs b/asap-common/dependencies/rs/asap_types/src/inference_config.rs similarity index 100% rename from asap-common/dependencies/rs/sketch_db_common/src/inference_config.rs rename to asap-common/dependencies/rs/asap_types/src/inference_config.rs diff --git a/asap-common/dependencies/rs/sketch_db_common/src/lib.rs b/asap-common/dependencies/rs/asap_types/src/lib.rs similarity index 100% rename from asap-common/dependencies/rs/sketch_db_common/src/lib.rs rename to asap-common/dependencies/rs/asap_types/src/lib.rs diff --git a/asap-common/dependencies/rs/sketch_db_common/src/promql_schema.rs b/asap-common/dependencies/rs/asap_types/src/promql_schema.rs similarity index 100% rename from asap-common/dependencies/rs/sketch_db_common/src/promql_schema.rs rename to asap-common/dependencies/rs/asap_types/src/promql_schema.rs diff --git a/asap-common/dependencies/rs/sketch_db_common/src/query_config.rs b/asap-common/dependencies/rs/asap_types/src/query_config.rs similarity index 100% rename from asap-common/dependencies/rs/sketch_db_common/src/query_config.rs rename to asap-common/dependencies/rs/asap_types/src/query_config.rs diff --git a/asap-common/dependencies/rs/sketch_db_common/src/query_requirements.rs b/asap-common/dependencies/rs/asap_types/src/query_requirements.rs similarity index 100% rename from asap-common/dependencies/rs/sketch_db_common/src/query_requirements.rs rename to asap-common/dependencies/rs/asap_types/src/query_requirements.rs diff --git a/asap-common/dependencies/rs/sketch_db_common/src/streaming_config.rs b/asap-common/dependencies/rs/asap_types/src/streaming_config.rs similarity index 98% rename from asap-common/dependencies/rs/sketch_db_common/src/streaming_config.rs rename to asap-common/dependencies/rs/asap_types/src/streaming_config.rs index 3532eb9..37b6fa0 100644 --- a/asap-common/dependencies/rs/sketch_db_common/src/streaming_config.rs +++ b/asap-common/dependencies/rs/asap_types/src/streaming_config.rs @@ -103,7 +103,7 @@ impl StreamingConfig { impl StreamingConfig { /// Find a compatible aggregation for the given requirements using capability-based matching. - /// Delegates to `sketch_db_common::find_compatible_aggregation`. + /// Delegates to `asap_types::find_compatible_aggregation`. pub fn find_compatible_aggregation( &self, requirements: &QueryRequirements, diff --git a/asap-common/dependencies/rs/sketch_db_common/src/traits.rs b/asap-common/dependencies/rs/asap_types/src/traits.rs similarity index 100% rename from asap-common/dependencies/rs/sketch_db_common/src/traits.rs rename to asap-common/dependencies/rs/asap_types/src/traits.rs diff --git a/asap-common/dependencies/rs/sketch_db_common/src/utils.rs b/asap-common/dependencies/rs/asap_types/src/utils.rs similarity index 100% rename from asap-common/dependencies/rs/sketch_db_common/src/utils.rs rename to asap-common/dependencies/rs/asap_types/src/utils.rs diff --git a/asap-planner-rs/Cargo.toml b/asap-planner-rs/Cargo.toml index bb7499b..abeaf02 100644 --- a/asap-planner-rs/Cargo.toml +++ b/asap-planner-rs/Cargo.toml @@ -12,7 +12,7 @@ name = "asap-planner" path = "src/main.rs" [dependencies] -sketch_db_common.workspace = true +asap_types.workspace = true promql_utilities.workspace = true sql_utilities.workspace = true sqlparser = "0.59.0" diff --git a/asap-planner-rs/src/config/input.rs b/asap-planner-rs/src/config/input.rs index cc35c99..4683cd0 100644 --- a/asap-planner-rs/src/config/input.rs +++ b/asap-planner-rs/src/config/input.rs @@ -1,6 +1,6 @@ +use asap_types::PromQLSchema; use promql_utilities::data_model::KeyByLabelNames; use serde::Deserialize; -use sketch_db_common::PromQLSchema; #[derive(Debug, Clone, Deserialize)] #[serde(deny_unknown_fields)] diff --git a/asap-planner-rs/src/lib.rs b/asap-planner-rs/src/lib.rs index a0608c3..dbdeb40 100644 --- a/asap-planner-rs/src/lib.rs +++ b/asap-planner-rs/src/lib.rs @@ -5,21 +5,21 @@ pub mod planner; pub mod prometheus_client; pub mod query_log; +use asap_types::enums::QueryLanguage; +use asap_types::inference_config::InferenceConfig; +use asap_types::streaming_config::StreamingConfig; use promql_utilities::data_model::KeyByLabelNames; use serde_yaml::Value as YamlValue; -use sketch_db_common::enums::QueryLanguage; -use sketch_db_common::inference_config::InferenceConfig; -use sketch_db_common::streaming_config::StreamingConfig; use std::path::Path; use tracing::debug; +pub use asap_types::PromQLSchema; pub use config::input::ControllerConfig; pub use config::input::SQLControllerConfig; pub use error::ControllerError; pub use output::generator::{GeneratorOutput, PuntedQuery}; pub use output::sql_generator::SQLRuntimeOptions; pub use prometheus_client::build_schema_from_prometheus; -pub use sketch_db_common::PromQLSchema; #[derive(Debug, Clone, Copy, PartialEq, Eq)] pub enum StreamingEngine { diff --git a/asap-planner-rs/src/main.rs b/asap-planner-rs/src/main.rs index bd7fcba..3ffe683 100644 --- a/asap-planner-rs/src/main.rs +++ b/asap-planner-rs/src/main.rs @@ -1,6 +1,6 @@ use asap_planner::{Controller, RuntimeOptions, SQLController, SQLRuntimeOptions, StreamingEngine}; +use asap_types::enums::QueryLanguage; use clap::Parser; -use sketch_db_common::enums::QueryLanguage; use std::path::PathBuf; #[derive(Parser, Debug)] diff --git a/asap-planner-rs/src/output/generator.rs b/asap-planner-rs/src/output/generator.rs index aaa05a9..ec2c9df 100644 --- a/asap-planner-rs/src/output/generator.rs +++ b/asap-planner-rs/src/output/generator.rs @@ -3,9 +3,9 @@ use serde_json::Value as JsonValue; use serde_yaml::Value as YamlValue; use std::collections::HashMap; +use asap_types::enums::CleanupPolicy; +use asap_types::PromQLSchema; use promql_utilities::data_model::KeyByLabelNames; -use sketch_db_common::enums::CleanupPolicy; -use sketch_db_common::PromQLSchema; use crate::config::input::ControllerConfig; use crate::error::ControllerError; @@ -367,7 +367,7 @@ pub fn params_to_yaml(params: &HashMap) -> YamlValue { fn build_streaming_yaml( dedup_map: &IndexMap, id_map: &HashMap, - metric_schema: &sketch_db_common::PromQLSchema, + metric_schema: &asap_types::PromQLSchema, ) -> Result { let aggregations: Vec = dedup_map .iter() @@ -401,7 +401,7 @@ fn build_inference_yaml( cleanup_policy_str: &str, query_keys_map: &IndexMap)>>, id_map: &HashMap, - metric_schema: &sketch_db_common::PromQLSchema, + metric_schema: &asap_types::PromQLSchema, ) -> Result { let mut cleanup_map = serde_yaml::Mapping::new(); cleanup_map.insert( diff --git a/asap-planner-rs/src/output/sql_generator.rs b/asap-planner-rs/src/output/sql_generator.rs index 21d1bda..a3802ef 100644 --- a/asap-planner-rs/src/output/sql_generator.rs +++ b/asap-planner-rs/src/output/sql_generator.rs @@ -1,6 +1,6 @@ +use asap_types::enums::CleanupPolicy; use indexmap::IndexMap; use serde_yaml::Value as YamlValue; -use sketch_db_common::enums::CleanupPolicy; use std::collections::HashMap; use std::time::{SystemTime, UNIX_EPOCH}; diff --git a/asap-planner-rs/src/planner/logics.rs b/asap-planner-rs/src/planner/logics.rs index 167a6de..6e8160f 100644 --- a/asap-planner-rs/src/planner/logics.rs +++ b/asap-planner-rs/src/planner/logics.rs @@ -1,9 +1,9 @@ use crate::config::input::SketchParameterOverrides; +use asap_types::enums::CleanupPolicy; use promql_utilities::ast_matching::PromQLMatchResult; use promql_utilities::data_model::KeyByLabelNames; use promql_utilities::query_logics::enums::{QueryPatternType, Statistic}; use promql_utilities::query_logics::logics::does_precompute_operator_support_subpopulations; -use sketch_db_common::enums::CleanupPolicy; use std::collections::HashMap; // Default sketch parameters diff --git a/asap-planner-rs/src/planner/single_query.rs b/asap-planner-rs/src/planner/single_query.rs index 12c01c4..55906ae 100644 --- a/asap-planner-rs/src/planner/single_query.rs +++ b/asap-planner-rs/src/planner/single_query.rs @@ -1,3 +1,5 @@ +use asap_types::enums::CleanupPolicy; +use asap_types::PromQLSchema; use promql_utilities::ast_matching::PromQLMatchResult; use promql_utilities::data_model::KeyByLabelNames; use promql_utilities::query_logics::enums::{QueryPatternType, QueryTreatmentType, Statistic}; @@ -8,8 +10,6 @@ use promql_utilities::query_logics::parsing::{ get_metric_and_spatial_filter, get_spatial_aggregation_output_labels, get_statistics_to_compute, }; use serde_json::Value; -use sketch_db_common::enums::CleanupPolicy; -use sketch_db_common::PromQLSchema; use std::collections::HashMap; use crate::config::input::SketchParameterOverrides; diff --git a/asap-planner-rs/src/planner/sql_single_query.rs b/asap-planner-rs/src/planner/sql_single_query.rs index 308cf58..2963f57 100644 --- a/asap-planner-rs/src/planner/sql_single_query.rs +++ b/asap-planner-rs/src/planner/sql_single_query.rs @@ -1,8 +1,8 @@ use std::collections::HashSet; +use asap_types::enums::CleanupPolicy; use promql_utilities::data_model::KeyByLabelNames; use promql_utilities::query_logics::enums::{QueryTreatmentType, Statistic}; -use sketch_db_common::enums::CleanupPolicy; use sql_utilities::ast_matching::sqlhelper::Table; use sql_utilities::ast_matching::sqlpattern_matcher::{QueryType, SQLPatternMatcher}; use sql_utilities::ast_matching::sqlpattern_parser::SQLPatternParser; diff --git a/asap-planner-rs/src/prometheus_client.rs b/asap-planner-rs/src/prometheus_client.rs index b8e8d28..76958fd 100644 --- a/asap-planner-rs/src/prometheus_client.rs +++ b/asap-planner-rs/src/prometheus_client.rs @@ -2,9 +2,9 @@ use std::collections::HashSet; use std::thread; use std::time::Duration; +use asap_types::PromQLSchema; use promql_parser::parser::Expr; use promql_utilities::data_model::KeyByLabelNames; -use sketch_db_common::PromQLSchema; use tracing::{debug, warn}; use crate::error::ControllerError; diff --git a/asap-query-engine/Cargo.toml b/asap-query-engine/Cargo.toml index 1d703a7..05dddb2 100644 --- a/asap-query-engine/Cargo.toml +++ b/asap-query-engine/Cargo.toml @@ -8,7 +8,7 @@ edition.workspace = true sketch-core.workspace = true promql_utilities.workspace = true sql_utilities.workspace = true -sketch_db_common.workspace = true +asap_types.workspace = true datafusion_summary_library.workspace = true asap_planner.workspace = true diff --git a/asap-query-engine/src/bin/bench_precompute_sketch.rs b/asap-query-engine/src/bin/bench_precompute_sketch.rs index c5c02ce..2d98ac8 100644 --- a/asap-query-engine/src/bin/bench_precompute_sketch.rs +++ b/asap-query-engine/src/bin/bench_precompute_sketch.rs @@ -1,3 +1,4 @@ +use asap_types::aggregation_config::AggregationConfig; use clap::Parser; use prost::Message; use query_engine_rust::data_model::{ @@ -10,7 +11,6 @@ use query_engine_rust::precompute_engine::config::{LateDataPolicy, PrecomputeEng use query_engine_rust::precompute_engine::output_sink::OutputSink; use query_engine_rust::precompute_engine::PrecomputeEngine; use query_engine_rust::stores::{SimpleMapStore, Store}; -use sketch_db_common::aggregation_config::AggregationConfig; use std::collections::HashMap; use std::sync::atomic::{AtomicU64, Ordering}; use std::sync::Arc; diff --git a/asap-query-engine/src/bin/test_e2e_precompute.rs b/asap-query-engine/src/bin/test_e2e_precompute.rs index 1bdc2f5..a09357e 100644 --- a/asap-query-engine/src/bin/test_e2e_precompute.rs +++ b/asap-query-engine/src/bin/test_e2e_precompute.rs @@ -8,6 +8,7 @@ //! Usage: //! cargo run --bin test_e2e_precompute +use asap_types::aggregation_config::AggregationConfig; use prost::Message; use query_engine_rust::data_model::{LockStrategy, QueryLanguage, StreamingConfig}; use query_engine_rust::drivers::ingest::prometheus_remote_write::{ @@ -23,7 +24,6 @@ use query_engine_rust::precompute_engine::PrecomputeEngine; use query_engine_rust::stores::SimpleMapStore; use query_engine_rust::utils::file_io::{read_inference_config, read_streaming_config}; use query_engine_rust::{HttpServer, HttpServerConfig}; -use sketch_db_common::aggregation_config::AggregationConfig; use std::collections::HashMap; use std::sync::Arc; diff --git a/asap-query-engine/src/data_model/aggregation_config.rs b/asap-query-engine/src/data_model/aggregation_config.rs index 3480c45..86c9e97 100644 --- a/asap-query-engine/src/data_model/aggregation_config.rs +++ b/asap-query-engine/src/data_model/aggregation_config.rs @@ -1 +1 @@ -pub use sketch_db_common::aggregation_config::*; +pub use asap_types::aggregation_config::*; diff --git a/asap-query-engine/src/data_model/aggregation_reference.rs b/asap-query-engine/src/data_model/aggregation_reference.rs index 151d315..47de677 100644 --- a/asap-query-engine/src/data_model/aggregation_reference.rs +++ b/asap-query-engine/src/data_model/aggregation_reference.rs @@ -1 +1 @@ -pub use sketch_db_common::aggregation_reference::*; +pub use asap_types::aggregation_reference::*; diff --git a/asap-query-engine/src/data_model/enums.rs b/asap-query-engine/src/data_model/enums.rs index bec8a23..ad5a090 100644 --- a/asap-query-engine/src/data_model/enums.rs +++ b/asap-query-engine/src/data_model/enums.rs @@ -9,7 +9,7 @@ pub enum StreamingEngine { Arroyo, } -pub use sketch_db_common::enums::{CleanupPolicy, QueryLanguage}; +pub use asap_types::enums::{CleanupPolicy, QueryLanguage}; #[derive(clap::ValueEnum, Clone, Debug, PartialEq)] pub enum QueryProtocol { diff --git a/asap-query-engine/src/data_model/inference_config.rs b/asap-query-engine/src/data_model/inference_config.rs index 25603eb..bc15f64 100644 --- a/asap-query-engine/src/data_model/inference_config.rs +++ b/asap-query-engine/src/data_model/inference_config.rs @@ -1 +1 @@ -pub use sketch_db_common::inference_config::*; +pub use asap_types::inference_config::*; diff --git a/asap-query-engine/src/data_model/promql_schema.rs b/asap-query-engine/src/data_model/promql_schema.rs index 13e61d5..e2bf3d7 100644 --- a/asap-query-engine/src/data_model/promql_schema.rs +++ b/asap-query-engine/src/data_model/promql_schema.rs @@ -1 +1 @@ -pub use sketch_db_common::promql_schema::*; +pub use asap_types::promql_schema::*; diff --git a/asap-query-engine/src/data_model/query_config.rs b/asap-query-engine/src/data_model/query_config.rs index 80d3ebb..2454c27 100644 --- a/asap-query-engine/src/data_model/query_config.rs +++ b/asap-query-engine/src/data_model/query_config.rs @@ -1 +1 @@ -pub use sketch_db_common::query_config::*; +pub use asap_types::query_config::*; diff --git a/asap-query-engine/src/data_model/streaming_config.rs b/asap-query-engine/src/data_model/streaming_config.rs index 818623c..f9e2e2c 100644 --- a/asap-query-engine/src/data_model/streaming_config.rs +++ b/asap-query-engine/src/data_model/streaming_config.rs @@ -1 +1 @@ -pub use sketch_db_common::streaming_config::*; +pub use asap_types::streaming_config::*; diff --git a/asap-query-engine/src/data_model/traits.rs b/asap-query-engine/src/data_model/traits.rs index 83183d6..2620536 100644 --- a/asap-query-engine/src/data_model/traits.rs +++ b/asap-query-engine/src/data_model/traits.rs @@ -4,7 +4,7 @@ use std::collections::HashMap; use promql_utilities::query_logics::enums::Statistic; -pub use sketch_db_common::traits::SerializableToSink; +pub use asap_types::traits::SerializableToSink; /// Core trait for all aggregates containing shared functionality /// This trait provides common operations like serialization, cloning, and type identification diff --git a/asap-query-engine/src/engines/simple_engine.rs b/asap-query-engine/src/engines/simple_engine.rs index 9fb567d..5f52b94 100644 --- a/asap-query-engine/src/engines/simple_engine.rs +++ b/asap-query-engine/src/engines/simple_engine.rs @@ -17,14 +17,14 @@ use tracing::{debug, warn}; use crate::AggregateCore; +use asap_types::query_requirements::QueryRequirements; +use asap_types::utils::normalize_spatial_filter; use promql_utilities::ast_matching::{PromQLMatchResult, PromQLPattern, PromQLPatternBuilder}; use promql_utilities::data_model::KeyByLabelNames; use promql_utilities::query_logics::enums::{QueryPatternType, Statistic}; use promql_utilities::query_logics::parsing::{ get_metric_and_spatial_filter, get_spatial_aggregation_output_labels, get_statistics_to_compute, }; -use sketch_db_common::query_requirements::QueryRequirements; -use sketch_db_common::utils::normalize_spatial_filter; use sql_utilities::ast_matching::QueryType; use sql_utilities::ast_matching::{SQLPatternMatcher, SQLPatternParser, SQLQuery}; diff --git a/asap-query-engine/src/planner_client.rs b/asap-query-engine/src/planner_client.rs index 982812f..f1c5b30 100644 --- a/asap-query-engine/src/planner_client.rs +++ b/asap-query-engine/src/planner_client.rs @@ -2,9 +2,9 @@ use anyhow::Result; use asap_planner::{ build_schema_from_prometheus, Controller, ControllerConfig, PlannerOutput, RuntimeOptions, }; -use sketch_db_common::enums::QueryLanguage; -use sketch_db_common::inference_config::InferenceConfig; -use sketch_db_common::streaming_config::StreamingConfig; +use asap_types::enums::QueryLanguage; +use asap_types::inference_config::InferenceConfig; +use asap_types::streaming_config::StreamingConfig; use tracing::warn; pub struct PlannerResult { diff --git a/asap-query-engine/src/precompute_engine/accumulator_factory.rs b/asap-query-engine/src/precompute_engine/accumulator_factory.rs index b446b19..c1b6c9c 100644 --- a/asap-query-engine/src/precompute_engine/accumulator_factory.rs +++ b/asap-query-engine/src/precompute_engine/accumulator_factory.rs @@ -4,7 +4,7 @@ use crate::precompute_operators::{ IncreaseAccumulator, MinMaxAccumulator, MultipleIncreaseAccumulator, MultipleMinMaxAccumulator, MultipleSumAccumulator, SumAccumulator, }; -use sketch_db_common::aggregation_config::AggregationConfig; +use asap_types::aggregation_config::AggregationConfig; /// Generate the two boilerplate clone-based `AccumulatorUpdater` methods /// for updaters whose inner `acc` field implements `Clone + AggregateCore`. diff --git a/asap-query-engine/src/precompute_engine/engine.rs b/asap-query-engine/src/precompute_engine/engine.rs index cd6b428..4ae38ab 100644 --- a/asap-query-engine/src/precompute_engine/engine.rs +++ b/asap-query-engine/src/precompute_engine/engine.rs @@ -6,8 +6,8 @@ use crate::precompute_engine::ingest_handler::{ use crate::precompute_engine::output_sink::OutputSink; use crate::precompute_engine::series_router::{SeriesRouter, WorkerMessage}; use crate::precompute_engine::worker::{Worker, WorkerRuntimeConfig}; +use asap_types::aggregation_config::AggregationConfig; use axum::{routing::post, Router}; -use sketch_db_common::aggregation_config::AggregationConfig; use std::collections::HashMap; use std::sync::Arc; use tokio::net::TcpListener; diff --git a/asap-query-engine/src/precompute_engine/worker.rs b/asap-query-engine/src/precompute_engine/worker.rs index f8459d7..30c1fd0 100644 --- a/asap-query-engine/src/precompute_engine/worker.rs +++ b/asap-query-engine/src/precompute_engine/worker.rs @@ -8,7 +8,7 @@ use crate::precompute_engine::series_buffer::SeriesBuffer; use crate::precompute_engine::series_router::WorkerMessage; use crate::precompute_engine::window_manager::WindowManager; use crate::precompute_operators::sum_accumulator::SumAccumulator; -use sketch_db_common::aggregation_config::AggregationConfig; +use asap_types::aggregation_config::AggregationConfig; use std::collections::{BTreeMap, HashMap}; use std::sync::Arc; use tokio::sync::mpsc; diff --git a/asap-query-engine/src/query_tracker/tracker.rs b/asap-query-engine/src/query_tracker/tracker.rs index fc03b7a..f2323e7 100644 --- a/asap-query-engine/src/query_tracker/tracker.rs +++ b/asap-query-engine/src/query_tracker/tracker.rs @@ -139,8 +139,8 @@ mod tests { use super::*; use crate::planner_client::PlannerResult; use anyhow::Result; - use sketch_db_common::inference_config::InferenceConfig; - use sketch_db_common::streaming_config::StreamingConfig; + use asap_types::inference_config::InferenceConfig; + use asap_types::streaming_config::StreamingConfig; use std::collections::HashMap; use std::sync::atomic::{AtomicUsize, Ordering}; @@ -163,8 +163,8 @@ mod tests { Ok(PlannerResult { streaming_config: StreamingConfig::new(HashMap::new()), inference_config: InferenceConfig::new( - sketch_db_common::enums::QueryLanguage::promql, - sketch_db_common::enums::CleanupPolicy::NoCleanup, + asap_types::enums::QueryLanguage::promql, + asap_types::enums::CleanupPolicy::NoCleanup, ), punted_queries: vec![], }) diff --git a/asap-query-engine/src/utils/promql.rs b/asap-query-engine/src/utils/promql.rs index 7d12a8f..3a96864 100644 --- a/asap-query-engine/src/utils/promql.rs +++ b/asap-query-engine/src/utils/promql.rs @@ -1,4 +1,4 @@ -pub use sketch_db_common::utils::normalize_spatial_filter; +pub use asap_types::utils::normalize_spatial_filter; #[cfg(test)] mod tests { diff --git a/asap-query-engine/tests/e2e_precompute_equivalence.rs b/asap-query-engine/tests/e2e_precompute_equivalence.rs index a3273fe..f193e53 100644 --- a/asap-query-engine/tests/e2e_precompute_equivalence.rs +++ b/asap-query-engine/tests/e2e_precompute_equivalence.rs @@ -7,11 +7,11 @@ //! 3. Advances the watermark past the window boundary to close it //! 4. Drains captured outputs and verifies equivalence with ArroYo-format accumulators +use asap_types::aggregation_config::AggregationConfig; use flate2::{write::GzEncoder, Compression}; use prost::Message; use serde_json::json; use sketch_core::kll::KllSketch; -use sketch_db_common::aggregation_config::AggregationConfig; use std::collections::HashMap; use std::io::Write; use std::sync::Arc;