sqlbenchdag 0.1.0__tar.gz → 0.1.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {sqlbenchdag-0.1.0/sqlbenchdag.egg-info → sqlbenchdag-0.1.1}/PKG-INFO +18 -3
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/README.md +9 -2
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/pyproject.toml +18 -2
- sqlbenchdag-0.1.1/scripts/autonomous_agent.py +840 -0
- sqlbenchdag-0.1.1/scripts/dev/check_deps.py +219 -0
- sqlbenchdag-0.1.1/scripts/dev/publish_capsule.py +118 -0
- sqlbenchdag-0.1.1/scripts/dev/remove_capsule.py +77 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/dev/verify_capsule.py +4 -1
- sqlbenchdag-0.1.1/scripts/multi_agent.py +106 -0
- sqlbenchdag-0.1.1/scripts/run_study.py +158 -0
- sqlbenchdag-0.1.1/scripts/tools/analyze_agent_traces.py +170 -0
- sqlbenchdag-0.1.1/scripts/tools/article_pack.py +88 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/tools/gen_experiment_catalog.py +9 -3
- sqlbenchdag-0.1.1/scripts/tools/grade_analyses.py +210 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/tools/plot_scaling.py +18 -21
- sqlbenchdag-0.1.1/scripts/tools/plot_transport.py +120 -0
- sqlbenchdag-0.1.1/scripts/tools/publish_figure.py +53 -0
- sqlbenchdag-0.1.1/scripts/tools/reorganize_agent_runs.py +121 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/tools/verify_doc_claims.py +18 -1
- sqlbenchdag-0.1.1/scripts/tools/xfactor.py +66 -0
- sqlbenchdag-0.1.1/scripts/verify_malloy_equivalence.py +86 -0
- sqlbenchdag-0.1.1/skills/scripts/compare_engines.py +9 -0
- sqlbenchdag-0.1.1/skills/scripts/compare_engines_by_partition.py +7 -0
- sqlbenchdag-0.1.1/skills/scripts/get_experiment_result.py +7 -0
- sqlbenchdag-0.1.1/skills/scripts/get_experiment_status.py +7 -0
- sqlbenchdag-0.1.1/skills/scripts/get_experiment_summary.py +7 -0
- sqlbenchdag-0.1.1/skills/scripts/get_means_by_partition.py +7 -0
- sqlbenchdag-0.1.1/skills/scripts/get_replication_stability.py +7 -0
- sqlbenchdag-0.1.1/skills/scripts/get_scaling_factor.py +7 -0
- sqlbenchdag-0.1.1/skills/scripts/get_template.py +7 -0
- sqlbenchdag-0.1.1/skills/scripts/list_categories.py +4 -0
- sqlbenchdag-0.1.1/skills/scripts/list_suites.py +7 -0
- sqlbenchdag-0.1.1/skills/scripts/list_templates.py +4 -0
- sqlbenchdag-0.1.1/skills/scripts/submit_experiment.py +9 -0
- sqlbenchdag-0.1.1/sql_benchmarks/agent_orchestrator.py +518 -0
- sqlbenchdag-0.1.1/sql_benchmarks/agent_specialist.py +359 -0
- sqlbenchdag-0.1.1/sql_benchmarks/agent_tools.py +359 -0
- sqlbenchdag-0.1.1/sql_benchmarks/agent_trace.py +240 -0
- sqlbenchdag-0.1.1/sql_benchmarks/api/data/catalog_reader.py +117 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/api/data/reader.py +15 -0
- sqlbenchdag-0.1.1/sql_benchmarks/api/data/taxonomy.py +70 -0
- sqlbenchdag-0.1.1/sql_benchmarks/api/data/templates_reader.py +117 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/api/logic/comparator.py +29 -1
- sqlbenchdag-0.1.1/sql_benchmarks/api/logic/lab_docs.py +76 -0
- sqlbenchdag-0.1.1/sql_benchmarks/api/logic/projections.py +263 -0
- sqlbenchdag-0.1.1/sql_benchmarks/api/logic/published_library.py +106 -0
- sqlbenchdag-0.1.1/sql_benchmarks/api/logic/skills_library.py +92 -0
- sqlbenchdag-0.1.1/sql_benchmarks/api/models/catalog.py +64 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/api/models/experiments.py +5 -1
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/api/models/results.py +14 -0
- sqlbenchdag-0.1.1/sql_benchmarks/api/routers/catalog.py +129 -0
- sqlbenchdag-0.1.1/sql_benchmarks/api/routers/experiments.py +136 -0
- sqlbenchdag-0.1.1/sql_benchmarks/api/routers/results.py +135 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/assets/benchmark_factory.py +24 -5
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/assets/data_quality.py +20 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/assets/reporting.py +5 -0
- sqlbenchdag-0.1.1/sql_benchmarks/canonicalization.py +119 -0
- sqlbenchdag-0.1.1/sql_benchmarks/capsule_registry.py +104 -0
- sqlbenchdag-0.1.1/sql_benchmarks/cli.py +141 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/config_loader.py +82 -2
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/constants.py +5 -2
- sqlbenchdag-0.1.1/sql_benchmarks/coordinator.py +494 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/definitions.py +40 -2
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/experiments/templates/experiment_template.yaml +4 -2
- sqlbenchdag-0.1.1/sql_benchmarks/failure_marker.py +68 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/plugins/data_sources/declarative_gen.py +45 -0
- sqlbenchdag-0.1.1/sql_benchmarks/resources/malloy.py +65 -0
- sqlbenchdag-0.1.1/sql_benchmarks/resources/malloy_client.py +167 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/resources/postgres_client.py +56 -10
- sqlbenchdag-0.1.1/sql_benchmarks/resources/postgres_transport.py +59 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/resources/quack.py +22 -1
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/resources/quack_client.py +55 -3
- sqlbenchdag-0.1.1/sql_benchmarks/resources/storage.py +129 -0
- sqlbenchdag-0.1.1/sql_benchmarks/running_marker.py +145 -0
- sqlbenchdag-0.1.1/sql_benchmarks/scripts/sql/null_logic/duckdb/indistinct_identity.sql +9 -0
- sqlbenchdag-0.1.1/sql_benchmarks/scripts/sql/null_logic/postgres/indistinct_identity.sql +9 -0
- sqlbenchdag-0.1.1/sql_benchmarks/scripts/sql/outer_join/duckdb/inner_join.sql +4 -0
- sqlbenchdag-0.1.1/sql_benchmarks/scripts/sql/outer_join/duckdb/left_join.sql +5 -0
- sqlbenchdag-0.1.1/sql_benchmarks/scripts/sql/outer_join/duckdb/right_join_flipped.sql +6 -0
- sqlbenchdag-0.1.1/sql_benchmarks/scripts/sql/outer_join/postgres/inner_join.sql +4 -0
- sqlbenchdag-0.1.1/sql_benchmarks/scripts/sql/outer_join/postgres/left_join.sql +5 -0
- sqlbenchdag-0.1.1/sql_benchmarks/scripts/sql/outer_join/postgres/right_join_flipped.sql +6 -0
- sqlbenchdag-0.1.1/sql_benchmarks/scripts/sql/quack_transport/duckdb/narrow.sql +2 -0
- sqlbenchdag-0.1.1/sql_benchmarks/scripts/sql/quack_transport/duckdb/wide.sql +2 -0
- sqlbenchdag-0.1.1/sql_benchmarks/scripts/sql/transport/postgres/nested.sql +2 -0
- sqlbenchdag-0.1.1/sql_benchmarks/scripts/sql/transport/postgres/primitives.sql +2 -0
- sqlbenchdag-0.1.1/sql_benchmarks/scripts/sql/transport/postgres/with_array.sql +2 -0
- sqlbenchdag-0.1.1/sql_benchmarks/scripts/sql/transport/postgres/with_jsonb.sql +2 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/utils/common.py +28 -14
- sqlbenchdag-0.1.1/sql_benchmarks/utils/datagen_contract.py +162 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/utils/hasher.py +7 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/utils/providers.py +72 -6
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/utils/schema.py +17 -2
- sqlbenchdag-0.1.1/sql_benchmarks/validation.py +264 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1/sqlbenchdag.egg-info}/PKG-INFO +18 -3
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sqlbenchdag.egg-info/SOURCES.txt +62 -2
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sqlbenchdag.egg-info/requires.txt +8 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sqlbenchdag.egg-info/top_level.txt +2 -3
- sqlbenchdag-0.1.0/sql_benchmarks/api/data/catalog_reader.py +0 -73
- sqlbenchdag-0.1.0/sql_benchmarks/api/models/catalog.py +0 -22
- sqlbenchdag-0.1.0/sql_benchmarks/api/routers/catalog.py +0 -19
- sqlbenchdag-0.1.0/sql_benchmarks/api/routers/experiments.py +0 -79
- sqlbenchdag-0.1.0/sql_benchmarks/api/routers/results.py +0 -51
- sqlbenchdag-0.1.0/sql_benchmarks/cli.py +0 -69
- sqlbenchdag-0.1.0/sql_benchmarks/coordinator.py +0 -282
- sqlbenchdag-0.1.0/venv/bin/activate_this.py +0 -59
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/LICENSE +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/infrastructure/debug_aws.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/dev/backfill_queries.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/dev/timestamp_capsule.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/dev/upgrade_capsule.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/dev/verify_portability.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/tools/_plotlib.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/tools/analyze_scaling.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/tools/demo_breach_detection.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/tools/extract_results.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/tools/find_kink.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/tools/load_parquet_to_local.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/tools/plot_execution_modes.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/tools/plot_selectivity.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/tools/plot_threads.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/scripts/tools/regenerate_dashboard.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/setup.cfg +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/__init__.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/api/__init__.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/api/app.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/api/data/__init__.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/api/logic/__init__.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/api/logic/ranker.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/api/models/__init__.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/api/models/recommend.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/api/routers/__init__.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/api/routers/recommend.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/assets/__init__.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/assets/data_factory.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/assets/ingestion_factory.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/assets/maintenance.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/assets/semantic_gate.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/harness.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/jobs.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/partitions.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/plugins/data_sources/local_file_loader.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/plugins/data_sources/tpc_h.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/resources/__init__.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/resources/actian.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/resources/actian_client.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/resources/base_engine.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/resources/base_schema_client.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/resources/duckdb.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/resources/duckdb_client.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/resources/postgres.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/resources/typedb_client.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/resources/typedb_engine.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/__init__.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/acid_test/duckdb/test.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/acid_test/postgres/test.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/analytical_wall/actian/analytical_wall.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/analytical_wall/analytical_wall.sql.template +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/analytical_wall/duckdb/analytical_wall.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/analytical_wall/postgres/analytical_wall.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/group_by/duckdb/groupby_antipattern.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/group_by/duckdb/groupby_recommended_cte.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/group_by/postgres/groupby_antipattern.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/group_by/postgres/groupby_recommended_pk.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/hypergraph/duckdb/q_1hop.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/hypergraph/duckdb/q_2hop.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/hypergraph/duckdb/q_full.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/hypergraph/typedb/q_1hop.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/hypergraph/typedb/q_2hop.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/hypergraph/typedb/q_full.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/joins/duckdb/join_antipattern.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/joins/duckdb/join_recommended.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/joins/postgres/join_antipattern.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/joins/postgres/join_recommended.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/null_logic/duckdb/2VL_identity.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/null_logic/duckdb/3VL_identity.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/null_logic/postgres/2VL_identity.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/null_logic/postgres/3VL_identity.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/null_sentinel/duckdb/2VL_identity.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/null_sentinel/duckdb/3VL_identity.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/null_sentinel/duckdb/sentinel_optimization.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/null_sentinel/postgres/2VL_identity.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/null_sentinel/postgres/3VL_identity.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/null_sentinel/postgres/sentinel_optimization.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/recursion/duckdb/recursive_cte.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/recursion/postgres/recursive_cte.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/recursive_graph/duckdb/q_bounded_3hop.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/recursive_graph/duckdb/q_fixed_2hop.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/recursive_graph/duckdb/q_transitive_closure.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/recursive_graph/typedb/q_bounded_3hop.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/recursive_graph/typedb/q_fixed_2hop.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/recursive_graph/typedb/q_transitive_closure.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/security/acid_resilience/duckdb/test.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/duckdb/q_0_1_percent.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/duckdb/q_10_percent.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/duckdb/q_1_percent.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/duckdb/q_20_percent.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/duckdb/q_5_percent.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/duckdb/q_filler.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/postgres/q_0_1_percent.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/postgres/q_10_percent.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/postgres/q_1_percent.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/postgres/q_20_percent.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/postgres/q_5_percent.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/postgres/q_filler.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/typedb/q_0_1_percent.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/typedb/q_10_percent.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/typedb/q_1_percent.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/typedb/q_20_percent.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/typedb/q_5_percent.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/selectivity/typedb/q_filler.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/sort_spill/duckdb/sort_full.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/sort_spill/duckdb/sort_wide_rows.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/sort_spill/postgres/sort_full.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/sort_spill/postgres/sort_wide_rows.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/tpch/duckdb/q3_shipping_priority.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/scripts/sql/tpch/postgres/q3_shipping_priority.sql +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/utils/__init__.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/utils/ddl.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/utils/integrity_monitor.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/utils/scaling.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/utils/semantic_auditor.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/utils/system.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sql_benchmarks/validator.py +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sqlbenchdag.egg-info/dependency_links.txt +0 -0
- {sqlbenchdag-0.1.0 → sqlbenchdag-0.1.1}/sqlbenchdag.egg-info/entry_points.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: sqlbenchdag
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.1
|
|
4
4
|
Summary: A reproducible, content-addressed SQL engine benchmarking laboratory.
|
|
5
5
|
Author: Ramona C. Truta
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -28,6 +28,9 @@ Requires-Dist: pandas
|
|
|
28
28
|
Requires-Dist: plotly
|
|
29
29
|
Requires-Dist: polars
|
|
30
30
|
Requires-Dist: pyarrow
|
|
31
|
+
Requires-Dist: duckdb
|
|
32
|
+
Requires-Dist: jinja2
|
|
33
|
+
Requires-Dist: pydantic
|
|
31
34
|
Requires-Dist: psycopg2-binary
|
|
32
35
|
Requires-Dist: sqlalchemy
|
|
33
36
|
Requires-Dist: psutil
|
|
@@ -41,9 +44,14 @@ Requires-Dist: uvicorn[standard]>=0.29.0
|
|
|
41
44
|
Requires-Dist: fastmcp>=0.1.0
|
|
42
45
|
Requires-Dist: httpx>=0.27.0
|
|
43
46
|
Requires-Dist: typedb-driver
|
|
47
|
+
Requires-Dist: adbc-driver-manager==1.11.0
|
|
48
|
+
Requires-Dist: adbc-driver-postgresql==1.11.0
|
|
49
|
+
Requires-Dist: connectorx==0.4.5
|
|
50
|
+
Requires-Dist: adbc-driver-quack==0.1.0a8
|
|
44
51
|
Provides-Extra: dev
|
|
45
52
|
Requires-Dist: dagster-webserver; extra == "dev"
|
|
46
53
|
Requires-Dist: pytest; extra == "dev"
|
|
54
|
+
Requires-Dist: matplotlib; extra == "dev"
|
|
47
55
|
Dynamic: license-file
|
|
48
56
|
|
|
49
57
|
# SQL Benchmarking Laboratory
|
|
@@ -101,7 +109,13 @@ Benchmarks are defined as N-dimensional matrices in YAML. The platform expands t
|
|
|
101
109
|
* **Docker**: for the containerized engines (Postgres, TypeDB), which the harness manages itself — *not* required for the DuckDB-only quickstart.
|
|
102
110
|
|
|
103
111
|
### Installation & Setup
|
|
104
|
-
|
|
112
|
+
|
|
113
|
+
**From PyPI** — the lab is installable, which gives you the tooling and the `sqlbench` CLI:
|
|
114
|
+
```bash
|
|
115
|
+
pip install sqlbenchdag
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
**From source** — clone the repo to also get the published capsules (`sql_benchmarks/experiments/results/`) and the full harness. The laboratory includes a comprehensive setup script that manages virtual environments, dependencies, and directory initialization.
|
|
105
119
|
|
|
106
120
|
```bash
|
|
107
121
|
# 1. Automate Setup
|
|
@@ -141,7 +155,8 @@ Managed with a strict separation between Harness and Scenario:
|
|
|
141
155
|
├── /plugins # THE DATA: Declarative generators & scenario providers
|
|
142
156
|
├── /utils # THE BRAIN: AST-hashing, common logic, & system primitives
|
|
143
157
|
└── /experiments # THE LABORATORY
|
|
144
|
-
├── active.yaml #
|
|
158
|
+
├── active.yaml # LOCAL runtime staging — the coordinator overwrites
|
|
159
|
+
│ # this on every run (gitignored; not shared state)
|
|
145
160
|
├── /queue # Staging area for new experiment configs
|
|
146
161
|
├── /archive # Library of previously defined experiment templates
|
|
147
162
|
├── /configs # Registry of immutable, hash-addressed experiment capsules
|
|
@@ -53,7 +53,13 @@ Benchmarks are defined as N-dimensional matrices in YAML. The platform expands t
|
|
|
53
53
|
* **Docker**: for the containerized engines (Postgres, TypeDB), which the harness manages itself — *not* required for the DuckDB-only quickstart.
|
|
54
54
|
|
|
55
55
|
### Installation & Setup
|
|
56
|
-
|
|
56
|
+
|
|
57
|
+
**From PyPI** — the lab is installable, which gives you the tooling and the `sqlbench` CLI:
|
|
58
|
+
```bash
|
|
59
|
+
pip install sqlbenchdag
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
**From source** — clone the repo to also get the published capsules (`sql_benchmarks/experiments/results/`) and the full harness. The laboratory includes a comprehensive setup script that manages virtual environments, dependencies, and directory initialization.
|
|
57
63
|
|
|
58
64
|
```bash
|
|
59
65
|
# 1. Automate Setup
|
|
@@ -93,7 +99,8 @@ Managed with a strict separation between Harness and Scenario:
|
|
|
93
99
|
├── /plugins # THE DATA: Declarative generators & scenario providers
|
|
94
100
|
├── /utils # THE BRAIN: AST-hashing, common logic, & system primitives
|
|
95
101
|
└── /experiments # THE LABORATORY
|
|
96
|
-
├── active.yaml #
|
|
102
|
+
├── active.yaml # LOCAL runtime staging — the coordinator overwrites
|
|
103
|
+
│ # this on every run (gitignored; not shared state)
|
|
97
104
|
├── /queue # Staging area for new experiment configs
|
|
98
105
|
├── /archive # Library of previously defined experiment templates
|
|
99
106
|
├── /configs # Registry of immutable, hash-addressed experiment capsules
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "sqlbenchdag"
|
|
3
|
-
version = "0.1.
|
|
3
|
+
version = "0.1.1"
|
|
4
4
|
description = "A reproducible, content-addressed SQL engine benchmarking laboratory."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.11,<3.14"
|
|
@@ -37,6 +37,10 @@ dependencies = [
|
|
|
37
37
|
"plotly",
|
|
38
38
|
"polars",
|
|
39
39
|
"pyarrow",
|
|
40
|
+
# Imported directly by the package (were only present transitively via dagster).
|
|
41
|
+
"duckdb",
|
|
42
|
+
"jinja2",
|
|
43
|
+
"pydantic",
|
|
40
44
|
"psycopg2-binary",
|
|
41
45
|
"sqlalchemy",
|
|
42
46
|
"psutil",
|
|
@@ -50,12 +54,20 @@ dependencies = [
|
|
|
50
54
|
"fastmcp>=0.1.0",
|
|
51
55
|
"httpx>=0.27.0",
|
|
52
56
|
"typedb-driver",
|
|
57
|
+
# Result-transport drivers — postgres_transport (psycopg/adbc/connectorx) and
|
|
58
|
+
# quack_adbc engines. Pinned to the versions that produced the sealed
|
|
59
|
+
# transport capsules (e.g. af6ba593) so the lane is reproducible by an outsider.
|
|
60
|
+
"adbc-driver-manager==1.11.0",
|
|
61
|
+
"adbc-driver-postgresql==1.11.0",
|
|
62
|
+
"connectorx==0.4.5",
|
|
63
|
+
"adbc-driver-quack==0.1.0a8",
|
|
53
64
|
]
|
|
54
65
|
|
|
55
66
|
[project.optional-dependencies]
|
|
56
67
|
dev = [
|
|
57
68
|
"dagster-webserver",
|
|
58
|
-
"pytest"
|
|
69
|
+
"pytest",
|
|
70
|
+
"matplotlib"
|
|
59
71
|
]
|
|
60
72
|
|
|
61
73
|
[project.urls]
|
|
@@ -92,3 +104,7 @@ filterwarnings = [
|
|
|
92
104
|
"ignore:Support for class-based `config` is deprecated:DeprecationWarning:pydantic",
|
|
93
105
|
"ignore:`np.bool8` is a deprecated alias:DeprecationWarning:plotly",
|
|
94
106
|
]
|
|
107
|
+
markers = [
|
|
108
|
+
"integration: needs external infra (Docker Postgres, Quack server, remote Actian/TypeDB) — excluded from the default CI run",
|
|
109
|
+
"e2e: a full experiment driven through the harness (slow)",
|
|
110
|
+
]
|