RELEASE NOTES FOR SLURM VERSION 13.12
12 July 2013


IMPORTANT NOTE:
If using the slurmdbd (SLURM DataBase Daemon) you must update this first.
The 13.12 slurmdbd will work with SLURM daemons of version 2.5 and above.
You will not need to update all clusters at the same time, but it is very
important to update slurmdbd first and having it running before updating
any other clusters making use of it.  No real harm will come from updating
your systems before the slurmdbd, but they will not talk to each other
until you do.  Also at least the first time running the slurmdbd you need to
make sure your my.cnf file has innodb_buffer_pool_size equal to at least 64M.
You can accomplish this by adding the line

innodb_buffer_pool_size=64M

under the [mysqld] reference in the my.cnf file and restarting the mysqld.
This is needed when converting large tables over to the new database schema.

SLURM can be upgraded from version 2.5 or 2.6 to version 13.12 without loss of
jobs or other state information. Upgrading directly from an earlier version of
SLURM will result in loss of state information.


HIGHLIGHTS
==========
 -- Added partition configuration parameters AllowAccounts, AllowQOS,
    DenyAccounts and DenyQOS to provide greater control over use.
 -- Added the ability to perform load based scheduling. Allocating resources to
    jobs on the nodes with the largest number if idle CPUs.
 -- Add mechanism for job_submit plugin to generate error message for srun,
    salloc or sbatch to stderr. New argument added to job_submit function in
    the plugin.
 -- Support for Postgres database has long since been out of date and
    problimatic, so it has been removed entirely.  If you would like to
    use it the code still exists in <= 2.6, but will not be included in
    this and future versions of the code.

RPMBUILD OPTION CHANGES
=======================
 -- The rpmbuild option for a Cray system with ALPS has changed from
    %_with_cray to %_with_cray_alps.


CONFIGURATION FILE CHANGES (see "man slurm.conf" for details)
=============================================================
 -- Added JobContainerPlugin configuration parameter and plugin infrastructure.
 -- Added partition configuration parameters AllowAccounts, AllowQOS,
    DenyAccounts and DenyQOS to provide greater control over use.
 -- SelectType: select/cray has been renamed select/alps.
 -- Added SchedulingParameters paramter of "CR_LLN" and partition parameter of
    "LLN=yes|no" to enable loadbased scheduling.
 -- In "SchedulerParameters", change default max_job_bf value from 50 to 100.
 -- Added "JobAcctGatherParams" configuration parameter. Value of "NoShare"
    disables accounting for shared memory.
 -- Added fields to "scontrol show job" output: boards_per_node,
    sockets_per_board, ntasks_per_node, ntasks_per_board, ntasks_per_socket,
    ntasks_per_core, and nice.

DBD CONFIGURATION FILE CHANGES (see "man slurmdbd.conf" for details)
====================================================================


COMMAND CHANGES (see man pages for details)
===========================================
 -- Added sbatch --signal option of "B:" to signal the batch shell rather than
    only the spawned job steps.
 -- Added sinfo and squeue format option of "%all" to print all fields available
    for the data type with a vertical bar separating each field.
 -- Add StdIn, StdOut, and StdErr paths to job information dumped with
    "scontrol show job".
 -- Permit Slurm administrator to submit a batch job as any user.
 -- Added -I|--item-extract option to sh5util to extract data item from series.

OTHER CHANGES
=============
 -- Added job_info() and step_info() functions to the gres plugins to extract
    plugin specific fields from the job's or step's GRES data structure.

API CHANGES
===========

Changed members of the following structs
========================================
 -- partition_info, added: allow_accounts, allow_qos, deny_accounts,
    deny_groups and deny_qos.


Added the following struct definitions
======================================
 -- struct job_info: added std_err, std_in and std_out.

Changed the following enums and #defines
========================================


Added the following API's
=========================


Changed the following API's
===========================
 -- Add task pointer to the task_post_term() function in task plugins. The
    terminating task's PID is available in task->pid.

DBD API Changes
===============
