From f7d1edcaf0c56b2401a243d5a654e224d656d311 Mon Sep 17 00:00:00 2001 From: Krishna Pai Date: Tue, 9 Jan 2024 17:35:11 -0800 Subject: [PATCH] Add join fuzzer to experimental jobs list. --- .github/workflows/experimental.yml | 64 ++++++++++++++++++++++++++---- scripts/setup-ubuntu.sh | 1 + 2 files changed, 58 insertions(+), 7 deletions(-) diff --git a/.github/workflows/experimental.yml b/.github/workflows/experimental.yml index a16b9d0f522e..50f657e83809 100644 --- a/.github/workflows/experimental.yml +++ b/.github/workflows/experimental.yml @@ -86,13 +86,23 @@ jobs: name: aggregation path: velox/_build/debug/velox/exec/tests/velox_aggregation_fuzzer_test - - name: Upload spark fuzzer + - name: Upload spark aggregation fuzzer uses: actions/upload-artifact@v3 with: - name: spark - path: | - velox/_build/debug/velox/expression/tests/spark_expression_fuzzer_test - velox/_build/debug/velox/expression/tests/spark_aggregation_fuzzer_test + name: spark_aggregation_fuzzer + path: velox/_build/debug/velox/functions/sparksql/fuzzer/spark_aggregation_fuzzer_test + + - name: Upload aggregation fuzzer + uses: actions/upload-artifact@v3 + with: + name: aggregation + path: velox/_build/debug/velox/functions/prestosql/fuzzer/velox_aggregation_fuzzer_test + + - name: Upload join fuzzer + uses: actions/upload-artifact@v3 + with: + name: join + path: velox/_build/debug/velox/exec/tests/velox_join_fuzzer_test presto-java-aggregation-fuzzer-run: @@ -151,10 +161,10 @@ jobs: - name: "Install dependencies" run: source ./scripts/setup-ubuntu.sh - - name: Download spark fuzzer + - name: Download spark aggregation fuzzer uses: actions/download-artifact@v3 with: - name: spark + name: spark_aggregation_fuzzer - name: "Run Spark Aggregate Fuzzer" run: | @@ -177,3 +187,43 @@ jobs: name: spark-agg-fuzzer-failure-artifacts path: | /tmp/spark_aggregate_fuzzer_repro + + linux-join-fuzzer-run: + runs-on: ubuntu-latest + needs: compile + timeout-minutes: 120 + steps: + + - name: "Checkout Repo" + uses: actions/checkout@v3 + with: + ref: "${{ inputs.ref || 'main' }}" + + - name: "Install dependencies" + run: source ./scripts/setup-ubuntu.sh + + - name: Download join fuzzer + uses: actions/download-artifact@v3 + with: + name: join + + - name: "Run Join Fuzzer" + run: | + mkdir -p /tmp/join_fuzzer_repro/ + rm -rfv /tmp/join_fuzzer_repro/* + chmod -R 777 /tmp/join_fuzzer_repro + chmod +x velox_join_fuzzer_test + ./velox_join_fuzzer_test \ + --seed ${RANDOM} \ + --duration_sec 1800 \ + --logtostderr=1 \ + --minloglevel=0 \ + && echo -e "\n\nAggregation fuzzer run finished successfully." + + - name: Archive aggregate production artifacts + if: always() + uses: actions/upload-artifact@v3 + with: + name: join-fuzzer-failure-artifacts + path: | + /tmp/join_fuzzer_repro \ No newline at end of file diff --git a/scripts/setup-ubuntu.sh b/scripts/setup-ubuntu.sh index 42054e593092..94c34aaa68ab 100755 --- a/scripts/setup-ubuntu.sh +++ b/scripts/setup-ubuntu.sh @@ -31,6 +31,7 @@ export CMAKE_BUILD_TYPE=Release # Install all velox and folly dependencies. # The is an issue on 22.04 where a version conflict prevents glog install, # installing libunwind first fixes this. +apt update && apt install sudo sudo --preserve-env apt update && sudo --preserve-env apt install -y libunwind-dev && \ sudo --preserve-env apt install -y \ g++ \