|
92 | 92 | container: ghcr.io/facebookincubator/velox-dev:centos9 |
93 | 93 | timeout-minutes: 120 |
94 | 94 | env: |
95 | | - CCACHE_DIR: "${GITHUB_WORKSPACE}/.ccache" |
| 95 | + CCACHE_DIR: "${{ github.workspace }}/.ccache" |
96 | 96 | LINUX_DISTRO: "ubuntu" |
97 | 97 | MAKEFLAGS: "NUM_THREADS=${{ inputs.numThreads || 16 }} MAX_HIGH_MEM_JOBS=${{ inputs.maxHighMemJobs || 8 }} MAX_LINK_JOBS=${{ inputs.maxLinkJobs || 4 }}" |
98 | 98 |
|
@@ -892,3 +892,68 @@ jobs: |
892 | 892 | path: | |
893 | 893 | /tmp/window_fuzzer_repro |
894 | 894 | /tmp/server.log |
| 895 | +
|
| 896 | + presto-java-writer-fuzzer-run: |
| 897 | + name: Writer Fuzzer with Presto as source of truth |
| 898 | + needs: compile |
| 899 | + runs-on: ubuntu-latest |
| 900 | + container: ghcr.io/facebookincubator/velox-dev:presto-java |
| 901 | + timeout-minutes: 120 |
| 902 | + env: |
| 903 | + CCACHE_DIR: "${{ github.workspace }}/.ccache/" |
| 904 | + LINUX_DISTRO: "centos" |
| 905 | + steps: |
| 906 | + |
| 907 | + - name: Download writer fuzzer |
| 908 | + uses: actions/download-artifact@v4 |
| 909 | + with: |
| 910 | + name: writer |
| 911 | + |
| 912 | + - name: "Checkout Repo" |
| 913 | + uses: actions/checkout@v4 |
| 914 | + with: |
| 915 | + path: velox |
| 916 | + submodules: 'recursive' |
| 917 | + ref: "${{ inputs.ref }}" |
| 918 | + |
| 919 | + - name: Fix git permissions |
| 920 | + # Usually actions/checkout does this but as we run in a container |
| 921 | + # it doesn't work |
| 922 | + run: git config --global --add safe.directory ${GITHUB_WORKSPACE}/velox |
| 923 | + |
| 924 | + - name: "Run Writer Fuzzer" |
| 925 | + run: | |
| 926 | + cd velox |
| 927 | + cp ./scripts/presto/etc/hive.properties $PRESTO_HOME/etc/catalog |
| 928 | + ls -lR $PRESTO_HOME/etc |
| 929 | + echo "jvm config content:" |
| 930 | + cat $PRESTO_HOME/etc/jvm.config |
| 931 | + $PRESTO_HOME/bin/launcher run -v > /tmp/server.log 2>&1 & |
| 932 | + ls -lR /var/log |
| 933 | + # Sleep for 60 seconds to allow Presto server to start. |
| 934 | + sleep 60 |
| 935 | + /opt/presto-cli --version |
| 936 | + /opt/presto-cli --server 127.0.0.1:8080 --execute 'CREATE SCHEMA hive.tpch;' |
| 937 | + cd - |
| 938 | + mkdir -p /tmp/writer_fuzzer_repro/logs/ |
| 939 | + chmod -R 777 /tmp/writer_fuzzer_repro |
| 940 | + chmod +x velox_writer_fuzzer_test |
| 941 | + ./velox_writer_fuzzer_test \ |
| 942 | + --seed ${RANDOM} \ |
| 943 | + --duration_sec $DURATION \ |
| 944 | + --minloglevel=0 \ |
| 945 | + --stderrthreshold=2 \ |
| 946 | + --req_timeout_ms 60000 \ |
| 947 | + --log_dir=/tmp/writer_fuzzer_repro/logs \ |
| 948 | + --presto_url=http://127.0.0.1:8080 \ |
| 949 | + && echo -e "\n\Writer fuzzer run finished successfully." |
| 950 | +
|
| 951 | + - name: Archive writer production artifacts |
| 952 | + if: ${{ !cancelled() }} |
| 953 | + uses: actions/upload-artifact@v4 |
| 954 | + with: |
| 955 | + name: presto-sot-writer-fuzzer-failure-artifacts |
| 956 | + path: | |
| 957 | + /tmp/writer_fuzzer_repro |
| 958 | + /tmp/server.log |
| 959 | + /var/log |
0 commit comments