hyperstreamdb 0.3.3__tar.gz → 0.4.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.
- hyperstreamdb-0.4.1/.env.example +51 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/.gitignore +2 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/.instructions.md +1 -1
- hyperstreamdb-0.4.1/.qwen/settings.json +9 -0
- hyperstreamdb-0.4.1/.qwen/settings.json.orig +5 -0
- hyperstreamdb-0.4.1/CHANGELOG.md +304 -0
- hyperstreamdb-0.4.1/CONTRIBUTING.md +254 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/Cargo.lock +90 -121
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/Cargo.toml +28 -29
- hyperstreamdb-0.4.1/Dockerfile +62 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/PKG-INFO +2 -9
- hyperstreamdb-0.4.1/SECURITY.md +99 -0
- hyperstreamdb-0.4.1/build.rs +53 -0
- hyperstreamdb-0.4.1/clippy.toml +17 -0
- hyperstreamdb-0.4.1/deny.toml +52 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docker-compose-minio-nessie.yml +7 -7
- hyperstreamdb-0.4.1/docker-compose.production.yml +75 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docker-compose.yml +7 -7
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/CONFIGURATION.md +40 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/GPU_SETUP_GUIDE.md +21 -12
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/INSTALLATION.md +5 -2
- hyperstreamdb-0.4.1/docs/monitoring.md +57 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/pyproject.toml +3 -8
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/python/hyperstreamdb/__init__.py +17 -4
- hyperstreamdb-0.4.1/recovered_plan.txt +0 -0
- hyperstreamdb-0.4.1/rust-toolchain.toml +3 -0
- hyperstreamdb-0.4.1/scripts/update_cache.py +46 -0
- hyperstreamdb-0.4.1/scripts/update_reader.py +57 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/spark-hyperstream/pom.xml +24 -1
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/spark-hyperstream/src/main/java/com/hyperstreamdb/spark/HyperStreamPartitionReader.java +1 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/spark-hyperstream/src/main/java/com/hyperstreamdb/spark/HyperStreamTable.java +0 -1
- hyperstreamdb-0.4.1/spark-hyperstream/src/test/java/com/hyperstreamdb/spark/SparkConnectorTest.java +209 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/bin/gateway.rs +85 -7
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/bin/hdb.rs +9 -22
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/bin/iceberg_rest.rs +94 -7
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/cache.rs +33 -10
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/catalog/unity.rs +1 -1
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/clustering.rs +19 -95
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/compaction.rs +19 -3
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/embeddings.rs +54 -16
- hyperstreamdb-0.4.1/src/core/error.rs +493 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/ffi.rs +75 -12
- hyperstreamdb-0.4.1/src/core/iceberg/delete.rs +538 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/iceberg/iceberg_delete.rs +10 -9
- hyperstreamdb-0.4.1/src/core/iceberg/manifest.rs +356 -0
- hyperstreamdb-0.4.1/src/core/iceberg/mod.rs +73 -0
- hyperstreamdb-0.4.1/src/core/iceberg/schema.rs +140 -0
- hyperstreamdb-0.4.1/src/core/iceberg/transform.rs +203 -0
- hyperstreamdb-0.4.1/src/core/iceberg/types.rs +96 -0
- hyperstreamdb-0.4.1/src/core/iceberg/value.rs +151 -0
- hyperstreamdb-0.4.1/src/core/iceberg/writer.rs +521 -0
- hyperstreamdb-0.3.3/src/core/segment.rs → hyperstreamdb-0.4.1/src/core/index/build_inverted.rs +49 -793
- hyperstreamdb-0.4.1/src/core/index/build_vector.rs +98 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/distance.rs +39 -7
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/gpu.rs +200 -80
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/hnsw_ivf.rs +2 -1
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/hnsw_rs/api.rs +1 -0
- hyperstreamdb-0.4.1/src/core/index/hnsw_rs/dist.rs +223 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/hnsw_rs/hnsw.rs +5 -11
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/hnsw_rs/hnswio.rs +7 -6
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/hnsw_rs/libext.rs +178 -472
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/hnsw_rs/mod.rs +1 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/ivf.rs +3 -4
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/mod.rs +3 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/tokenizer.rs +1 -1
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/license.rs +19 -8
- hyperstreamdb-0.4.1/src/core/lock.rs +168 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/maintenance.rs +14 -11
- hyperstreamdb-0.4.1/src/core/manifest/manager/commit.rs +494 -0
- hyperstreamdb-0.4.1/src/core/manifest/manager/load.rs +327 -0
- hyperstreamdb-0.4.1/src/core/manifest/manager/partition.rs +144 -0
- hyperstreamdb-0.4.1/src/core/manifest/manager/schema.rs +195 -0
- hyperstreamdb-0.4.1/src/core/manifest/manager.rs +106 -0
- hyperstreamdb-0.4.1/src/core/manifest/mod.rs +5 -0
- hyperstreamdb-0.4.1/src/core/manifest/types.rs +896 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/merge.rs +169 -53
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/metadata.rs +1 -1
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/mod.rs +3 -0
- hyperstreamdb-0.4.1/src/core/planner/filter.rs +554 -0
- hyperstreamdb-0.4.1/src/core/planner/pruning.rs +590 -0
- hyperstreamdb-0.4.1/src/core/planner/vector_search.rs +48 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/planner.rs +109 -17
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/puffin.rs +31 -10
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/query.rs +157 -138
- hyperstreamdb-0.4.1/src/core/reader/delete.rs +185 -0
- hyperstreamdb-0.4.1/src/core/reader/filter.rs +673 -0
- hyperstreamdb-0.4.1/src/core/reader/mod.rs +376 -0
- hyperstreamdb-0.4.1/src/core/reader/scan.rs +1270 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/search/rrf.rs +6 -4
- hyperstreamdb-0.4.1/src/core/segment.rs +696 -0
- hyperstreamdb-0.4.1/src/core/sql/literal/binary.rs +170 -0
- hyperstreamdb-0.4.1/src/core/sql/literal/dense.rs +91 -0
- hyperstreamdb-0.4.1/src/core/sql/literal/mod.rs +1546 -0
- hyperstreamdb-0.4.1/src/core/sql/literal/sparse.rs +106 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/sql/mod.rs +40 -13
- hyperstreamdb-0.4.1/src/core/sql/optimizer/config.rs +221 -0
- hyperstreamdb-0.4.1/src/core/sql/optimizer/index_join.rs +101 -0
- hyperstreamdb-0.4.1/src/core/sql/optimizer/vector_search/mod.rs +75 -0
- hyperstreamdb-0.4.1/src/core/sql/optimizer/vector_search/plan_detection.rs +101 -0
- hyperstreamdb-0.4.1/src/core/sql/optimizer/vector_search/plan_rewriter.rs +106 -0
- hyperstreamdb-0.4.1/src/core/sql/optimizer/vector_search/sort_expr_parser.rs +148 -0
- hyperstreamdb-0.4.1/src/core/sql/optimizer.rs +14 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/sql/pgvector_rewriter.rs +9 -5
- hyperstreamdb-0.4.1/src/core/sql/physical_plan/vector_merge.rs +225 -0
- hyperstreamdb-0.4.1/src/core/sql/physical_plan/vector_scan.rs +241 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/sql/physical_plan.rs +20 -91
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/sql/session.rs +12 -4
- hyperstreamdb-0.4.1/src/core/sql/udf/aggregate.rs +338 -0
- hyperstreamdb-0.4.1/src/core/sql/udf/distance.rs +517 -0
- hyperstreamdb-0.4.1/src/core/sql/udf/mod.rs +104 -0
- hyperstreamdb-0.4.1/src/core/sql/udf/sparse.rs +240 -0
- hyperstreamdb-0.4.1/src/core/sql/udf/transform.rs +483 -0
- hyperstreamdb-0.4.1/src/core/sql/vector_literal.rs +5 -0
- hyperstreamdb-0.4.1/src/core/sql/vector_udf/aggregate.rs +340 -0
- hyperstreamdb-0.4.1/src/core/sql/vector_udf/distance.rs +520 -0
- hyperstreamdb-0.4.1/src/core/sql/vector_udf/mod.rs +6 -0
- hyperstreamdb-0.4.1/src/core/sql/vector_udf/sparse.rs +242 -0
- hyperstreamdb-0.4.1/src/core/sql/vector_udf/transform.rs +485 -0
- hyperstreamdb-0.4.1/src/core/sql/vector_udf.rs +104 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/storage.rs +51 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/table/builder.rs +10 -10
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/table/fluent.rs +2 -2
- hyperstreamdb-0.4.1/src/core/table/index_config.rs +374 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/table/mod.rs +201 -112
- hyperstreamdb-0.4.1/src/core/table/primary_key.rs +360 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/table/read.rs +146 -23
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/table/schema.rs +5 -5
- hyperstreamdb-0.4.1/src/core/table/state.rs +128 -0
- hyperstreamdb-0.4.1/src/core/table/stats.rs +668 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/table/write.rs +70 -43
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/wal.rs +108 -24
- hyperstreamdb-0.4.1/src/enterprise/continuous_indexing.rs +64 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/enterprise/mod.rs +2 -2
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/lib.rs +1 -0
- hyperstreamdb-0.4.1/src/python/catalog/glue.rs +54 -0
- hyperstreamdb-0.4.1/src/python/catalog/hive.rs +57 -0
- hyperstreamdb-0.4.1/src/python/catalog/jdbc.rs +54 -0
- hyperstreamdb-0.4.1/src/python/catalog/mod.rs +173 -0
- hyperstreamdb-0.4.1/src/python/catalog/nessie.rs +61 -0
- hyperstreamdb-0.4.1/src/python/catalog/rest.rs +49 -0
- hyperstreamdb-0.4.1/src/python/catalog/unity.rs +48 -0
- hyperstreamdb-0.4.1/src/python/helpers.rs +368 -0
- hyperstreamdb-0.4.1/src/python/manifest.rs +55 -0
- hyperstreamdb-0.4.1/src/python/mod.rs +62 -0
- hyperstreamdb-0.4.1/src/python/schema.rs +137 -0
- hyperstreamdb-0.4.1/src/python/session.rs +37 -0
- hyperstreamdb-0.4.1/src/python/stats.rs +103 -0
- hyperstreamdb-0.4.1/src/python/table.rs +1110 -0
- hyperstreamdb-0.4.1/src/python_binding.rs +9 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/python_gpu_context.rs +35 -10
- hyperstreamdb-0.4.1/src/telemetry/metrics.rs +91 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/telemetry/tracing.rs +39 -13
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/all_types_index_test.rs +4 -2
- hyperstreamdb-0.4.1/tests/gpu_test_helpers.rs +16 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_mor_writes.rs +0 -3
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-config/catalog/glue_catalog.properties +2 -2
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-config/catalog/hyperstreamdb.properties +2 -2
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-config/catalog/iceberg.properties +2 -2
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-config/catalog/postgres.properties +1 -1
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-hyperstream/pom.xml +19 -2
- hyperstreamdb-0.4.1/trino-hyperstream/src/test/java/com/hyperstreamdb/trino/TrinoConnectorTest.java +306 -0
- hyperstreamdb-0.3.3/broken_binaries_all.txt +0 -134
- hyperstreamdb-0.3.3/broken_bins.txt +0 -107
- hyperstreamdb-0.3.3/build.rs +0 -106
- hyperstreamdb-0.3.3/compliance_output.txt +0 -152
- hyperstreamdb-0.3.3/critical_code_review.md +0 -132
- hyperstreamdb-0.3.3/debug_log.txt +0 -73
- hyperstreamdb-0.3.3/demo_basics_run.txt +0 -47
- hyperstreamdb-0.3.3/demo_basics_v2.txt +0 -21
- hyperstreamdb-0.3.3/python_test_output.txt +0 -2714
- hyperstreamdb-0.3.3/python_test_output_v2.txt +0 -2636
- hyperstreamdb-0.3.3/python_test_output_v3.txt +0 -1824
- hyperstreamdb-0.3.3/rust_check_all_warnings.txt +0 -1018
- hyperstreamdb-0.3.3/rust_test_output.txt +0 -447
- hyperstreamdb-0.3.3/rust_warnings.txt +0 -1071
- hyperstreamdb-0.3.3/simd_test_results.txt +0 -202
- hyperstreamdb-0.3.3/src/core/iceberg.rs +0 -1534
- hyperstreamdb-0.3.3/src/core/index/hnsw_rs/dist.rs +0 -1596
- hyperstreamdb-0.3.3/src/core/manifest.rs +0 -2189
- hyperstreamdb-0.3.3/src/core/reader.rs +0 -1874
- hyperstreamdb-0.3.3/src/core/sql/optimizer.rs +0 -2741
- hyperstreamdb-0.3.3/src/core/sql/vector_literal.rs +0 -2274
- hyperstreamdb-0.3.3/src/core/sql/vector_udf.rs +0 -2807
- hyperstreamdb-0.3.3/src/enterprise/continuous_indexing.rs +0 -34
- hyperstreamdb-0.3.3/src/enterprise/license.rs +0 -32
- hyperstreamdb-0.3.3/src/python_binding.rs +0 -2137
- hyperstreamdb-0.3.3/src/telemetry/metrics.rs +0 -35
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/.gitattributes +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/.hypothesis/constants/32b327793848e7d8 +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/.hypothesis/constants/67b0a8ccf18bf5d2 +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/.hypothesis/constants/84828557b4ee7be4 +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/.ipynb_checkpoints/Untitled-checkpoint.ipynb +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/CNAME +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/HyperStreamDB.png +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/LICENSE-APACHE +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/LICENSE-MIT +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/README.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/RUN_COMPLIANCE_TESTS.sh +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/STEERING.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/THIRDPARTY_NOTICES.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/Untitled.ipynb +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benches/bench_table.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benches/performance.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/BENCHMARK_REPORT.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/benchmark_charts.png +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/benchmark_results.csv +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/concurrent_queries_20260409_214245.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/concurrent_queries_20260409_214245.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/filtered_search_comparison_20260409_222607.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/filtered_search_comparison_20260409_222607.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/filtered_vector_search_20260409_214355.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/filtered_vector_search_20260409_214355.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/filtered_vector_search_20260409_220418.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/filtered_vector_search_20260409_220418.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/filtered_vector_search_20260409_222053.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/filtered_vector_search_20260409_222053.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/filtered_vector_search_20260409_225907.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/filtered_vector_search_20260409_225907.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/full_scan_baseline_20260409_222303.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/full_scan_baseline_20260409_222303.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/high_selectivity_filter_20260409_222302.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/high_selectivity_filter_20260409_222302.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/ingestion_comparison_20260409_222516.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/ingestion_comparison_20260409_222516.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/multi_filter_vector_20260409_214428.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/multi_filter_vector_20260409_214428.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/multi_filter_vector_20260409_220450.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/multi_filter_vector_20260409_220450.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/multi_filter_vector_20260409_222131.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/multi_filter_vector_20260409_222131.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/multi_filter_vector_20260409_225938.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/multi_filter_vector_20260409_225938.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/multi_filter_vector_20260409_231713.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/multi_filter_vector_20260409_231713.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/post_vs_pre_filter_20260409_214501.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/post_vs_pre_filter_20260409_214501.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/post_vs_pre_filter_20260409_220524.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/post_vs_pre_filter_20260409_220524.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/post_vs_pre_filter_20260409_222204.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/post_vs_pre_filter_20260409_222204.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/post_vs_pre_filter_20260409_230010.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/post_vs_pre_filter_20260409_230010.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/query_comparison_20260409_222541.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/query_comparison_20260409_222541.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/range_query_20260409_222302.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/range_query_20260409_222302.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/search_filtered_high_selectivity_20260409_214144.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/search_filtered_high_selectivity_20260409_214144.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/search_unfiltered_20260409_214028.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/benchmark_results/search_unfiltered_20260409_214028.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/book.toml +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/build-connectors.sh +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/check_iceberg_compliance.py +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/.nojekyll +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/BENCHMARKING.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/COMPREHENSIVE_GUIDE.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/CONCURRENCY.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1/docs}/DORIS_OPTIMIZATION_PATTERNS.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/ICEBERG_V2_V3_API.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/PGVECTOR_SQL_GUIDE.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/PYTHON_VECTOR_API.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/VECTOR_CONFIGURATION.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/api_reference.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/architecture.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/catalog_usage.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/index.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/integrations/README.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/integrations/java_jni.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/integrations/python.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/integrations/spark.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/integrations/trino.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/requirements.txt +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/source/_static/HyperStreamDB.png +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/source/api/python.rst +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/source/api/rust.rst +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/source/conf.py +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/source/index.rst +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/docs/source/roadmap.md +0 -0
- /hyperstreamdb-0.3.3/task.md → /hyperstreamdb-0.4.1/docs/task_status.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/proptest-regressions/core/index/gpu.txt +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/proptest-regressions/core/sql/vector_literal.txt +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/proptest-regressions/core/sql/vector_udf.txt +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/python/hyperstreamdb/embeddings.py +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/scratch/check_os_error.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1/scripts}/fix_nb.py +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1/scripts}/split_table.py +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1/scripts}/update_schema_patch.py +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1/scripts}/update_schema_patch2.py +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/spark-hyperstream/.bloop/bloop.settings.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/spark-hyperstream/.bloop/spark-hyperstream-test.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/spark-hyperstream/.bloop/spark-hyperstream.json +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/spark-hyperstream/src/main/java/com/hyperstreamdb/spark/DefaultSource.java +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/spark-hyperstream/src/main/java/com/hyperstreamdb/spark/HyperStreamPartition.java +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/spark-hyperstream/src/main/java/com/hyperstreamdb/spark/HyperStreamPartitionReaderFactory.java +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/spark-hyperstream/src/main/java/com/hyperstreamdb/spark/HyperStreamScanBuilder.java +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/bin/probe_datafusion.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/bin/setup_test_data.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/bin/verify_layered_indexing.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/catalog/config.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/catalog/glue.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/catalog/hive.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/catalog/jdbc.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/catalog/mod.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/catalog/nessie.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/catalog/rest.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/cuda/cosine_distance.cu +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/cuda/hamming_distance.cu +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/cuda/inner_product.cu +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/cuda/jaccard_distance.cu +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/cuda/kmeans_assignment.cu +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/cuda/l1_distance.cu +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/cuda/l2_distance.cu +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/hnsw_rs/annhdf5.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/hnsw_rs/flatten.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/hnsw_rs/prelude.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/hnsw_rs/test.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/memory.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/mps/cosine_distance.metal +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/mps/hamming_distance.metal +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/mps/inner_product.metal +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/mps/jaccard_distance.metal +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/mps/kmeans_assignment.metal +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/mps/l1_distance.metal +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/mps/l2_distance.metal +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/opencl/cosine_distance.cl +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/opencl/hamming_distance.cl +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/opencl/inner_product.cl +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/opencl/jaccard_distance.cl +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/opencl/kmeans_assignment.cl +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/opencl/l1_distance.cl +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/opencl/l2_distance.cl +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/pq.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/turboquant.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/index/wgpu_kernel.wgsl +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/nessie.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/search/mod.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/sql/physical_plan/index_join.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/core/sql/vector_operators.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/index.rs.old +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/python_distance.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/src/telemetry/mod.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/bin/generate_iceberg_manifests.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/bin/verify_iceberg_read_check.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/check_mmh3.py +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/data/download_nyc_taxi.sh +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/data/generate_embeddings.py +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/data/generate_wikipedia.py +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/data/start_nessie.sh +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/datafusion_rust_test.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/debug_murmur3.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/fuzz_murmur3.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/integration_test_hnsw_ivf_native.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/performance/README.md +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/prototype_merge.py +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1/tests/python}/verify_docstrings.py +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1/tests/python}/verify_fluent_api.py +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1/tests/python}/verify_unified_ingest.py +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/schema_evolution_test.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/stability.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_all_algos.py +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_catalog_commit.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_compliance.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_delete_correctness.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_iceberg_python_delete.sh +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_iceberg_rest.sh +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_iceberg_rest_create.sh +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_iceberg_rest_delete.sh +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_iceberg_rest_remove_index.sh +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_iceberg_rest_update.sh +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_metadata_creation.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_mor_reads.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_partition_transforms.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_partitioned_writes.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_puffin_index.sh +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_rest_updates.sh +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/tests/verify_schema_compat.rs +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-config/.DS_Store +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-config/catalog/memory.properties +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-config/config.properties +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-config/entrypoint.sh +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-config/jvm.config +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-config/node.properties +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-config.zip +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-hyperstream/src/main/java/com/hyperstreamdb/trino/HyperStreamDBColumnHandle.java +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-hyperstream/src/main/java/com/hyperstreamdb/trino/HyperStreamDBConnectorFactory.java +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-hyperstream/src/main/java/com/hyperstreamdb/trino/HyperStreamDBMetadata.java +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-hyperstream/src/main/java/com/hyperstreamdb/trino/HyperStreamDBPageSource.java +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-hyperstream/src/main/java/com/hyperstreamdb/trino/HyperStreamDBPageSourceProvider.java +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-hyperstream/src/main/java/com/hyperstreamdb/trino/HyperStreamDBPlugin.java +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-hyperstream/src/main/java/com/hyperstreamdb/trino/HyperStreamDBSplit.java +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-hyperstream/src/main/java/com/hyperstreamdb/trino/HyperStreamDBSplitManager.java +0 -0
- {hyperstreamdb-0.3.3 → hyperstreamdb-0.4.1}/trino-hyperstream/src/main/java/com/hyperstreamdb/trino/HyperStreamDBTableHandle.java +0 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# HyperStreamDB Environment Configuration
|
|
2
|
+
# Copy this file to .env and fill in your credentials.
|
|
3
|
+
# DO NOT commit .env to version control.
|
|
4
|
+
|
|
5
|
+
# -------------------------------------------------------
|
|
6
|
+
# MinIO (S3-compatible object storage)
|
|
7
|
+
# -------------------------------------------------------
|
|
8
|
+
MINIO_ROOT_USER=minioadmin
|
|
9
|
+
MINIO_ROOT_PASSWORD=minioadmin
|
|
10
|
+
|
|
11
|
+
# -------------------------------------------------------
|
|
12
|
+
# Nessie PostgreSQL backend
|
|
13
|
+
# -------------------------------------------------------
|
|
14
|
+
NESSIE_POSTGRES_DB=nessie
|
|
15
|
+
NESSIE_POSTGRES_USER=nessie
|
|
16
|
+
NESSIE_POSTGRES_PASSWORD=nessie
|
|
17
|
+
|
|
18
|
+
# -------------------------------------------------------
|
|
19
|
+
# S3 credentials (used by Nessie catalog and Trino)
|
|
20
|
+
# These should match the MinIO root user/password above
|
|
21
|
+
# unless you are using a separate S3-compatible service.
|
|
22
|
+
# -------------------------------------------------------
|
|
23
|
+
S3_ACCESS_KEY=minioadmin
|
|
24
|
+
S3_SECRET_KEY=minioadmin
|
|
25
|
+
S3_ENDPOINT=http://minio:9000
|
|
26
|
+
S3_REGION=us-east-1
|
|
27
|
+
|
|
28
|
+
# -------------------------------------------------------
|
|
29
|
+
# Trino S3 credentials (for iceberg/hyperstreamdb catalogs)
|
|
30
|
+
# -------------------------------------------------------
|
|
31
|
+
TRINO_S3_ACCESS_KEY=minioadmin
|
|
32
|
+
TRINO_S3_SECRET_KEY=minioadmin
|
|
33
|
+
|
|
34
|
+
# -------------------------------------------------------
|
|
35
|
+
# Trino PostgreSQL catalog credentials
|
|
36
|
+
# -------------------------------------------------------
|
|
37
|
+
TRINO_PG_CONNECTION_PASSWORD=indie
|
|
38
|
+
|
|
39
|
+
# -------------------------------------------------------
|
|
40
|
+
# External database connection (used by Trino entrypoint)
|
|
41
|
+
# -------------------------------------------------------
|
|
42
|
+
PG_CONN_RW=
|
|
43
|
+
|
|
44
|
+
# -------------------------------------------------------
|
|
45
|
+
# API keys (add as needed for your deployment)
|
|
46
|
+
# -------------------------------------------------------
|
|
47
|
+
# AWS_ACCESS_KEY_ID=
|
|
48
|
+
# AWS_SECRET_ACCESS_KEY=
|
|
49
|
+
# AZURE_STORAGE_ACCOUNT=
|
|
50
|
+
# AZURE_STORAGE_KEY=
|
|
51
|
+
# GCS_SERVICE_ACCOUNT_KEY=
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# HyperStreamDB Development Guidelines
|
|
2
2
|
|
|
3
|
-
**Foundation:** These guidelines are rooted in [The Pragmatic Programmer](https://pragprog.com/) principles. See
|
|
3
|
+
**Foundation:** These guidelines are rooted in [The Pragmatic Programmer](https://pragprog.com/) principles. See `STEERING.md` for the full foundational principles that guide all projects.
|
|
4
4
|
|
|
5
5
|
## Core HyperStreamDB Principles
|
|
6
6
|
|
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [Unreleased]
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- Comprehensive unit test suites for Spark and Trino connectors
|
|
12
|
+
- Thread-local GPU context for concurrent query safety
|
|
13
|
+
- Structured error types and fallback chain for production readiness
|
|
14
|
+
- Query configuration API
|
|
15
|
+
- Metrics instrumentation for observability
|
|
16
|
+
- Release profiles (`release` and `release-lto`) in Cargo.toml
|
|
17
|
+
|
|
18
|
+
### Changed
|
|
19
|
+
- CUDA is now an optional feature (no longer required for CI builds)
|
|
20
|
+
- FFI bounds hardened with panic safety guarantees
|
|
21
|
+
- Public APIs documented with rustdoc
|
|
22
|
+
|
|
23
|
+
### Fixed
|
|
24
|
+
- Rustdoc warnings across the codebase
|
|
25
|
+
- PyO3 API compatibility issues
|
|
26
|
+
- Compilation errors in core modules
|
|
27
|
+
- Critical broken functionality items
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## [0.4.0] - 2026-05-10
|
|
32
|
+
|
|
33
|
+
### Added
|
|
34
|
+
- Tiered manifests with 8MB dynamic chunking for large-scale deployments
|
|
35
|
+
- File-based distributed locking for concurrent write safety
|
|
36
|
+
- OTLP (OpenTelemetry) tracing integration
|
|
37
|
+
- FFI panic safety boundaries
|
|
38
|
+
- Chaos and concurrent writers test suites
|
|
39
|
+
- HNSW SIMD indexing (stabilized, replaced legacy simdeez dependency)
|
|
40
|
+
|
|
41
|
+
### Changed
|
|
42
|
+
- Modularized query execution engine
|
|
43
|
+
- Refactored monolithic `reader.rs` into modular files
|
|
44
|
+
- Refactored monolithic `manifest.rs` into `manager.rs` and `types.rs`
|
|
45
|
+
- Extracted segment indexing logic into separate builder modules
|
|
46
|
+
- Replaced `std::sync` primitives with `parking_lot` for better concurrency
|
|
47
|
+
- Feature-gated `opencl3` and `wgpu` for binary size reduction
|
|
48
|
+
- Upgraded `hashbrown` dependency and trimmed `sqlx` features
|
|
49
|
+
- Eliminated panicking `unwrap()` calls in core library code
|
|
50
|
+
|
|
51
|
+
### Fixed
|
|
52
|
+
- Filter fallback to Iceberg manifests when no index exists on the column
|
|
53
|
+
- Hybrid search stability and correctness
|
|
54
|
+
- GPU test fallback when CPU-only environment detected
|
|
55
|
+
- Vector search schema compatibility
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## [0.3.3] - 2026-04-25
|
|
60
|
+
|
|
61
|
+
### Fixed
|
|
62
|
+
- Vector search schema alignment
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
## [0.3.2] - 2026-04-23
|
|
67
|
+
|
|
68
|
+
### Changed
|
|
69
|
+
- Stabilized streaming architecture
|
|
70
|
+
- Switched documentation deployment to GitHub Actions
|
|
71
|
+
|
|
72
|
+
### Fixed
|
|
73
|
+
- Streaming read and Python bindings
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## [0.3.1] - 2026-04-15
|
|
78
|
+
|
|
79
|
+
### Fixed
|
|
80
|
+
- TQ8/blob_type index load dispatch
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
## [0.3.0] - 2026-04-14
|
|
85
|
+
|
|
86
|
+
### Added
|
|
87
|
+
- **High-Density Storage Milestone**: TQ4 (4-bit) and TQ8 (8-bit) TurboQuant quantization
|
|
88
|
+
- Global runtime support
|
|
89
|
+
- Schema evolution infrastructure
|
|
90
|
+
- Finalized indexing infrastructure
|
|
91
|
+
|
|
92
|
+
### Fixed
|
|
93
|
+
- Multiple stability fixes across storage and query layers
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## [0.2.6] - 2026-04-12
|
|
98
|
+
|
|
99
|
+
### Changed
|
|
100
|
+
- Stabilized parallel execution
|
|
101
|
+
- Modernized logging infrastructure
|
|
102
|
+
- Updated GPU installation guidance
|
|
103
|
+
|
|
104
|
+
### Fixed
|
|
105
|
+
- Categorical column handling
|
|
106
|
+
- Metal backend type mismatch on macOS
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## [0.2.3] - 2026-04-11
|
|
111
|
+
|
|
112
|
+
### Changed
|
|
113
|
+
- Modernized GPU acceleration
|
|
114
|
+
- Aligned with PyTorch standards for device detection
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
## [0.2.1] - 2026-04-10
|
|
119
|
+
|
|
120
|
+
### Changed
|
|
121
|
+
- Auto-sync pyproject version from Cargo.toml
|
|
122
|
+
- Made cudarc optional for non-CUDA CI builds
|
|
123
|
+
|
|
124
|
+
### Fixed
|
|
125
|
+
- CUDA and MPS device recognition
|
|
126
|
+
- PK validation memory and schema merge logic
|
|
127
|
+
|
|
128
|
+
---
|
|
129
|
+
|
|
130
|
+
## [0.2.0] - 2026-04-09
|
|
131
|
+
|
|
132
|
+
### Added
|
|
133
|
+
- Core engine refactor
|
|
134
|
+
- WAL deduplication
|
|
135
|
+
- Thread-safe GPU context
|
|
136
|
+
- Hardware-agnostic compute dispatch with thread-local context management
|
|
137
|
+
|
|
138
|
+
### Changed
|
|
139
|
+
- Extracted read, write, builder, schema, and fluent APIs from monolithic table module
|
|
140
|
+
- Introduced `TableBuilder` to streamline initialization
|
|
141
|
+
- Eliminated implicit tokio runtime creation
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
## [0.1.12] - 2026-04-05
|
|
146
|
+
|
|
147
|
+
### Added
|
|
148
|
+
- Dynamic GPU backend detection (PyTorch-style `build.rs`)
|
|
149
|
+
- Single-source version management
|
|
150
|
+
|
|
151
|
+
### Changed
|
|
152
|
+
- Unified version across all metadata files
|
|
153
|
+
- Removed non-standard extra-features mapping
|
|
154
|
+
- Removed native Windows target (WSL2 recommended)
|
|
155
|
+
- Updated PyPI classifiers for Python 3.13 and 3.14 support
|
|
156
|
+
- Optimized CI matrix for universal Python 3.10 abi3 wheels
|
|
157
|
+
|
|
158
|
+
### Fixed
|
|
159
|
+
- Missing library `ImportError` on Linux wheels
|
|
160
|
+
- PyPI trailing data wheel rejection on macOS
|
|
161
|
+
- Manifest manager Rust compiler error
|
|
162
|
+
|
|
163
|
+
---
|
|
164
|
+
|
|
165
|
+
## [0.1.9] - 2026-04-04
|
|
166
|
+
|
|
167
|
+
### Added
|
|
168
|
+
- Partitioned tables support
|
|
169
|
+
- SQL aggregation fixes
|
|
170
|
+
|
|
171
|
+
### Changed
|
|
172
|
+
- Standardized Table API across Python integration tests
|
|
173
|
+
- Increased floating-point tolerance for GPU distance kernels
|
|
174
|
+
|
|
175
|
+
### Fixed
|
|
176
|
+
- Inverted index row ID encoding
|
|
177
|
+
- Integration test stability
|
|
178
|
+
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
## [0.1.8] - 2026-04-04
|
|
182
|
+
|
|
183
|
+
### Changed
|
|
184
|
+
- Transitioned to explicit Device API
|
|
185
|
+
- Broadened Intel GPU detection
|
|
186
|
+
- Standardized Intel GPU backend naming
|
|
187
|
+
|
|
188
|
+
### Fixed
|
|
189
|
+
- PyArrow schema interoperability
|
|
190
|
+
- Mutability errors in `python_gpu_context.rs`
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
## [0.1.7] - 2026-04-03
|
|
195
|
+
|
|
196
|
+
### Added
|
|
197
|
+
- **10x ingestion speedup** via Async HNSW and Iceberg v3 ZSTD optimizations
|
|
198
|
+
|
|
199
|
+
### Changed
|
|
200
|
+
- Release stabilization and documentation improvements
|
|
201
|
+
|
|
202
|
+
---
|
|
203
|
+
|
|
204
|
+
## [0.1.6] - 2026-04-02
|
|
205
|
+
|
|
206
|
+
### Added
|
|
207
|
+
- Strict primary key uniqueness enforcement with inverted index lookups
|
|
208
|
+
|
|
209
|
+
### Fixed
|
|
210
|
+
- PK uniqueness for upsert operations
|
|
211
|
+
- macOS build compatibility
|
|
212
|
+
|
|
213
|
+
---
|
|
214
|
+
|
|
215
|
+
## [0.1.5] - 2026-04-02
|
|
216
|
+
|
|
217
|
+
### Added
|
|
218
|
+
- HNSW-IVF stabilization
|
|
219
|
+
- Python extras hardware mapping (`all_gpu`, `intel_cpu`)
|
|
220
|
+
|
|
221
|
+
### Changed
|
|
222
|
+
- Fully internalized `hnsw_rs` to `src/core/index/hnsw_rs` for crates.io compatibility
|
|
223
|
+
- Resolved `unexpected_cfgs` warnings
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## [0.1.3] - 2026-04-01
|
|
228
|
+
|
|
229
|
+
### Fixed
|
|
230
|
+
- HNSW crate patch compatibility
|
|
231
|
+
|
|
232
|
+
---
|
|
233
|
+
|
|
234
|
+
## [0.1.2] - 2026-03-31
|
|
235
|
+
|
|
236
|
+
### Added
|
|
237
|
+
- Vector search parameter tuning
|
|
238
|
+
- Enhanced diagnostics and query optimization
|
|
239
|
+
- Python API improvements
|
|
240
|
+
- Explain plan enhancements
|
|
241
|
+
|
|
242
|
+
### Changed
|
|
243
|
+
- Improved API design and explain output
|
|
244
|
+
- Stabilized hybrid search pipeline and RAG demo
|
|
245
|
+
- CI: gated FFI and connector tests behind `java` feature
|
|
246
|
+
- CI: removed Linux aarch64 from release matrix
|
|
247
|
+
- CI: switched to Zig-based cross-compilation
|
|
248
|
+
- CI: added Rust caching for faster builds
|
|
249
|
+
|
|
250
|
+
### Fixed
|
|
251
|
+
- Restored `add_index_columns` method for Python/Rust bindings
|
|
252
|
+
- OpenCL linker errors and cross-compilation issues
|
|
253
|
+
- Manylinux compatibility for both architectures
|
|
254
|
+
|
|
255
|
+
---
|
|
256
|
+
|
|
257
|
+
## [0.1.1] - 2026-03-30
|
|
258
|
+
|
|
259
|
+
### Added
|
|
260
|
+
- Vector UDFs and aggregates registered in SQL context
|
|
261
|
+
- Hybrid search stabilization
|
|
262
|
+
- Initial RAG demo support
|
|
263
|
+
|
|
264
|
+
### Changed
|
|
265
|
+
- Aligned development guidelines with pragmatic programmer principles
|
|
266
|
+
- Registered vector operators with DataFusion for hybrid queries
|
|
267
|
+
|
|
268
|
+
---
|
|
269
|
+
|
|
270
|
+
## [0.1.0] - 2026-03-30
|
|
271
|
+
|
|
272
|
+
### Added
|
|
273
|
+
- Initial release of HyperStreamDB
|
|
274
|
+
- Serverless index-streaming database with overlay indexing
|
|
275
|
+
- Apache Iceberg V2/V3 compliance
|
|
276
|
+
- Persistent scalar (RoaringBitmap) and vector (HNSW) indexes
|
|
277
|
+
- Native SQL support via DataFusion
|
|
278
|
+
- Python bindings via PyO3
|
|
279
|
+
- Multi-backend GPU acceleration (CUDA, ROCm, Metal, Intel XPU)
|
|
280
|
+
- Fluent query API with method chaining
|
|
281
|
+
- pgvector-compatible SQL operators
|
|
282
|
+
|
|
283
|
+
---
|
|
284
|
+
|
|
285
|
+
[Unreleased]: https://github.com/rla3rd/hyperstreamdb/compare/v0.4.0...HEAD
|
|
286
|
+
[0.4.0]: https://github.com/rla3rd/hyperstreamdb/compare/v0.3.3...v0.4.0
|
|
287
|
+
[0.3.3]: https://github.com/rla3rd/hyperstreamdb/compare/v0.3.2...v0.3.3
|
|
288
|
+
[0.3.2]: https://github.com/rla3rd/hyperstreamdb/compare/v0.3.1...v0.3.2
|
|
289
|
+
[0.3.1]: https://github.com/rla3rd/hyperstreamdb/compare/v0.3.0...v0.3.1
|
|
290
|
+
[0.3.0]: https://github.com/rla3rd/hyperstreamdb/compare/v0.2.6...v0.3.0
|
|
291
|
+
[0.2.6]: https://github.com/rla3rd/hyperstreamdb/compare/v0.2.3...v0.2.6
|
|
292
|
+
[0.2.3]: https://github.com/rla3rd/hyperstreamdb/compare/v0.2.1...v0.2.3
|
|
293
|
+
[0.2.1]: https://github.com/rla3rd/hyperstreamdb/compare/v0.2.0...v0.2.1
|
|
294
|
+
[0.2.0]: https://github.com/rla3rd/hyperstreamdb/compare/v0.1.12...v0.2.0
|
|
295
|
+
[0.1.12]: https://github.com/rla3rd/hyperstreamdb/compare/v0.1.9...v0.1.12
|
|
296
|
+
[0.1.9]: https://github.com/rla3rd/hyperstreamdb/compare/v0.1.8...v0.1.9
|
|
297
|
+
[0.1.8]: https://github.com/rla3rd/hyperstreamdb/compare/v0.1.7...v0.1.8
|
|
298
|
+
[0.1.7]: https://github.com/rla3rd/hyperstreamdb/compare/v0.1.6...v0.1.7
|
|
299
|
+
[0.1.6]: https://github.com/rla3rd/hyperstreamdb/compare/v0.1.5...v0.1.6
|
|
300
|
+
[0.1.5]: https://github.com/rla3rd/hyperstreamdb/compare/v0.1.3...v0.1.5
|
|
301
|
+
[0.1.3]: https://github.com/rla3rd/hyperstreamdb/compare/v0.1.2...v0.1.3
|
|
302
|
+
[0.1.2]: https://github.com/rla3rd/hyperstreamdb/compare/v0.1.1...v0.1.2
|
|
303
|
+
[0.1.1]: https://github.com/rla3rd/hyperstreamdb/compare/v0.1.0...v0.1.1
|
|
304
|
+
[0.1.0]: https://github.com/rla3rd/hyperstreamdb/releases/tag/v0.1.0
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
# Contributing to HyperStreamDB
|
|
2
|
+
|
|
3
|
+
Thank you for your interest in contributing! HyperStreamDB is a serverless index-streaming database built in Rust with Python and Java bindings. This document outlines how to set up your development environment and the conventions we follow.
|
|
4
|
+
|
|
5
|
+
## Project Principles
|
|
6
|
+
|
|
7
|
+
Before contributing, please read [STEERING.md](STEERING.md) for our development philosophy. It covers our approach to code quality, design, and release readiness based on *The Pragmatic Programmer*.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Development Setup
|
|
12
|
+
|
|
13
|
+
### Prerequisites
|
|
14
|
+
|
|
15
|
+
- **Rust** (stable, 1.75+) — install via [rustup](https://rustup.rs/)
|
|
16
|
+
- **Python** (3.10–3.14) — for binding development and testing
|
|
17
|
+
- **Docker** — for integration tests against MinIO and Nessie
|
|
18
|
+
- **Cargo** and **maturin** — for building Python wheels
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
# Install Rust
|
|
22
|
+
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
|
|
23
|
+
|
|
24
|
+
# Install maturin (Python-Rust build tool)
|
|
25
|
+
pip install maturin
|
|
26
|
+
|
|
27
|
+
# Clone and build
|
|
28
|
+
git clone https://github.com/rla3rd/hyperstreamdb.git
|
|
29
|
+
cd hyperstreamdb
|
|
30
|
+
cargo build --release
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
### Python Bindings
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
# Develop Python bindings locally
|
|
37
|
+
maturin develop
|
|
38
|
+
|
|
39
|
+
# Run Python tests
|
|
40
|
+
pytest tests/
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
### Docker Services
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
# Start MinIO (S3-compatible storage) and Nessie (Iceberg catalog)
|
|
47
|
+
docker compose -f docker-compose-minio-nessie.yml up -d
|
|
48
|
+
|
|
49
|
+
# Run integration tests
|
|
50
|
+
pytest tests/integration/
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### GPU Acceleration (Optional)
|
|
54
|
+
|
|
55
|
+
GPU features are optional and feature-gated. To build with GPU support:
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
# With CUDA (NVIDIA)
|
|
59
|
+
cargo build --features cuda
|
|
60
|
+
|
|
61
|
+
# With WGPU (Vulkan/Metal/ROCm)
|
|
62
|
+
cargo build --features wgpu
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
See the [README](README.md#gpu-acceleration-optional) for hardware-specific installation guides.
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## Coding Standards
|
|
70
|
+
|
|
71
|
+
### Rust
|
|
72
|
+
|
|
73
|
+
- **Formatting**: Run `cargo fmt` before committing. We use `rustfmt` defaults.
|
|
74
|
+
- **Linting**: Run `cargo clippy --all-features` and resolve all warnings. Treat clippy warnings as errors.
|
|
75
|
+
- **Naming**:
|
|
76
|
+
- Modules: `snake_case`
|
|
77
|
+
- Types/Structs: `PascalCase`
|
|
78
|
+
- Functions/methods: `snake_case`
|
|
79
|
+
- Constants: `SCREAMING_SNAKE_CASE`
|
|
80
|
+
- **Error handling**: Use `Result<T, HyperstreamError>` throughout. Never use `.unwrap()` in library code — prefer `.expect()` with a descriptive message or proper error propagation.
|
|
81
|
+
- **Documentation**: All `pub` items must have rustdoc comments. Run `cargo doc --no-deps` to verify.
|
|
82
|
+
|
|
83
|
+
### Python
|
|
84
|
+
|
|
85
|
+
- Follow [PEP 8](https://peps.python.org/pep-0008/) for style
|
|
86
|
+
- Use type hints on all public functions and methods
|
|
87
|
+
- Docstrings should follow [Google style](https://google.github.io/styleguide/pyguide.html#38-comments-and-docstrings)
|
|
88
|
+
|
|
89
|
+
### Commit Messages
|
|
90
|
+
|
|
91
|
+
We follow [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/):
|
|
92
|
+
|
|
93
|
+
```
|
|
94
|
+
<type>(<scope>): <description>
|
|
95
|
+
|
|
96
|
+
[optional body]
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
**Types:**
|
|
100
|
+
| Type | Description |
|
|
101
|
+
|------------|--------------------------------------------------|
|
|
102
|
+
| `feat` | New feature or functionality |
|
|
103
|
+
| `fix` | Bug fix |
|
|
104
|
+
| `perf` | Performance improvement |
|
|
105
|
+
| `refactor` | Code change that neither fixes a bug nor adds a feature |
|
|
106
|
+
| `docs` | Documentation only changes |
|
|
107
|
+
| `test` | Adding or correcting tests |
|
|
108
|
+
| `chore` | Maintenance, CI, build, dependency updates |
|
|
109
|
+
| `ci` | Continuous Integration configuration changes |
|
|
110
|
+
|
|
111
|
+
**Examples:**
|
|
112
|
+
```
|
|
113
|
+
feat(indexing): stabilize HNSW SIMD indexing and remove legacy simdeez dependency
|
|
114
|
+
fix: resolve rustdoc warnings and pyo3 API compatibility
|
|
115
|
+
refactor(gpu): implement hardware-agnostic compute dispatch with thread-local context
|
|
116
|
+
docs: switch to GitHub Actions for Pages deployment
|
|
117
|
+
test: add comprehensive unit test suites for Spark and Trino connectors
|
|
118
|
+
chore: bump version to v0.4.0
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
## Branch Naming Conventions
|
|
124
|
+
|
|
125
|
+
```
|
|
126
|
+
feat/<feature-name> # New features
|
|
127
|
+
fix/<issue-or-bug> # Bug fixes
|
|
128
|
+
refactor/<component> # Refactoring work
|
|
129
|
+
docs/<topic> # Documentation changes
|
|
130
|
+
test/<scope> # Test additions or changes
|
|
131
|
+
chore/<task> # Maintenance tasks
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
**Examples:**
|
|
135
|
+
- `feat/tiered-manifests`
|
|
136
|
+
- `fix/hybrid-search-fallback`
|
|
137
|
+
- `refactor/gpu-context`
|
|
138
|
+
- `test/spark-connector`
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
## Pull Request Process
|
|
143
|
+
|
|
144
|
+
### 1. Create a Draft PR
|
|
145
|
+
|
|
146
|
+
Start with a **Draft PR** while work is in progress. This allows early feedback without triggering full CI review.
|
|
147
|
+
|
|
148
|
+
### 2. Self-Review Checklist
|
|
149
|
+
|
|
150
|
+
Before marking your PR as **Ready for Review**:
|
|
151
|
+
|
|
152
|
+
- [ ] Code passes `cargo fmt` and `cargo clippy` with zero warnings
|
|
153
|
+
- [ ] All tests pass (`cargo test` and `pytest tests/`)
|
|
154
|
+
- [ ] New features include corresponding unit and/or integration tests
|
|
155
|
+
- [ ] Public API changes have rustdoc documentation
|
|
156
|
+
- [ ] `CHANGELOG.md` is updated (if this is a user-facing change)
|
|
157
|
+
- [ ] No broken windows: compiler warnings, failing tests, or suboptimal patterns
|
|
158
|
+
|
|
159
|
+
### 3. CI Validation
|
|
160
|
+
|
|
161
|
+
The CI pipeline runs:
|
|
162
|
+
- **Rust checks**: `cargo check`, `cargo clippy`, `cargo test`
|
|
163
|
+
- **Python tests**: `pytest`
|
|
164
|
+
- **Documentation build**: `cargo doc --no-deps`
|
|
165
|
+
- **Integration tests**: against MinIO and Nessie (when applicable)
|
|
166
|
+
|
|
167
|
+
All CI checks must pass before merge.
|
|
168
|
+
|
|
169
|
+
### 4. Review and Merge
|
|
170
|
+
|
|
171
|
+
- PRs require at least one approval from a maintainer
|
|
172
|
+
- Address all review comments before merging
|
|
173
|
+
- Squash-merge to keep history clean
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
|
|
177
|
+
## Testing Requirements
|
|
178
|
+
|
|
179
|
+
### Unit Tests
|
|
180
|
+
|
|
181
|
+
Every new feature or bug fix must include unit tests. Use `#[cfg(test)]` modules within the relevant source file:
|
|
182
|
+
|
|
183
|
+
```rust
|
|
184
|
+
#[cfg(test)]
|
|
185
|
+
mod tests {
|
|
186
|
+
use super::*;
|
|
187
|
+
|
|
188
|
+
#[test]
|
|
189
|
+
fn test_feature_behavior() {
|
|
190
|
+
// ...
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
### Integration Tests
|
|
196
|
+
|
|
197
|
+
For features that span multiple modules or involve external systems (storage, catalogs), add integration tests under `tests/integration/`:
|
|
198
|
+
|
|
199
|
+
```bash
|
|
200
|
+
# Run all integration tests
|
|
201
|
+
pytest tests/integration/
|
|
202
|
+
|
|
203
|
+
# Run specific test
|
|
204
|
+
pytest tests/integration/test_hybrid_search.py -v
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
### Benchmarks
|
|
208
|
+
|
|
209
|
+
Performance-critical changes should include benchmark updates:
|
|
210
|
+
|
|
211
|
+
```bash
|
|
212
|
+
# Run Criterion benchmarks
|
|
213
|
+
cargo bench
|
|
214
|
+
|
|
215
|
+
# Quick benchmark suite
|
|
216
|
+
python benchmarks/benchmark_suite.py --quick
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
---
|
|
220
|
+
|
|
221
|
+
## Building Connectors
|
|
222
|
+
|
|
223
|
+
The Spark and Trino connectors require a separate build step:
|
|
224
|
+
|
|
225
|
+
```bash
|
|
226
|
+
# Build all connector variants
|
|
227
|
+
./build-connectors.sh
|
|
228
|
+
|
|
229
|
+
# Build with CUDA support
|
|
230
|
+
./build-connectors.sh --cuda
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
---
|
|
234
|
+
|
|
235
|
+
## Release Process
|
|
236
|
+
|
|
237
|
+
Releases are tagged and published by the maintainer. The process involves:
|
|
238
|
+
|
|
239
|
+
1. Bump version in `Cargo.toml` (single source of truth)
|
|
240
|
+
2. Update `CHANGELOG.md` with release date
|
|
241
|
+
3. Create git tag: `git tag v0.X.Y`
|
|
242
|
+
4. Push tag: `git push origin v0.X.Y`
|
|
243
|
+
5. CI automatically publishes to crates.io and PyPI
|
|
244
|
+
|
|
245
|
+
---
|
|
246
|
+
|
|
247
|
+
## Questions or Issues?
|
|
248
|
+
|
|
249
|
+
- Open a [GitHub Issue](https://github.com/rla3rd/hyperstreamdb/issues) for bugs or feature requests
|
|
250
|
+
- For discussions, use the Discussions tab or reach out directly
|
|
251
|
+
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
**Stay Pragmatic. Stay Antigravity.**
|