AdamGS commented on issue #16452: URL: https://github.com/apache/datafusion/issues/16452#issuecomment-2988170885
I've built a repro that fails consistently, and the most interesting part of it is that when using the default test runtime (which is a tokio current thread variant), the test passes. It only fails with the multithreaded runtime which makes me think this is indeed a tokio futures interleaving issue. I'll give it some more time later tonight. ```rust #[tokio::test(flavor = "multi_thread")] async fn test_reproduce_sort_query_issue_16452() { // Seeds from the failing test case let init_seed = 10313160656544581998u64; let query_seed = 15004039071976572201u64; let config_seed_1 = 11807432710583113300u64; let config_seed_2 = 759937414670321802u64; // Use a fixed seed to replicate the original behavior more closely let random_seed = 1u64; // Use a fixed seed to ensure consistent behavior println!("Creating test generator with same config as original runner..."); let mut test_generator = SortFuzzerTestGenerator::new( 2000, 3, "sort_fuzz_table".to_string(), get_supported_types_columns(random_seed), false, random_seed, ); let mut results = vec![]; for config_seed in [config_seed_1, config_seed_2] { let r = test_generator .fuzzer_run(init_seed, query_seed, config_seed) .await .unwrap(); results.push(r); } dbg!(results.len()); for (lhs, rhs) in results.iter().tuple_windows() { check_equality_of_batches(lhs, rhs).unwrap(); } } ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org For additional commands, e-mail: github-h...@datafusion.apache.org