[INFO] fetching crate szrsql-optimizer 1.0.0-rc.1...
[INFO] testing szrsql-optimizer-1.0.0-rc.1 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate szrsql-optimizer 1.0.0-rc.1 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate szrsql-optimizer 1.0.0-rc.1
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate szrsql-optimizer 1.0.0-rc.1
[INFO] tweaked toml for crates.io crate szrsql-optimizer 1.0.0-rc.1 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate szrsql-optimizer 1.0.0-rc.1 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate szrsql-optimizer 1.0.0-rc.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:37:12
[INFO] [stderr]    |
[INFO] [stderr] 37 | homepage = "https://github.com/szrsql/szrsql"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 42 | repository = "https://github.com/szrsql/szrsql"
[INFO] [stderr]    |              ----------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `szrsql-optimizer` (manifest) generated 1 warning
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 443ede1b8ac2bfeaefa156d64aa1335f11c3adddf0babd5108d38d751271af4f
[INFO] running `Command { std: "docker" "start" "443ede1b8ac2bfeaefa156d64aa1335f11c3adddf0babd5108d38d751271af4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "443ede1b8ac2bfeaefa156d64aa1335f11c3adddf0babd5108d38d751271af4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "443ede1b8ac2bfeaefa156d64aa1335f11c3adddf0babd5108d38d751271af4f" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "443ede1b8ac2bfeaefa156d64aa1335f11c3adddf0babd5108d38d751271af4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "443ede1b8ac2bfeaefa156d64aa1335f11c3adddf0babd5108d38d751271af4f" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:37:12
[INFO] [stderr]    |
[INFO] [stderr] 37 | homepage = "https://github.com/szrsql/szrsql"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 42 | repository = "https://github.com/szrsql/szrsql"
[INFO] [stderr]    |              ----------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `szrsql-optimizer` (manifest) generated 1 warning
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling zerocopy v0.8.54
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling sqlparser v0.53.0
[INFO] [stderr]    Compiling regex-automata v0.4.16
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling regex v1.13.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.5
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling szrsql-types v1.0.0-rc.1
[INFO] [stderr]    Compiling szrsql-sql v1.0.0-rc.1
[INFO] [stderr]    Compiling szrsql-optimizer v1.0.0-rc.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 38.60s
[INFO] running `Command { std: "docker" "inspect" "443ede1b8ac2bfeaefa156d64aa1335f11c3adddf0babd5108d38d751271af4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "443ede1b8ac2bfeaefa156d64aa1335f11c3adddf0babd5108d38d751271af4f" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:37:12
[INFO] [stderr]    |
[INFO] [stderr] 37 | homepage = "https://github.com/szrsql/szrsql"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 42 | repository = "https://github.com/szrsql/szrsql"
[INFO] [stderr]    |              ----------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `szrsql-optimizer` (manifest) generated 1 warning
[INFO] [stderr]    Compiling szrsql-optimizer v1.0.0-rc.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 5.20s
[INFO] running `Command { std: "docker" "inspect" "443ede1b8ac2bfeaefa156d64aa1335f11c3adddf0babd5108d38d751271af4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "443ede1b8ac2bfeaefa156d64aa1335f11c3adddf0babd5108d38d751271af4f" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:37:12
[INFO] [stderr]    |
[INFO] [stderr] 37 | homepage = "https://github.com/szrsql/szrsql"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 42 | repository = "https://github.com/szrsql/szrsql"
[INFO] [stderr]    |              ----------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `szrsql-optimizer` (manifest) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/szrsql-optimizer/ef74f51f32b2e5d1/out/szrsql_optimizer-ef74f51f32b2e5d1)
[INFO] [stdout] 
[INFO] [stdout] running 293 tests
[INFO] [stdout] test cost::tests::test_cost_add ... ok
[INFO] [stdout] test cost::tests::test_cost_zero ... ok
[INFO] [stdout] test cost::tests::test_count_predicates ... ok
[INFO] [stdout] test cost::tests::test_distinct_cost ... ok
[INFO] [stdout] test cost::tests::test_hash_join_cheaper_than_nested_loop ... ok
[INFO] [stdout] test cost::tests::test_aggregate_cost ... ok
[INFO] [stdout] test cost::tests::test_scan_cost_default_stats ... ok
[INFO] [stdout] test cost::tests::test_dml_returns_zero_cost ... ok
[INFO] [stdout] test cost::tests::test_cost_accumulation ... ok
[INFO] [stdout] test cost::tests::test_join_algorithm_choice ... ok
[INFO] [stdout] test cost::tests::test_nested_plan_cost ... ok
[INFO] [stdout] test cost::tests::test_scan_cost_with_stats ... ok
[INFO] [stdout] test cost::tests::test_selectivity_eq_with_stats ... ok
[INFO] [stdout] test cost::tests::test_selectivity_or ... ok
[INFO] [stdout] test cost::tests::test_sort_cost ... ok
[INFO] [stdout] test cost::tests::test_filter_cost_selectivity ... ok
[INFO] [stdout] test cost::tests::test_is_equi_condition ... ok
[INFO] [stdout] test cost::tests::test_column_statistics_selectivity_eq_with_ndv ... ok
[INFO] [stdout] test explain::tests::test_explain_analyze_builder_config ... ok
[INFO] [stdout] test explain::tests::test_explain_analyze_includes_summary ... ok
[INFO] [stdout] test explain::tests::test_explain_aggregate_node ... ok
[INFO] [stdout] test explain::tests::test_explain_analyze_integration_pg_like_format ... ok
[INFO] [stdout] test explain::tests::test_explain_analyze_filter ... ok
[INFO] [stdout] test cost::tests::test_limit_larger_than_input ... ok
[INFO] [stdout] test explain::tests::test_config_analyze_defaults ... ok
[INFO] [stdout] test cost::tests::test_optimizer_prefers_hash_join_for_large_inputs ... ok
[INFO] [stdout] test explain::tests::test_config_builder_chaining ... ok
[INFO] [stdout] test explain::tests::test_config_new_defaults ... ok
[INFO] [stdout] test cost::tests::test_projection_cost ... ok
[INFO] [stdout] test explain::tests::test_explain_analyze_limit ... ok
[INFO] [stdout] test explain::tests::test_explain_distinct ... ok
[INFO] [stdout] test explain::tests::test_explain_analyze_simple_scan ... ok
[INFO] [stdout] test cost::tests::test_limit_cost ... ok
[INFO] [stdout] test cost::tests::test_extract_literal_int ... ok
[INFO] [stdout] test cost::tests::test_aggregate_no_group_by ... ok
[INFO] [stdout] test cost::tests::test_join_nested_loop_small_tables ... ok
[INFO] [stdout] test explain::tests::test_explain_empty_and_dual ... ok
[INFO] [stdout] test explain::tests::test_explain_sort ... ok
[INFO] [stdout] test explain::tests::test_explain_verbose_shows_output_columns ... ok
[INFO] [stdout] test explain::tests::test_trace_record_and_count ... ok
[INFO] [stdout] test join_order::tests::test_build_join_with_edges_cross_join ... ok
[INFO] [stdout] test join_order::tests::test_build_join_with_edges_empty_returns_none ... ok
[INFO] [stdout] test join_order::tests::test_extract_graph_rejects_non_scan_leaf ... ok
[INFO] [stdout] test explain::tests::test_trace_default_empty ... ok
[INFO] [stdout] test join_order::tests::test_extract_graph_rejects_outer_join ... ok
[INFO] [stdout] test join_order::tests::test_extract_graph_chain_join_3_tables ... ok
[INFO] [stdout] test cost::tests::test_filter_cost_and_selectivity ... ok
[INFO] [stdout] test join_order::tests::test_collect_table_refs_qualified ... ok
[INFO] [stdout] test join_order::tests::test_build_join_with_edges_multiple_on_combined ... ok
[INFO] [stdout] test join_order::tests::test_collect_table_refs_unqualified ... ok
[INFO] [stdout] test join_order::tests::test_build_join_with_edges_single_on ... ok
[INFO] [stdout] test explain::tests::test_explain_filter ... ok
[INFO] [stdout] test join_order::tests::test_optimize_3_table_join_finds_valid_order ... ok
[INFO] [stdout] test explain::tests::test_explain_join_node ... ok
[INFO] [stdout] test explain::tests::test_explain_limit ... ok
[INFO] [stdout] test explain::tests::test_explain_setop_node ... ok
[INFO] [stdout] test join_order::tests::test_optimize_4_table_join ... ok
[INFO] [stdout] test explain::tests::test_explain_shared_memo_ref_nodes ... ok
[INFO] [stdout] test explain::tests::test_explain_simple_scan ... ok
[INFO] [stdout] test join_order::tests::test_extract_graph_two_table_join ... ok
[INFO] [stdout] test join_order::tests::test_is_connected_chain ... ok
[INFO] [stdout] test join_order::tests::test_find_cross_edges ... ok
[INFO] [stdout] test join_order::tests::test_is_connected_single_node ... ok
[INFO] [stdout] test join_order::tests::test_iter_subsets_size_2_of_4 ... ok
[INFO] [stdout] test join_order::tests::test_optimize_5_table_chain_join ... ok
[INFO] [stdout] test join_order::tests::test_iter_subsets_size_3_of_5 ... ok
[INFO] [stdout] test join_order::tests::test_optimize_cross_join ... ok
[INFO] [stdout] test join_order::tests::test_optimize_cycle_join_3_tables ... ok
[INFO] [stdout] test join_order::tests::test_optimize_filter_wraps_join ... ok
[INFO] [stdout] test join_order::tests::test_optimize_outer_join_recurses_into_inner_subtree ... ok
[INFO] [stdout] test join_order::tests::test_optimize_projection_wraps_join ... ok
[INFO] [stdout] test join_order::tests::test_optimize_two_table_join_preserves_structure ... ok
[INFO] [stdout] test join_order::tests::test_split_conjuncts_single ... ok
[INFO] [stdout] test join_order::tests::test_optimize_idempotent ... ok
[INFO] [stdout] test join_order::tests::test_optimize_mixed_inner_and_cross ... ok
[INFO] [stdout] test join_order::tests::test_optimize_outer_join_not_reordered ... ok
[INFO] [stdout] test join_order::tests::test_optimize_single_table_no_change ... ok
[INFO] [stdout] test join_order::tests::test_split_conjuncts_multiple ... ok
[INFO] [stdout] test join_order::tests::test_optimize_preserves_join_count_3_tables ... ok
[INFO] [stdout] test ml_cost::tests::test_features_empty_plan ... ok
[INFO] [stdout] test ml_cost::tests::test_features_from_aggregate ... ok
[INFO] [stdout] test ml_cost::tests::test_features_from_complex_plan ... ok
[INFO] [stdout] test ml_cost::tests::test_evaluate_mape_empty_test_set ... ok
[INFO] [stdout] test ml_cost::tests::test_features_from_filter ... ok
[INFO] [stdout] test ml_cost::tests::test_features_from_join_counts ... ok
[INFO] [stdout] test ml_cost::tests::test_features_from_scan ... ok
[INFO] [stdout] test ml_cost::tests::test_features_from_shared_memo_ref ... ok
[INFO] [stdout] test ml_cost::tests::test_features_from_union ... ok
[INFO] [stdout] test ml_cost::tests::test_features_from_projection ... ok
[INFO] [stdout] test ml_cost::tests::test_features_to_vector_dimension ... ok
[INFO] [stdout] test join_order::tests::test_optimize_5_table_star_join ... ok
[INFO] [stdout] test ml_cost::tests::test_7b1_weight_norm_untrained ... ok
[INFO] [stdout] test ml_cost::tests::test_features_do_not_panic_on_dml ... ok
[INFO] [stdout] test ml_cost::tests::test_features_from_sort ... ok
[INFO] [stdout] test ml_cost::tests::test_features_do_not_panic_on_memo_ref ... ok
[INFO] [stdout] test ml_cost::tests::test_features_zero ... ok
[INFO] [stdout] test ml_cost::tests::test_hybrid_model_cold_start_uses_handcrafted ... ok
[INFO] [stdout] test ml_cost::tests::test_ml_model_cold_start_fallback ... ok
[INFO] [stdout] test ml_cost::tests::test_ml_model_add_sample_triggers_training ... ok
[INFO] [stdout] test ml_cost::tests::test_ml_model_new_untrained ... ok
[INFO] [stdout] test ml_cost::tests::test_hybrid_model_records_execution_and_trains ... ok
[INFO] [stdout] test ml_cost::tests::test_evaluate_handcrafted_mape ... ok
[INFO] [stdout] test ml_cost::tests::test_normalizer_fit_normalize ... ok
[INFO] [stdout] test ml_cost::tests::test_hybrid_model_with_real_plan_fallback_then_predict ... ok
[INFO] [stdout] test ml_cost::tests::test_normalizer_zero_std ... ok
[INFO] [stdout] test ml_cost::tests::test_ml_model_incremental_training_improves_accuracy ... ok
[INFO] [stdout] test plan_cache::tests::test_capacity_one ... ok
[INFO] [stdout] test plan_cache::tests::test_contains_no_side_effects ... ok
[INFO] [stdout] test plan_cache::tests::test_cached_flag_in_explain ... ok
[INFO] [stdout] test plan_cache::tests::test_default_capacity ... ok
[INFO] [stdout] test plan_cache::tests::test_debug_format ... ok
[INFO] [stdout] test plan_cache::tests::test_basic_hit_miss ... ok
[INFO] [stdout] test plan_cache::tests::test_invalidate_all ... ok
[INFO] [stdout] test ml_cost::tests::test_evaluate_mape_perfect_prediction ... ok
[INFO] [stdout] test plan_cache::tests::test_invalidate_table ... ok
[INFO] [stdout] test plan_cache::tests::test_invalidate_table_no_match ... ok
[INFO] [stdout] test plan_cache::tests::test_invalidate_table_case_insensitive ... ok
[INFO] [stdout] test plan_cache::tests::test_lru_eviction ... ok
[INFO] [stdout] test plan_cache::tests::test_lru_order_after_get ... ok
[INFO] [stdout] test plan_cache::tests::test_lru_overwrite_no_eviction ... ok
[INFO] [stdout] test plan_cache::tests::test_multi_table_scenario ... ok
[INFO] [stdout] test plan_cache::tests::test_normalize_sql_case ... ok
[INFO] [stdout] test plan_cache::tests::test_normalize_sql_trailing_semicolon ... ok
[INFO] [stdout] test plan_cache::tests::test_normalize_sql_whitespace ... ok
[INFO] [stdout] test plan_cache::tests::test_repeated_access_consistency ... ok
[INFO] [stdout] test plan_cache::tests::test_new_cache_empty ... ok
[INFO] [stdout] test plan_cache::tests::test_stats_tracking ... ok
[INFO] [stdout] test plan_cache::tests::test_stats_after_eviction_and_invalidation ... ok
[INFO] [stdout] test ml_cost::tests::test_7b1_onnx_export ... ok
[INFO] [stdout] test plan_cache::tests::test_table_deps_join ... ok
[INFO] [stdout] test plan_cache::tests::test_table_deps_dedup ... ok
[INFO] [stdout] test ml_cost::tests::test_hybrid_model_ml_prediction_after_training ... ok
[INFO] [stdout] test plan_cache::tests::test_table_deps_single_table ... ok
[INFO] [stdout] test plan_cache::tests::test_table_name_normalization ... ok
[INFO] [stdout] test result_cache::tests::test_capacity_one ... ok
[INFO] [stdout] test result_cache::tests::test_cdc_invalidate_join ... ok
[INFO] [stdout] test result_cache::tests::test_basic_hit_miss ... ok
[INFO] [stdout] test result_cache::tests::test_cdc_invalidate_table_case_insensitive ... ok
[INFO] [stdout] test result_cache::tests::test_cdc_invalidate_table_no_match ... ok
[INFO] [stdout] test result_cache::tests::test_cdc_invalidate_table ... ok
[INFO] [stdout] test ml_cost::tests::test_ml_model_predict_after_training ... ok
[INFO] [stdout] test result_cache::tests::test_cache_hit_response_time_under_1ms ... ok
[INFO] [stdout] test result_cache::tests::test_debug_format ... ok
[INFO] [stdout] test plan_cache::tests::test_insert_many_beyond_capacity ... ok
[INFO] [stdout] test result_cache::tests::test_contains_no_side_effects ... ok
[INFO] [stdout] test ml_cost::tests::test_ml_model_reset ... ok
[INFO] [stdout] test result_cache::tests::test_cdc_invalidation_time_under_10ms ... ok
[INFO] [stdout] test result_cache::tests::test_default_capacity ... ok
[INFO] [stdout] test result_cache::tests::test_insert_with_plan_join ... ok
[INFO] [stdout] test result_cache::tests::test_empty_result_cached ... ok
[INFO] [stdout] test result_cache::tests::test_insert_many_beyond_capacity ... ok
[INFO] [stdout] test result_cache::tests::test_end_to_end_with_executor ... ok
[INFO] [stdout] test result_cache::tests::test_insert_with_plan_single_table ... ok
[INFO] [stdout] test result_cache::tests::test_invalidate_all ... ok
[INFO] [stdout] test plan_cache::tests::test_hit_rate_above_90_percent ... ok
[INFO] [stdout] test result_cache::tests::test_lru_eviction ... ok
[INFO] [stdout] test result_cache::tests::test_lru_order_after_get ... ok
[INFO] [stdout] test result_cache::tests::test_new_cache_empty ... ok
[INFO] [stdout] test result_cache::tests::test_multi_table_scenario ... ok
[INFO] [stdout] test result_cache::tests::test_lru_overwrite_no_eviction ... ok
[INFO] [stdout] test result_cache::tests::test_hit_rate_above_70_percent ... ok
[INFO] [stdout] test result_cache::tests::test_normalize_sql_whitespace ... ok
[INFO] [stdout] test result_cache::tests::test_stats_after_eviction_and_invalidation ... ok
[INFO] [stdout] test result_cache::tests::test_row_count_of ... ok
[INFO] [stdout] test result_cache::tests::test_stats_tracking ... ok
[INFO] [stdout] test result_cache::tests::test_repeated_access_consistency ... ok
[INFO] [stdout] test result_cache::tests::test_table_deps_single_table ... ok
[INFO] [stdout] test result_cache::tests::test_repeated_query_hit ... ok
[INFO] [stdout] test result_cache::tests::test_table_deps_join ... ok
[INFO] [stdout] test result_cache::tests::test_normalize_sql_trailing_semicolon ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_id_consistency ... ok
[INFO] [stdout] test result_cache::tests::test_table_name_normalization ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_integration_shared_memo_ref_executes_correctly ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_mixed_scan_and_indexscan ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_indexscan_also_supported ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_no_change_for_single_scan ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_multiple_distinct_duplicates ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_distinguishes_aliased_scans ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_detects_duplicate_scan_in_join ... ok
[INFO] [stdout] test result_cache::tests::test_normalize_sql_case ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_preserves_other_node_structure ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_no_change_when_no_duplicate ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_recursive_through_projection ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_skips_dml ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_three_duplicates ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_recursive_through_aggregate ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_through_setop ... ok
[INFO] [stdout] test rule::cse_tests::test_fingerprint_plan_identical_plans ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_through_sort_limit_distinct ... ok
[INFO] [stdout] test result_cache::tests::test_large_result_cached ... ok
[INFO] [stdout] test rule::cse_tests::test_fingerprint_plan_different_plans ... ok
[INFO] [stdout] test rule::index_selection_tests::test_catalog_list_indexes_empty_for_unknown_table ... ok
[INFO] [stdout] test rule::index_selection_tests::test_choose_best_index_prefers_composite ... ok
[INFO] [stdout] test rule::index_selection_tests::test_choose_best_index_returns_none_when_no_match ... ok
[INFO] [stdout] test rule::index_selection_tests::test_collect_eq_columns_basic ... ok
[INFO] [stdout] test rule::index_selection_tests::test_collect_eq_columns_with_non_eq_conjuncts ... ok
[INFO] [stdout] test rule::index_selection_tests::test_filter_not_on_scan_kept ... ok
[INFO] [stdout] test rule::index_selection_tests::test_in_memory_catalog_add_and_remove_index ... ok
[INFO] [stdout] test rule::index_selection_tests::test_no_index_when_no_indexes_registered ... ok
[INFO] [stdout] test rule::index_selection_tests::test_no_index_when_predicate_has_no_eq ... ok
[INFO] [stdout] test rule::index_selection_tests::test_choose_best_index_leftmost_prefix ... ok
[INFO] [stdout] test rule::index_selection_tests::test_choose_best_index_prefers_unique_on_tie ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_recursive_through_filter ... ok
[INFO] [stdout] test rule::cse_tests::test_cse_recursive_through_nested_join ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_analyze_aggregate_group_by ... ok
[INFO] [stdout] test rule::index_selection_tests::test_select_composite_index_when_multiple_eq ... ok
[INFO] [stdout] test rule::index_selection_tests::test_select_index_for_eq_predicate_on_indexed_column ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_analyze_aggregate_having ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_analyze_filter_predicate ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_analyze_join_predicate_column_refs ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_analyze_sort_key ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_analyze_single_table_qualified ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_apply_function_args ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_apply_in_list ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_analyze_unqualified_no_collection ... ok
[INFO] [stdout] test rule::index_selection_tests::test_catalog_list_indexes_case_insensitive ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_apply_nested_join ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_apply_case_expression ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_apply_no_prune_for_unqualified_refs ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_apply_uses_alias_as_key ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_apply_uses_table_name_when_no_alias ... ok
[INFO] [stdout] test rule::subquery_flattening_tests::test_extract_simple_column_from_select_item ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_apply_prunes_join_both_sides ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_apply_no_prune_when_all_columns_referenced ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_apply_prunes_single_table ... ok
[INFO] [stdout] test rule::projection_pruning_tests::test_apply_preserves_column_order ... ok
[INFO] [stdout] test rule::index_selection_tests::test_recursive_apply_through_projection ... ok
[INFO] [stdout] test rule::subquery_flattening_tests::test_flatten_exists_to_semi_join ... ok
[INFO] [stdout] test rule::subquery_flattening_tests::test_flatten_in_subquery_to_semi_join ... ok
[INFO] [stdout] test rule::subquery_flattening_tests::test_flatten_in_subquery_with_extra_predicate ... ok
[INFO] [stdout] test rule::subquery_flattening_tests::test_flatten_exists_with_remaining_predicate ... ok
[INFO] [stdout] test rule::subquery_flattening_tests::test_flatten_in_subquery_inside_projection ... ok
[INFO] [stdout] test rule::subquery_flattening_tests::test_is_simple_subquery ... ok
[INFO] [stdout] test rule::subquery_flattening_tests::test_flatten_not_in_subquery_to_anti_join ... ok
[INFO] [stdout] test rule::subquery_flattening_tests::test_flatten_multiple_in_subqueries ... ok
[INFO] [stdout] test rule::subquery_flattening_tests::test_no_flatten_non_simple_subquery ... ok
[INFO] [stdout] test rule::tests::test_collect_column_refs_unqualified ... ok
[INFO] [stdout] test rule::subquery_flattening_tests::test_no_flatten_uncorrelated_exists ... ok
[INFO] [stdout] test rule::tests::test_collect_table_aliases_join ... ok
[INFO] [stdout] test rule::tests::test_collect_table_aliases_scan ... ok
[INFO] [stdout] test rule::tests::test_combine_conjuncts_single ... ok
[INFO] [stdout] test rule::tests::test_combine_conjuncts_empty ... ok
[INFO] [stdout] test rule::tests::test_merge_consecutive_filters ... ok
[INFO] [stdout] test rule::tests::test_pushdown_filter_join_condition_remaining ... ok
[INFO] [stdout] test rule::tests::test_pushdown_filter_left_outer_join_allows_left ... ok
[INFO] [stdout] test rule::tests::test_combine_conjuncts_multiple ... ok
[INFO] [stdout] test rule::tests::test_pushdown_filter_left_outer_join_restricts_right ... ok
[INFO] [stdout] test rule::tests::test_pushdown_filter_through_distinct ... ok
[INFO] [stdout] test rule::tests::test_pushdown_filter_through_sort ... ok
[INFO] [stdout] test rule::tests::test_pushdown_complex_predicate ... ok
[INFO] [stdout] test rule::tests::test_pushdown_constant_predicate ... ok
[INFO] [stdout] test rule::tests::test_pushdown_filter_to_join_inner ... ok
[INFO] [stdout] test rule::subquery_flattening_tests::test_flatten_not_exists_to_anti_join ... ok
[INFO] [stdout] test rule::tests::test_collect_column_refs_qualified ... ok
[INFO] [stdout] test rule::tests::test_pushdown_filter_to_join_both_sides ... ok
[INFO] [stdout] test rule::tests::test_pushdown_right_outer_join_allows_right ... ok
[INFO] [stdout] test rule::tests::test_pushdown_nested_join ... ok
[INFO] [stdout] test rule::tests::test_pushdown_right_outer_join_restricts_left ... ok
[INFO] [stdout] test rule::tests::test_split_conjuncts_multiple ... ok
[INFO] [stdout] test rule::tests::test_pushdown_full_outer_join_no_pushdown ... ok
[INFO] [stdout] test rule::tests::test_pushdown_no_change_for_scan ... ok
[INFO] [stdout] test rule::tests::test_pushdown_preserves_join_condition ... ok
[INFO] [stdout] test rule::tests::test_split_conjuncts_single ... ok
[INFO] [stdout] test statistics::tests::test_collect_all_null_column ... ok
[INFO] [stdout] test statistics::tests::test_collect_basic_stats ... ok
[INFO] [stdout] test statistics::tests::test_collect_columns_subset ... ok
[INFO] [stdout] test statistics::tests::test_collect_unsortable_column ... ok
[INFO] [stdout] test statistics::tests::test_column_statistics_default ... ok
[INFO] [stdout] test statistics::tests::test_collect_empty_table ... ok
[INFO] [stdout] test statistics::tests::test_histogram_not_built_for_small_ndv ... ok
[INFO] [stdout] test statistics::tests::test_in_memory_store_basic ... ok
[INFO] [stdout] test statistics::tests::test_selectivity_eq ... ok
[INFO] [stdout] test statistics::tests::test_selectivity_eq_zero_ndv ... ok
[INFO] [stdout] test statistics::tests::test_selectivity_range ... ok
[INFO] [stdout] test statistics::tests::test_store_case_insensitive ... ok
[INFO] [stdout] test statistics::tests::test_collect_with_duplicates ... ok
[INFO] [stdout] test statistics::tests::test_update_min_max_with_mixed_types ... ok
[INFO] [stdout] test tests::version_returns_nonempty ... ok
[INFO] [stdout] test statistics::tests::test_table_statistics_empty ... ok
[INFO] [stdout] test plan_cache::tests::test_zero_capacity_panics - should panic ... ok
[INFO] [stdout] test result_cache::tests::test_zero_capacity_panics - should panic ... ok
[INFO] [stdout] test statistics::tests::test_histogram_built_for_large_ndv ... ok
[INFO] [stdout] test statistics::tests::test_histogram_find_bucket ... ok
[INFO] [stdout] test ml_cost::tests::test_ml_model_fifo_eviction ... ok
[INFO] [stdout] test ml_cost::tests::test_7b1_training_history_monotonic_increase ... ok
[INFO] [stdout] test ml_cost::tests::test_end_to_end_ml_beats_handcrafted_with_real_plan ... ok
[INFO] [stdout] test ml_cost::tests::test_7b1_job_benchmark_10k_queries ... ok
[INFO] [stdout] test statistics::tests::test_collect_large_dataset_performance ... ok
[INFO] [stdout] test cost::tests::test_stats_affect_cost_estimate ... ok
[INFO] [stdout] test statistics::tests::test_collect_100k_rows_accuracy ... ok
[INFO] [stdout] test ml_cost::tests::test_ml_model_beats_handcrafted_on_100k_samples ... ok
[INFO] [stdout] test ml_cost::tests::test_7b1_continuous_learning_weight_progression ... ok
[INFO] [stdout] test ml_cost::tests::test_7b1_hybrid_model_online_learning ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 293 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 28.48s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/bench.rs (/opt/rustwide/target/debug/build/szrsql-optimizer/99c87e3aa0e8b8f1/out/bench-99c87e3aa0e8b8f1)
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test tpch::test_tpch_q1_pricing_summary ... ok
[INFO] [stdout] test tpch::test_tpch_q5_local_supplier_volume ... ok
[INFO] [stdout] test tpch::test_tpch_q6_forecast_revenue ... ok
[INFO] [stdout] test tpch::test_tpch_q10_returned_item ... ok
[INFO] [stdout] test tpch::test_tpch_q7_volume_shipping ... ok
[INFO] [stdout] test tpch::test_tpch_q3_shipping_priority ... ok
[INFO] [stdout] test tpch::test_tpch_q9_product_profit ... ok
[INFO] [stdout] test tpch::test_tpch_q4_order_priority ... ok
[INFO] [stdout] test tpch::test_tpch_q8_national_market_share ... ok
[INFO] [stdout] test tpch::test_tpch_q2_min_cost_supplier ... ok
[INFO] [stderr]      Running tests/fuzz.rs (/opt/rustwide/target/debug/build/szrsql-optimizer/5ea4b015c2d69fd1/out/fuzz-5ea4b015c2d69fd1)
[INFO] [stdout] test tpch::test_tpch_all_queries_benchmark ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test optimizer_fuzz::test_fuzz_large_scale ... ignored, 大规模 fuzz 测试，需通过 --ignored 启用并设置 FUZZ_ITERATIONS
[INFO] [stdout] test optimizer_fuzz::test_fuzz_smoke_deterministic ... ok
[INFO] [stdout] test optimizer_fuzz::test_fuzz_cost_model_no_panic ... ok
[INFO] [stdout] test optimizer_fuzz::test_fuzz_plan_no_panic ... ok
[INFO] [stdout] test optimizer_fuzz::test_fuzz_optimizer_rules_no_panic ... ok
[INFO] [stdout] test optimizer_fuzz::test_fuzz_optimizer_preserves_plan_structure ... ok
[INFO] [stdout] test optimizer_fuzz::test_fuzz_executor_no_panic_and_equivalence ... ok
[INFO] [stdout] test optimizer_fuzz::test_fuzz_all_dimensions_summary ... ok
[INFO] [stderr]    Doc-tests szrsql_optimizer
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 5.23s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test src/result_cache.rs - result_cache::ResultCache (line 109) ... ignored
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "443ede1b8ac2bfeaefa156d64aa1335f11c3adddf0babd5108d38d751271af4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "443ede1b8ac2bfeaefa156d64aa1335f11c3adddf0babd5108d38d751271af4f", kill_on_drop: false }`
[INFO] [stdout] 443ede1b8ac2bfeaefa156d64aa1335f11c3adddf0babd5108d38d751271af4f
