Modify Place Group in a hook

Im trying to modify placement groups in a hook as indicated in 6.13.3.20 Plugins (Hooks) Guide (2021.1.3) but I get an error.

Here some background:

I do this using qsub as:

As the resource two is already a declared resource, submiting the job produce no error. I can also see the details of this submission as I have the current hook with with debug=True:

cat /var/spool/pbs/server_priv/hooks/tmp/hook_queuejob_correct_queue_1657526372.in

pbs.event().job.Submit_arguments=jsdl-hpcpa:Argument-lplace=group=two</jsdl-hpcpa:Argument>jsdl-hpcpa:Argument-lselect=ncpus=1</jsdl-hpcpa:Argument>jsdl-hpcpa:Argumentjob.sh</jsdl-hpcpa:Argument>
pbs.event().job.Resource_List[place]=group=two
pbs.event().job.Resource_List[select]=ncpus=1
pbs.event().job.Job_Name=job.sh
pbs.event().job.Resource_List[walltime]=00:00:20
pbs.event().job.Mail_Points=abe
pbs.event().job.Mail_Users=israel@intersect.org.au
pbs.event().job.Checkpoint=u
pbs.event().job.Hold_Types=n
pbs.event().job.Join_Path=n
pbs.event().job.Keep_Files=n
pbs.event().job.Priority=0
pbs.event().job.Rerunable=TRUE
pbs.event().job.Variable_List=PBS_O_HOME=/home/ec2-user,PBS_O_LANG=en_AU.UTF-8,PBS_O_LOGNAME=ec2-user,PBS_O_PATH=/home/ec2-user/.local/bin:/home/ec2-user/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/pbs/bin,PBS_O_MAIL=/var/spool/mail/ec2-user,PBS_O_SHELL=/bin/bash,PBS_O_WORKDIR=/home/ec2-user,PBS_O_SYSTEM=Linux
pbs.event().job.queue=israel_queue
pbs.get_local_nodename()=israel-operations.novalocal
pbs.event().type=queuejob
pbs.event().hook_name=correct_queue
pbs.event().hook_type=site
pbs.event().requestor=ec2-user
pbs.event().requestor_host=localhost
pbs.event().user=pbsadmin
pbs.event().alarm=30

The main question is, modifying that resource in a hook should be something as (according to that section 6.13.3.20 from Plugins (Hooks) Guide (2021.1.3)):


but I get

If in the other way, I simply use the same wording as in guide:


I get

Am I missing something? We simply would like to give specific resource values for pl=pbs.place(“group=resource”) such as “two” or other resources we already have.

As always your feedback is so appreciated it.

Can you please try the below syntax:

#job.Resource_List["place"] = pbs.place("[arrangement]:[sharing]:[group]")

example:
jobB = pbs.event().job
jobB.Resource_List["place"] = pbs.place("pack:exclhost")

Ref: 5.2.5.1 How to Set select and place in Hooks
PBS Professional 2021.1.3 Hooks Guide HG-63

Thank you Adarsh,

This guided me to the solution. The reason of my confussion was due to I was using debug files that were missing the particular resource I was using. This was solve by simply running the hook and submit jobs.

Much appreciate your quick reply on this.

1 Like