From f0cc72b6de06c6a4c1198f7dde396b9d5bf7cd91 Mon Sep 17 00:00:00 2001 From: "Evgeny @ SimpleX Chat" <259188159+evgeny-simplex@users.noreply.github.com> Date: Wed, 21 Oct 2026 12:53:43 +0000 Subject: [PATCH] add script, update simplexmq --- cabal.project | 2 +- scripts/ci/test-watchdog.sh | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100755 scripts/ci/test-watchdog.sh diff --git a/cabal.project b/cabal.project index 746a09c590..616f991472 100644 --- a/cabal.project +++ b/cabal.project @@ -21,7 +21,7 @@ constraints: zip +disable-bzip2 +disable-zstd source-repository-package type: git location: https://github.com/simplex-chat/simplexmq.git - tag: 8bc4d3601250d9f79dc7e80ead319ec2b6d4a95a + tag: 1aea2a420b8b592730bed9d2bcba5025b81af018 source-repository-package type: git diff --git a/scripts/ci/test-watchdog.sh b/scripts/ci/test-watchdog.sh new file mode 100755 index 0000000000..524763a548 --- /dev/null +++ b/scripts/ci/test-watchdog.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +minutes=$1 +sleep $((minutes * 60)) +pid=$(pgrep -x simplex-chat-test | head -1) +if [ -z "$pid" ]; then + exit 0 +fi + +children=$(pgrep -P "$pid") +pids="$pid $children" +for child in $children; do + pids="$pids $(pgrep -P "$child")" +done + +echo "::group::simplex-chat-test is still running after $minutes minutes" +for p in $pids; do + ps -o pid,ppid,stat,etime,command -p "$p" +done +for p in $pids; do + echo "=== stacks of $p" + if [ "$(uname)" = Darwin ]; then + sample "$p" 3 -file /dev/stdout + else + for task in /proc/"$p"/task/*; do + echo "--- thread ${task##*/} $(cat "$task"/comm) $(cat "$task"/wchan)" + sudo cat "$task"/stack + done + fi +done +echo "::endgroup::" +kill "$pid"