Permalink
Browse files

This commit was manufactured by cvs2svn to create tag

'slurm-0-3-10-1'.
  • Loading branch information...
1 parent 8e60bcf commit 0944e9bae9b02871ac6bbac065d4792ece842254 no author committed Dec 8, 2004
View
@@ -9,8 +9,8 @@
Name: slurm
Major: 0
Minor: 3
- Micro: 7
- Version: 0.3.7
+ Micro: 10
+ Version: 0.3.10
Release: 1
API_CURRENT: 5
API_AGE: 4
View
@@ -1,6 +1,29 @@
This file describes changes in recent versions of SLURM. It primarily
documents those changes that are of interest to users and admins.
+* Changes in SLURM 0.3.10
+=========================
+ -- Move startup script from "/etc/rc.d/init.d/slurm" to "/etc/init.d/slurm"
+ -- Avoid creating orphaned process group when starting job processes.
+ -- Remove calls in auth/munge plugin deprecated by munge-0.4.
+
+* Changes in SLURM 0.3.9
+========================
+ -- Fixes for reported problems:
+ - slurm/512: Let job steps run on DRAINING nodes
+ - slurm/513: Gracefully deal with UIDs missing from passwd file
+ -- Create new allocation as needed for debugger in case old allocation
+ has been purged
+ -- Fix bug in scheduling jobs when a processor count is specified
+ and FastSchedule=0 and the cluster is heterogeneous.
+ -- Fix srun bug when --input, --output and --error are all "none"
+ -- Allow single task id to be selected with --input, --output, and --error.
+ -- Create shared memory segment for Elan statistics when using the
+ switch/elan plugin.
+
+* Changes in SLURM 0.3.8
+========================
+ -- More fixes necessary for TotalView.
* Changes in SLURM 0.3.7
========================
@@ -171,6 +171,7 @@ Possible values are"YES" and "NO".
Set the job's required features on nodes specified value. Multiple values
may be comma separated if all features are required (AND operation) or
separated by "|" if any of the specified features are required (OR operation).
+Value may be cleared with blank data value, "Features=".
.TP
\fIJobId\fP=<id>
Identify the job to be updated. This specification is required.
@@ -196,6 +197,7 @@ Set the job's priority to the specified value.
\fIReqNodeList\fP=<nodes>
Set the job's list of required node. Multiple node names may be specified using
simple node range expressions (e.g. "lx[10-20]").
+Value may be cleared with blank data value, "ReqNodeList=".
.TP
\fIReqNodes\fP=<count>
Set the job's count of required nodes to the specified value.
@@ -232,8 +234,9 @@ changing its underlying state.
\fBSPECIFICATIONS FOR UPDATE AND DELETE COMMANDS, PARTITIONS\fR
.TP
\fIAllowGroups\fP=<name>
-Identify the user groups which may use this partition. Multiple groups
-may be specified in a comma separated list.
+Identify the user groups which may use this partition.
+Multiple groups may be specified in a comma separated list.
+To permit all groups to use the partition specify "AllowGroups=ALL"
.TP
\fIDefault\fP=<yes|no>
Specify if this partition is to be used by jobs which do not explicitly
@@ -249,6 +252,7 @@ Possible values are"YES" and "NO".
Identify the node(s) to be associated with this partition. Multiple node names
may be specified using simple node range expressions (e.g. "lx[10-20]").
Note that jobs may only be associated with one partition at any time.
+Specify a blank data value to remove all nodes from a partition: "Nodes=".
.TP
\fIPartitionName\fP=<name>
Identify the partition to be updated. This specification is required.
View
@@ -223,9 +223,11 @@ the job. By default only errors are displayed.
.TP
\fB\-W\fR, \fB\-\-wait\fR=\fIseconds\fR
Specify how long to wait after the first task terminates before terminating
-all remaining tasks. The default value is unlimited. This can be useful to
-insure that a job is terminated in a timely fashion in the event that one
-or more tasks terminate prematurely.
+all remaining tasks. A value of 0 indicates an unlimited wait (a warning will
+be issued after 60 seconds). The default value is set by the WaitTime
+parameter in the slurm configuration file (see \fBslurm.conf(5)\fR). This
+option can be useful to insure that a job is terminated in a timely fashion
+in the event that one or more tasks terminate prematurely.
.TP
\fB\-q\fR, \fB\-\-quit-on-interrupt\fR
Quit immediately on single SIGINT (Ctrl-C). Use of this option
View
@@ -16,6 +16,11 @@
# $Id$
+BINDIR=/usr/bin
+CONFDIR=/etc/slurm
+LIBDIR=/usr/lib
+SBINDIR=/usr/sbin
+
# Source function library.
[ -f /etc/rc.d/init.d/functions ] || exit 0
. /etc/rc.d/init.d/functions
@@ -28,14 +33,17 @@ else
SLURMD_OPTIONS=""
fi
-[ -f /etc/slurm/slurm.conf ] || exit 1
+[ -f $CONFDIR/slurm.conf ] || exit 1
+
+# setup library paths for slurm and munge support
+export LD_LIBRARY_PATH="$LIBDIR:$LD_LIBRARY_PATH"
RETVAL=0
start() {
echo -n "starting $1: "
unset HOME MAIL USER USERNAME
- daemon /usr/sbin/$1 $2
+ daemon $SBINDIR/$1 $2
RETVAL=$?
echo
touch /var/lock/subsys/slurm
@@ -52,7 +60,7 @@ stop() {
}
startall() {
- for prog in `scontrol show daemons`; do
+ for prog in `$BINDIR/scontrol show daemons`; do
optvar=`echo ${prog}_OPTIONS | tr "a-z" "A-Z"`
start $prog ${!optvar}
done
@@ -68,7 +76,7 @@ slurmstatus() {
local rpid
local pidfile
- pidfile=`grep -i ${base}pid /etc/slurm/slurm.conf | grep -v '^ *#'`
+ pidfile=`grep -i ${base}pid $CONFDIR/slurm.conf | grep -v '^ *#'`
if [ $? = 0 ]; then
pidfile=${pidfile##*=}
pidfile=${pidfile%#*}
@@ -123,33 +131,34 @@ case "$1" in
startall
;;
stop)
- for prog in `scontrol show daemons`; do
+ for prog in `$BINDIR/scontrol show daemons`; do
stop $prog
done
;;
status)
- for prog in `scontrol show daemons`; do
+ for prog in `$BINDIR/scontrol show daemons`; do
slurmstatus $prog
done
;;
restart)
- $0 stop && $0 start
+ $0 stop
+ $0 start
;;
condrestart)
if [ -f /var/lock/subsys/slurm ]; then
- for prog in `scontrol show daemons`; do
+ for prog in `$BINDIR/scontrol show daemons`; do
stop $prog
start $prog
done
fi
;;
reconfig)
- for prog in `scontrol show daemons`; do
+ for prog in `$BINDIR/scontrol show daemons`; do
killproc $prog -HUP
done
;;
test)
- for prog in `scontrol show daemons`; do
+ for prog in `$BINDIR/scontrol show daemons`; do
echo "$prog runs here"
done
;;
View
@@ -24,8 +24,12 @@ Requires: openssl >= 0.9.6
#
%if %{?_with_debug:1}%{!?_with_debug:0}
%define _enable_debug --enable-debug
- %define __os_install_post /usr/lib/rpm/brp-compress
%endif
+#
+# Never allow rpm to strip binaries as this will break
+# parallel debugging capability
+#
+%define __os_install_post /usr/lib/rpm/brp-compress
%package devel
@@ -108,16 +112,16 @@ rm -rf "$RPM_BUILD_ROOT"
mkdir -p "$RPM_BUILD_ROOT"
DESTDIR="$RPM_BUILD_ROOT" make install
-install -D -m755 etc/init.d.slurm $RPM_BUILD_ROOT/etc/rc.d/init.d/slurm
+install -D -m755 etc/init.d.slurm $RPM_BUILD_ROOT/etc/init.d/slurm
install -D -m644 etc/slurm.conf.example $RPM_BUILD_ROOT/etc/slurm/slurm.conf
# Delete unpackaged files:
-rm -f $RPM_BUILD_ROOT/usr/lib/slurm/*.{a,la}
+rm -f $RPM_BUILD_ROOT/%{_libdir}/slurm/*.{a,la}
# Build file lists for optional plugin packages
for plugin in auth_munge auth_authd switch_elan; do
LIST=./${plugin}.files
touch $LIST
- test -f $RPM_BUILD_ROOT/usr/lib/slurm/${plugin}.so &&
+ test -f $RPM_BUILD_ROOT/%{_libdir}/slurm/${plugin}.so &&
echo %{_libdir}/slurm/${plugin}.so > $LIST
done
@@ -154,7 +158,7 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/slurm/sched_builtin.so
%{_libdir}/slurm/switch_none.so
%dir %{_libdir}/slurm/src
-%config(noreplace) /etc/rc.d/init.d/slurm
+%config(noreplace) /etc/init.d/slurm
%config(noreplace) /etc/slurm/slurm.conf
#############################################################################
@@ -189,29 +193,24 @@ rm -rf $RPM_BUILD_ROOT
#############################################################################
%pre
-#if [ -x /etc/rc.d/init.d/slurm ]; then
-# if /etc/rc.d/init.d/slurm status | grep -q running; then
-# /etc/rc.d/init.d/slurm stop
+#if [ -x /etc/init.d/slurm ]; then
+# if /etc/init.d/slurm status | grep -q running; then
+# /etc/init.d/slurm stop
# fi
#fi
%post
/sbin/ldconfig %{_libdir}
-if [ -x /etc/rc.d/init.d/slurm ]; then
- [ -x /sbin/chkconfig ] && /sbin/chkconfig --del slurm
+if [ $1 = 1 ]; then
[ -x /sbin/chkconfig ] && /sbin/chkconfig --add slurm
-# if ! /etc/rc.d/init.d/slurm status | grep -q running \
-# || ! /etc/rc.d/init.d/slurm test | grep -q slurmctld; then
-# /etc/rc.d/init.d/slurm start
-# fi
fi
%preun
-if [ "$1" = 0 ]; then
- if [ -x /etc/rc.d/init.d/slurm ]; then
+if [ $1 = 0 ]; then
+ if [ -x /etc/init.d/slurm ]; then
[ -x /sbin/chkconfig ] && /sbin/chkconfig --del slurm
- if /etc/rc.d/init.d/slurm status | grep -q running; then
- /etc/rc.d/init.d/slurm stop
+ if /etc/init.d/slurm status | grep -q running; then
+ /etc/init.d/slurm stop
fi
fi
fi
@@ -224,6 +223,11 @@ fi
%changelog
+* Fri Oct 01 2004 Mark Grondona <mgrondona@llnl.gov>
+- don't delete and add service in %post
+* Wed Aug 04 2004 Mark Grondona <mgrondona@llnl.gov>
+- don't allow rpm to strip binaries since this breaks interface to parallel
+ debuggers.
* Thu Jul 29 2004 Morris Jette <jette1@llnl.gov>
- added checkpoint_none.so and jobcomp_script.so plugins
* Fri Mar 07 2004 Mark Grondona <mgrondona@llnl.gov>
@@ -902,6 +902,9 @@ int slurm_send_rc_msg(slurm_msg_t *msg, int rc)
{
slurm_msg_t resp_msg;
return_code_msg_t rc_msg;
+
+ if (msg->conn_fd < 0)
+ return (ENOTCONN);
rc_msg.return_code = rc;
@@ -452,7 +452,7 @@ _decode_cred(char *m, slurm_auth_credential_t *c)
error ("Munge decode failed: %s %s",
munge_ctx_strerror(ctx), retry ? "(retrying ...)": "");
- if ((e = EMUNGE_SOCKET) && retry--)
+ if ((e == EMUNGE_SOCKET) && retry--)
goto again;
/*
@@ -545,22 +545,9 @@ _print_cred_info(munge_info_t *mi)
if (mi->encoded > 0)
info ("ENCODED: %s", ctime_r(&mi->encoded, buf));
+
if (mi->decoded > 0)
info ("DECODED: %s", ctime_r(&mi->decoded, buf));
-
- if ( (mi->cipher > MUNGE_CIPHER_NONE)
- && (mi->cipher < MUNGE_CIPHER_LAST_ENTRY) )
- info ("CIPHER: %s", munge_cipher_strings[mi->cipher]);
-
- if ( (mi->mac > MUNGE_MAC_NONE)
- && (mi->mac < MUNGE_MAC_LAST_ENTRY) ) {
- info ("MAC: %s", munge_mac_strings[mi->mac]);
- /*
- * Only print ZIP if MAC is valid.
- * (because ZIP == NONE could be valid)
- */
- info ("ZIP: %s", munge_zip_strings[mi->zip]);
- }
}
@@ -162,7 +162,7 @@ _get_user_name(uint32_t user_id, char *user_name, int buf_size)
else
snprintf(user_name, buf_size, "Unknown");
cache_uid = user_id;
- snprintf(cache_name, sizeof(cache_name), user_info->pw_name);
+ snprintf(cache_name, sizeof(cache_name), user_name);
}
}
@@ -218,7 +218,7 @@ int slurm_jobcomp_log_record ( struct job_record *job_ptr )
job_state_string(job_state),
job_ptr->partition, lim_str, start_str,
end_str, job_ptr->nodes);
- tot_size = (strlen(job_rec) + 1);
+ tot_size = strlen(job_rec);
while ( offset < tot_size ) {
wrote = write(job_comp_fd, job_rec + offset,
Oops, something went wrong.

0 comments on commit 0944e9b

Please sign in to comment.