mirror of
https://github.com/rsyslog/rsyslog.git
synced 2025-12-19 23:10:41 +01:00
some omprog tests are racy as they depend on sleep calls to "synchoronize". We have mostly been able to change this to more reliable synchronization. A small window of raciness remains for some tests, but this seem to be inevitable. Tests on fully loaded systems seem to incidate that we have solved the issue sufficiently. If that doesn't solve the sporadic failures, we need to further think about how to handle this. see also https://github.com/rsyslog/rsyslog/issues/2403
38 lines
1.1 KiB
Bash
Executable File
38 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
# added 2016-11-03 by singh.janmejay
|
|
# This file is part of the rsyslog project, released under ASL 2.0
|
|
. $srcdir/diag.sh init
|
|
. $srcdir/diag.sh check-command-available lsof
|
|
|
|
. $srcdir/diag.sh startup omprog-noterm.conf
|
|
. $srcdir/diag.sh wait-startup
|
|
. $srcdir/diag.sh injectmsg 0 5
|
|
. $srcdir/diag.sh wait-queueempty
|
|
. $srcdir/diag.sh content-check "msgnum:00000000:"
|
|
. $srcdir/diag.sh getpid
|
|
|
|
old_fd_count=$(lsof -p $pid | wc -l)
|
|
|
|
for i in $(seq 5 10); do
|
|
set -x
|
|
pkill -USR1 -f omprog-noterm.sh
|
|
set +x
|
|
sleep .1
|
|
. $srcdir/diag.sh injectmsg $i 1
|
|
sleep .1
|
|
done
|
|
|
|
. $srcdir/diag.sh wait-queueempty
|
|
. $srcdir/diag.sh content-check "msgnum:00000009:"
|
|
|
|
new_fd_count=$(lsof -p $pid | wc -l)
|
|
echo OLD: $old_fd_count NEW: $new_fd_count
|
|
. $srcdir/diag.sh assert-equal $old_fd_count $new_fd_count 2
|
|
|
|
. $srcdir/diag.sh shutdown-when-empty
|
|
. $srcdir/diag.sh wait-shutdown
|
|
sleep 1
|
|
. $srcdir/diag.sh assert-content-missing "received SIGTERM"
|
|
. $srcdir/diag.sh content-check "PROCESS TERMINATED (last msg: Exit due to read-failure)"
|
|
. $srcdir/diag.sh exit
|