File: calendar_conf.5

package info (click to toggle)
gridengine 6.2-4
  • links: PTS, VCS
  • area: main
  • in suites: lenny
  • size: 51,532 kB
  • ctags: 51,172
  • sloc: ansic: 418,155; java: 37,080; sh: 22,593; jsp: 7,699; makefile: 5,292; csh: 4,244; xml: 2,901; cpp: 2,086; perl: 1,895; tcl: 1,188; lisp: 669; ruby: 642; yacc: 393; lex: 266
file content (298 lines) | stat: -rw-r--r-- 8,550 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
'\" t
.\"___INFO__MARK_BEGIN__
.\"
.\" Copyright: 2004 by Sun Microsystems, Inc.
.\"
.\"___INFO__MARK_END__
.\" $RCSfile$     Last Update: $Date$     Revision: $Revision$
.\"
.\"
.\" Some handy macro definitions [from Tom Christensen's man(1) manual page].
.\"
.de SB		\" small and bold
.if !"\\$1"" \\s-2\\fB\&\\$1\\s0\\fR\\$2 \\$3 \\$4 \\$5
..
.\"
.de T		\" switch to typewriter font
.ft CW		\" probably want CW if you don't have TA font
..
.\"
.de TY		\" put $1 in typewriter font
.if t .T
.if n ``\c
\\$1\c
.if t .ft P
.if n \&''\c
\\$2
..
.\"
.de M		\" man page reference
\\fI\\$1\\fR\\|(\\$2)\\$3
..
.TH CALENDAR_CONF 5 "$Date$" "xxRELxx" "xxQS_NAMExx File Formats"
.\"
.SH NAME
calendar_conf \- xxQS_NAMExx calendar configuration file format
.\"
.\"
.SH DESCRIPTION
.I calendar_conf
reflects the format of the xxQS_NAMExx calendar configuration. The definition
of calendars is used to specify "on duty" and "off 
duty" time periods for xxQS_NAMExx queues on a time of day, day of week 
or day of year basis. Various calendars can be implemented and the 
appropriate calendar definition for a certain class of jobs can be attached
to a queue.
.PP
.I calendar_conf
entries can be added, modified and displayed with the \fI\-Acal\fP, 
\fI\-acal\fP, \fI\-Mcal\fP, \fI\-mcal\fP, \fI\-scal\fP and \fI\-scall\fP
options to
.M qconf 1
or with the calendar configuration dialog of the graphical user interface
.M qmon 1 .
.PP
Note, xxQS_NAMExx allows backslashes (\\) be used to escape newline
(\\newline) characters. The backslash and the newline are replaced with a
space (" ") character before any interpretation.
.\"
.\"
.SH FORMAT
.SS "\fBcalendar_name\fP"
The name of the calendar to be used when attaching it to queues or when 
administering the calendar definition. See \fIcalendar_name\fP in
.M sge_types 1 
for a precise definition of valid calendar names.  
.\"
.SS "\fByear\fP"
The queue status definition on a day of the year basis. This field generally
will specify on which days of a year (and optionally at which times on those
days) a queue, to which the calendar is attached, will change to a certain
state. The syntax of the
.B year
field is defined as follows:
.sp 1
.nf
.ta \w'xxxx'u
\fByear\fP:=
	{ NONE
    | \fByear_day_range_list=\fP\fBdaytime_range_list\fP[\fB=state\fP]
    | \fByear_day_range_list=\fP[\fBdaytime_range_list=\fP]\fBstate\fP
    | state}
.fi
.sp 1
Where
.IP "\(bu" 3n
NONE means, no definition is made on the year basis
.IP "\(bu" 3n
if a definition is made on the year basis, at least one of \fByear_day_range_list\fP, \fBdaytime_range_list\fP and
\fBstate\fP 
always have to be present,
.IP "\(bu" 3n
all day long is assumed if \fBdaytime_range_list\fP is omitted,
.IP "\(bu" 3n
switching the queue to "off" (i.e. disabling it) is assumed if \fBstate\fP is
omitted,
.IP "\(bu" 3n
the queue is assumed to be enabled
for days neither referenced implicitly (by omitting the 
\fByear_day_range_list\fP) nor explicitly
.PP
and the syntactical components are defined as follows:
.sp 1
.nf
.ta \w'xx'u \w'year_day_range_list :=   'u
	\fByear_day_range_list\fP := 	{\fByearday\fP-\fByearday\fP|\fByearday\fP},...
	\fBdaytime_range_list\fP := 	hour[:minute][:second]-
	 	hour[:minute][:second],...
.ta \w'xx'u \w'month_day :=   'u
	\fBstate\fP := 	{on|off|suspended}
	\fByear_day\fP := 	\fBmonth_day.month.year\fP
	\fBmonth_day\fP := 	{1|2|...|31}
	\fBmonth\fP := 	{jan|feb|...|dec|1|2|...|12}
	\fByear\fP := 	{1970|1971|...|2037}
.fi
.\"
.SS "\fBweek\fP"
The queue status definition on a day of the week basis. This field generally
will specify on which days of a week (and optionally at which times on those
days) a queue, to which the calendar is attached, will change to a certain
state. The syntax of the
.B week
field is defined as follows:
.sp 1
.nf
.ta \w'xxxx'u
\fBweek\fP:=
	{ NONE 
    | \fBweek_day_range_list\fP[\fB=daytime_range_list\fP][\fB=state\fP]
    | [\fBweek_day_range_list=\fP]\fBdaytime_range_list\fP[\fB=state\fP]
    | [\fBweek_day_range_list=\fP][\fBdaytime_range_list=\fP]\fBstate\fP} ...
