[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [OSSTEST PATCH 07/33] invoke-daemon: Honour OSSTEST_DAEMON_TCLSH



It appears that tcl8.5 in wheezy has a serious bug which makes `after
idle' not always work.  tcl8.4 has been working well in wheezy but is
not in jessie, where tcl8.5 works (and tcl8.6 has a serious event loop
bug - Debian #826741).

So we need to use different versions of Tcl on different hosts.
Allow this to be specified in ~/.xen-osstest/settings.

This affects only:
 - invoke-daemon (which is normally run from inittab)
 - mg-schema-test-database

sg-run-job and sg-execute-flight are not affected.  They do not
currently use `after idle' so that is OK for now.

Signed-off-by: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
---
 invoke-daemon           |  2 +-
 mg-schema-test-database | 10 +++++++++-
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/invoke-daemon b/invoke-daemon
index ad1434a..e4a47bb 100755
--- a/invoke-daemon
+++ b/invoke-daemon
@@ -24,4 +24,4 @@ fi
 
 cd "${0%/*}"
 if [ "x$2" != x ]; then sleep $2; fi
-exec ./$1 2>&1 | exec logger -t $1 -p local4.info
+exec $OSSTEST_DAEMON_TCLSH ./$1 2>&1 | exec logger -t $1 -p local4.info
diff --git a/mg-schema-test-database b/mg-schema-test-database
index 892e41a..5ebba39 100755
--- a/mg-schema-test-database
+++ b/mg-schema-test-database
@@ -567,7 +567,15 @@ daemons)
        for arg in "$@"; do
                case "$arg" in
                _*)     suffix="$arg" ;;
-               owner|queue)    wantdaemons+=("./ms-${arg}daemon") ;;
+               owner|queue)
+                       tcl="$(bash -ec '
+                               set -o posix
+                               if [ -e $HOME/.xen-osstest/settings ]; then
+                                       source $HOME/.xen-osstest/settings
+                               fi
+                               echo "$OSSTEST_DAEMON_TCLSH"
+                       ')"
+                       wantdaemons+=("$tcl ./ms-${arg}daemon") ;;
                */*)            wantdaemons+=("$arg") ;;
                *)              wantdaemons+=("./$arg") ;;
                esac
-- 
2.1.4


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.