apache / datafusion

Apache DataFusion SQL Query Engine
https://datafusion.apache.org/
Apache License 2.0
5.89k stars 1.11k forks source link

Run sqllogictests multiple times with random fuzzed configurations #9746

Open devinjdangelo opened 5 months ago

devinjdangelo commented 5 months ago

Is your feature request related to a problem or challenge?

A thought coming off of fixing #9736 is that we could likely proactively identify issues like this by modifying sqllogictests to run multiple times with a variety of randomized configs.

Describe the solution you'd like

Perhaps this function https://github.com/apache/arrow-datafusion/blob/6c6305159711fbca43ff7798faa52aaebcb2e7d3/datafusion/sqllogictest/src/test_context.rs#L67 could be modified to set random configs over a range of valid values.

Then this could be modified to run in a loop a set number of times based on a passed option with a default.

https://github.com/apache/arrow-datafusion/blob/6c6305159711fbca43ff7798faa52aaebcb2e7d3/datafusion/sqllogictest/bin/sqllogictests.rs#L90

Describe alternatives you've considered

If this results in tests taking too long, the default could be 1 run, but occasionally (prior to a release perhaps) a longer test with many runs could be run.

Additional context

No response

Omega359 commented 5 months ago

related: #913