.fi
.sp 1
Where
.IP "\(bu" 3n
NONE means, no definition is made on the week basis
.IP "\(bu" 3n
if a definition is made on the week basis, at least one of \fBweek_day_range_list\fP, \fBdaytime_range_list\fP and
\fBstate\fP 
always have to be present,
.IP "\(bu" 3n
every day in the week is assumed if \fBweek_day_range_list\fP is omitted,
.IP "\(bu" 3n
syntax and semantics of
.B daytime_range_list
and
.B state
are identical to the 
definition given for the year field above,
.IP "\(bu" 3n
the queue is assumed to be enabled for days neither referenced implicitly 
(by omitting the \fBweek_day_range_list\fP) nor explicitly
.PP
and where
.B week_day_range_list
is defined as
.sp 1
.nf
.ta \w'xx'u \w'year_day_range_list :=   'u
	\fBweek_day_range_list\fP := 	{\fBweekday\fP-\fBweekday\fP|\fBweekday\fP},...
.ta \w'xx'u \w'month_day :=   'u
	\fBweek_day\fP := 	{mon|tue|wed|thu|fri|sat|sun}
.fi
.sp 1
with week_day ranges the week_day identifiers must be different.
.\"
.\"
.SH SEMANTICS
Successive entries to the
.B year
and
.B week
fields (separated by blanks) are combined in compliance with the
following rule:
.IP "\(bu" 3n
"off"-areas are overridden by overlapping "on"- and "suspended"-areas and
"suspended"-areas are overridden by "on"-areas.
.PP
Hence an entry of the form
.sp 1
.nf
.ta \w'xx'u \w'week    'u
	week 	12-18 tue=13-17=on
.fi
.sp 1
means that queues referencing the corresponding calendar are disabled the 
entire week from 12.00-18.00 with the exception of Tuesday between 13.00-17.00 where the 
queues are available.
.sp 1
.IP "\(bu" 3n
Area overriding occurs only within a year/week basis. If a year
entry exists for a day then only the year calendar is taken into 
account and no area overriding is done with a possibly conflicting 
week area. 
.sp 1
.IP "\(bu" 3n
the second time specification in a daytime_range_list may be before the 
first one and treated as expected. Thus an entry of the form

.nf
.ta \w'xx'u \w'week    'u
	year 	12.03.2004=12-11=off 
.fi
.sp 1
causes the queue(s) be disabled 12.03.2004 from 00:00:00 - 10:59:59 and
12:00:00 - 23:59:59.
.\"
.\"
.SH EXAMPLES
(The following examples are contained in the directory
$xxQS_NAME_Sxx_ROOT/util/resources/calendars).
.IP "\(bu" 3n
Night, weekend and public holiday calendar:
.sp 1
On public holidays "night" queues are explicitly enabled. On working 
days queues are disabled between 6.00 and 20.00. Saturday and Sunday 
are implicitly handled as enabled times:
.sp 1
.nf
.ta \w'xx'u \w'calendar_name    'u
	calendar_name 	night
	year 	1.1.1999,6.1.1999,28.3.1999,30.3.1999-
	31.3.1999,18.5.1999-19.5.1999,3.10.1999,25.12.1999,26
	.12.1999=on
	week 	mon-fri=6-20
.fi
.sp 1
.IP "\(bu" 3n
Day calendar:
.sp 1
On public holidays "day"-queues are disabled. On working days such 
queues are closed during the night between 20.00 and 6.00, i.e. the queues 
are also closed on Monday from 0.00 to 6.00 and on Friday from 20.00 to 
24.00. On Saturday and Sunday the queues are disabled.
.sp 1
.nf
.ta \w'xx'u \w'calendar_name    'u
	calendar_name 	day
	year 	1.1.1999,6.1.1999,28.3.1999,30.3.1999-
	31.3.1999,18.5.1999-19.5.1999,3.10.1999,25.12.1999,26
	.12.1999
	week 	mon-fri=20-6 sat-sun
.fi
.sp 1
.IP "\(bu" 3n
Night, weekend and public holiday calendar with suspension:
.sp 1
Essentially the same scenario as the first example but queues are suspended
instead of switching them "off".
.sp 1
.nf
.ta \w'xx'u \w'calendar_name    'u
	calendar_name 	night_s
	year 	1.1.1999,6.1.1999,28.3.1999,30.3.1999-
	31.3.1999,18.5.1999-19.5.1999,3.10.1999,25.12.1999,26
	.12.1999=on
	week 	mon-fri=6-20=suspended
.fi
.sp 1
.IP "\(bu" 3n
Day calendar with suspension:
.sp 1
Essentially the same scenario as the second example but queues are suspended
instead of switching them "off".
.sp 1
.nf
.ta \w'xx'u \w'calendar_name    'u
	calendar_name 	day_s
	year 	1.1.1999,6.1.1999,28.3.1999,30.3.1999-
	31.3.1999,18.5.1999-19.5.1999,3.10.1999,25.12.1999,26
	.12.1999=suspended
	week 	mon-fri=20-6=suspended sat-sun=suspended
.fi
.sp 1
.IP "\(bu" 3n
Weekend calendar with suspension, ignoring public holidays:
.sp 1
Settings are only done on the week basis,
no settings on the year basis (keyword "NONE").
.sp 1
.nf
.ta \w'xx'u \w'calendar_name    'u
	calendar_name 	weekend_s
	year 	NONE
	week 	sat-sun=suspended
.fi
.sp 1
.\"
.\"
.SH "SEE ALSO"
.M xxqs_name_sxx_intro 1 ,
.M xxqs_name_sxx__types 1 ,
.M qconf 1 ,
.M queue_conf 5 .
.\"
.SH "COPYRIGHT"
See
.M xxqs_name_sxx_intro 1
for a full statement of rights and permissions.