Changes to how default attributes are set on PBS server

Changes to how default attributes are set on PBS server

For PBS server to function properly it seems some of the attributes to be set by default. Currently, some of the default set of server attribute values comes from PBS server itself and some are set by pbs_habitat script which runs when PBS_HOME is created for the first time.


This proposal is to move the default setting that pbs_habitat does to PBS server itself so that it remains in one and only one place. This change will also make server reset the attributes back to their default values and make them visible when admin issues an 'unset' action on them.

Forum discussion

  • Default attributes server has when it starts for the first time

Attribute name

Attribute value

Attribute behavior when unset

Attribute name

Attribute value

Attribute behavior when unset

Scheduling

False

Treated as False

default_chunk.ncpus

1

default_chunk.ncpus is not applied to schedselect

resv_enable

True

Treated as True

node_fail_requeue

310

This one is special! When unset server waits for mom to request requeue of a job. Also, when unset, it is set back to 310 when server restart

max_array_size

10000

Treated as 10000

pbs_license_min

0

No effect

pbs_license_max

2147483647

No effect

pbs_license_linger_time

31536000

No effect

eligible_time_enable

False

Treated as False

max_concurrent_provision

5

Treated as 5

max_job_sequence_id

9999999

Treated as 9999999

  • Attributes that habitat sets on the server when it comes up for the first time

Attribute name

Attribute value

Attribute behavior when unset

Attribute name

Attribute value

Attribute behavior when unset

default_queue

workq

not set

log_events

511

Treated as 0 (nothing logged)

mail_from

adm

Treated as adm

query_other_jobs

True

Treated as False

scheduler_iteration

600

Teated as 0

resources_default.ncpus

1

not set

scheduling

True

Treated as False

  • Default_queue is an exception, Since pbs_habitat is responsible for creating the queue, setting the default_queue on the server object will also be with pbs_habitat.

  • This is how it will look like If the server sets the default value to attributes.

Attribute name

Attribute value

Attribute value visible when Unset

Attribute name

Attribute value

Attribute value visible when Unset

Scheduling

True

True

resv_enable

True

True

node_fail_requeue#

310

<Unset>

max_array_size

10000

10000

pbs_license_min

0

0

pbs_license_max

2147483647

2147483647

pbs_license_linger_time

31536000

31536000

eligible_time_enable

False

False

max_concurrent_provision

5

5

max_job_sequence_id

9999999

9999999

default_queue

<Set by pbs_habitat>

<Unset>

log_events

511

511

mail_from

adm

adm

query_other_jobs

True

True

scheduler_iteration

600

600

resources_default.ncpus

1

1

The table below shows which attribute will have a different default value when unset

Attribute name

Current unset value

Proposed unset value

Attribute name

Current unset value

Proposed unset value

Scheduling

Treated as False

True

log_events

Treated as 0

511

default_chunk.ncpus

default_chunk.ncpus is not applied to schedselect

1

resources_default.ncpus

not set and thus not applied

1







The unset behavior of node_fail_requeue is well defined in PBS guides.

  • Attributes marked in RED are the attributes that will be set by server by default.

  • The server will also set these attributes (except node_fail_requeue, in the table above) to their default values when they are unset. These attributes will be visible even after unsetting.

  • Attribute values marked in BLUE are the values that are changing (resources_default.ncpus, log events, scheduling) when an attribute is unset.