This patch modifies the PBS server to require that all jobs have a valid Account parameter. We use the Account parameter to associate jobs with projects. This allows a user to belong to multiple projects and to account for project compute time usage on a per-job basis. This patch ensures that all jobs submitted to a PBS server have an associated valid "project" (aka Account in PBS documentation). A flat file is used to determine if a specified project is valid for the submitting user. If the user didn't specify a project and the user has as least one project in the project file the first one is used. Otherwise the job is rejected. The file with valid user-project associations follows. The first project is considered the default project. ---- file start ---- :[, ...] :[, ...] : ---- file end ---- Patch pseudo-code: -> if the user's job specifies a project (-A) 1. if specified project appears in user-project file, job is accepted 2. otherwise the job is rejected: invalid project -> if the user's job didn't specify a project (-A) 1. if the user has projects in the user-project file, the first one is assumed to be the default and is associated to the job, the job is accepted 2. otherwise the job is rejected: user doesn't belong to a project Applies to PBS version(s) 2.3.12 and above. This patch is distributed through the OpenPBS Public Web at: http://www.mcs.anl.gov/openpbs/ Author: John-Paul Navarro Math & Computer Science Division Argonne National Laboratory ------------------------------------------------------- Usage: cd patch -p0 < -------------------------------------------------------