CALENDAR_CONF(5)           Grid Engine File Formats           CALENDAR_CONF(5)



NNAAMMEE
       calendar_conf - Grid Engine calendar configuration file format

DDEESSCCRRIIPPTTIIOONN
       _c_a_l_e_n_d_a_r___c_o_n_f  reflects the format of the Grid Engine calendar configu-
       ration. The definition of calendars is used to specify  "on  duty"  and
       "off duty" time periods for Grid Engine 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.

       _c_a_l_e_n_d_a_r___c_o_n_f entries can be added, modified  and  displayed  with  the
       _-_A_c_a_l,  _-_a_c_a_l,  _-_M_c_a_l,  _-_m_c_a_l,  _-_s_c_a_l and _-_s_c_a_l_l options to _q_c_o_n_f(1) or
       with the calendar configuration dialog of the graphical user  interface
       _q_m_o_n(1).

       Note,  Grid  Engine  allows  backslashes  (\) be used to escape newline
       (\newline) characters. The backslash and the newline are replaced  with
       a space (" ") character before any interpretation.

FFOORRMMAATT
   ccaalleennddaarr__nnaammee
       The name of the calendar to be used when attaching it to queues or when
       administering   the   calendar   definition.   See   _c_a_l_e_n_d_a_r___n_a_m_e   in
       _s_g_e___t_y_p_e_s(1) for a precise definition of valid calendar names.

   yyeeaarr
       The queue status definition on a day of the year basis. This field gen-
       erally 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 yyeeaarr field is  defined  as
       follows:

       yyeeaarr:=
           { NONE
           | yyeeaarr__ddaayy__rraannggee__lliisstt==ddaayyttiimmee__rraannggee__lliisstt[==ssttaattee]
           | yyeeaarr__ddaayy__rraannggee__lliisstt==[ddaayyttiimmee__rraannggee__lliisstt==]ssttaattee
           | state}

       Where

       +o  NONE means, no definition is made on the year basis

       +o  if  a  definition  is  made  on  the  year  basis,  at  least one of
          yyeeaarr__ddaayy__rraannggee__lliisstt, ddaayyttiimmee__rraannggee__lliisstt and ssttaattee always have to  be
          present,

       +o  all day long is assumed if ddaayyttiimmee__rraannggee__lliisstt is omitted,

       +o  switching the queue to "off" (i.e. disabling it) is assumed if ssttaattee
          is omitted,

       +o  the queue is assumed to  be  enabled  for  days  neither  referenced
          implicitly (by omitting the yyeeaarr__ddaayy__rraannggee__lliisstt) nor explicitly

       and the syntactical components are defined as follows:

         yyeeaarr__ddaayy__rraannggee__lliisstt := {yyeeaarrddaayy-yyeeaarrddaayy|yyeeaarrddaayy},...
         ddaayyttiimmee__rraannggee__lliisstt :=  hour[:minute][:second]-
                                hour[:minute][:second],...
         ssttaattee :=     {on|off|suspended}
         yyeeaarr__ddaayy :=  mmoonntthh__ddaayy..mmoonntthh..yyeeaarr
         mmoonntthh__ddaayy := {1|2|...|31}
         mmoonntthh :=     {jan|feb|...|dec|1|2|...|12}
         yyeeaarr :=      {1970|1971|...|2037}

   wweeeekk
       The queue status definition on a day of the week basis. This field gen-
       erally 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 wweeeekk field is  defined  as
       follows:

       wweeeekk:=
           { NONE
           | wweeeekk__ddaayy__rraannggee__lliisstt[==ddaayyttiimmee__rraannggee__lliisstt][==ssttaattee]
           | [wweeeekk__ddaayy__rraannggee__lliisstt==]ddaayyttiimmee__rraannggee__lliisstt[==ssttaattee]
           | [wweeeekk__ddaayy__rraannggee__lliisstt==][ddaayyttiimmee__rraannggee__lliisstt==]ssttaattee} ...

       Where

       +o  NONE means, no definition is made on the week basis

       +o  if  a  definition  is  made  on  the  week  basis,  at  least one of
          wweeeekk__ddaayy__rraannggee__lliisstt, ddaayyttiimmee__rraannggee__lliisstt and ssttaattee always have to  be
          present,

       +o  every day in the week is assumed if wweeeekk__ddaayy__rraannggee__lliisstt is omitted,

       +o  syntax  and  semantics of ddaayyttiimmee__rraannggee__lliisstt and ssttaattee are identical
          to the definition given for the year field above,

       +o  the queue is assumed to  be  enabled  for  days  neither  referenced
          implicitly (by omitting the wweeeekk__ddaayy__rraannggee__lliisstt) nor explicitly

       and where wweeeekk__ddaayy__rraannggee__lliisstt is defined as

         wweeeekk__ddaayy__rraannggee__lliisstt := {wweeeekkddaayy-wweeeekkddaayy|wweeeekkddaayy},...
         wweeeekk__ddaayy :=  {mon|tue|wed|thu|fri|sat|sun}

       with week_day ranges the week_day identifiers must be different.

SSEEMMAANNTTIICCSS
       Successive  entries  to  the yyeeaarr and wweeeekk fields (separated by blanks)
       are combined in compliance with the following rule:

       +o  "off"-areas  are  overridden  by   overlapping   "on"-   and   "sus-
          pended"-areas and "suspended"-areas are overridden by "on"-areas.

       Hence an entry of the form

         week  12-18 tue=13-17=on

       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.


       +o  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.


       +o  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

            year  12.03.2004=12-11=off

          causes  the queue(s) be disabled 12.03.2004 from 00:00:00 - 10:59:59
          and 12:00:00 - 23:59:59.

EEXXAAMMPPLLEESS
       (The   following   examples   are   contained    in    the    directory
       $GE_ROOT/util/resources/calendars).

       +o  Night, weekend and public holiday calendar:

          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:

            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


       +o  Day calendar:

          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.

            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


       +o  Night, weekend and public holiday calendar with suspension:

          Essentially  the  same  scenario as the first example but queues are
          suspended instead of switching them "off".

            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


       +o  Day calendar with suspension:

          Essentially the same scenario as the second example but  queues  are
          suspended instead of switching them "off".

            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


       +o  Weekend calendar with suspension, ignoring public holidays:

          Settings  are  only  done on the week basis, no settings on the year
          basis (keyword "NONE").

            calendar_name  weekend_s
            year           NONE
            week           sat-sun=suspended


SSEEEE AALLSSOO
       _g_e___i_n_t_r_o(1), _g_e_____t_y_p_e_s(1), _q_c_o_n_f(1), _q_u_e_u_e___c_o_n_f(5).

CCOOPPYYRRIIGGHHTT
       See _g_e___i_n_t_r_o(1) for a full statement of rights and permissions.



GE 6.2u2                 $Date: 2007/09/27 14:02:27 $         CALENDAR_CONF(5)
