This is an automated email from the ASF dual-hosted git repository.

alamb pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow-rs.git


The following commit(s) were added to refs/heads/master by this push:
     new 62934e9  Automatically retry failed MIRI runs to work around 
intermittent failures (#922)
62934e9 is described below

commit 62934e95f24729899f6205d39005b0e940f8190c
Author: Andrew Lamb <[email protected]>
AuthorDate: Sat Nov 6 05:55:53 2021 -0400

    Automatically retry failed MIRI runs to work around intermittent failures 
(#922)
    
    * Move MIRI checks into a shell script
    
    * add retry loop
---
 .github/workflows/miri.sh   | 26 ++++++++++++++++++++++++++
 .github/workflows/miri.yaml |  7 +------
 2 files changed, 27 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/miri.sh b/.github/workflows/miri.sh
new file mode 100755
index 0000000..27c6f5e
--- /dev/null
+++ b/.github/workflows/miri.sh
@@ -0,0 +1,26 @@
+#!/bin/bash
+#
+# Script
+#
+# Must be run with nightly rust for example
+# rustup default nightly
+
+
+export MIRIFLAGS="-Zmiri-disable-isolation"
+cargo miri setup
+cargo clean
+
+run_miri() {
+    # Currently only the arrow crate is tested with miri
+    # IO related tests and some unsupported tests are skipped
+    cargo miri test -p arrow -- --skip csv --skip ipc --skip json
+}
+
+# If MIRI fails, automatically retry
+# Seems like miri is occasionally killed by the github runner
+# https://github.com/apache/arrow-rs/issues/879
+for i in `seq 1 5`; do
+    echo "Starting Arrow MIRI run..."
+    run_miri && break
+    echo "foo" > /tmp/data.txt
+done
diff --git a/.github/workflows/miri.yaml b/.github/workflows/miri.yaml
index b7d64db..bcbb48e 100644
--- a/.github/workflows/miri.yaml
+++ b/.github/workflows/miri.yaml
@@ -44,9 +44,4 @@ jobs:
           RUST_BACKTRACE: full
           RUST_LOG: "trace"
         run: |
-          export MIRIFLAGS="-Zmiri-disable-isolation"
-          cargo miri setup
-          cargo clean
-          # Currently only the arrow crate is tested with miri
-          # IO related tests and some unsupported tests are skipped
-          cargo miri test -p arrow -- --skip csv --skip ipc --skip json
+          bash .github/workflows/miri.sh

Reply via email to