8.3.4 リリースのタイミング
リリースは,リリース先ジョブネットのスケジュールルールなどに関係なく,指定したリリース日時になるとジョブネットの定義が切り替わります。リリース日時は,24時間制の絶対時刻で指定します。このため,例えば,リリース先ジョブネットを48時間制で運用している場合には,リリース日時が48時間制ではどの日時に当たるのかを考慮してリリース日時を指定する必要があります。
なお,リリース日時になる前に開始された世代の定義は,実行中にリリース日時を過ぎた場合でも,途中で切り替わることはありません。
- 〈この項の構成〉
(1) 48時間制の場合
スケジューラーサービスが48時間制の場合でも,絶対時刻のリリース日時になるとジョブネットの定義がリリースされます。48時間制でのリリースの例を次の図に示します。
|
この例では,48時間制で毎日26:00に実行しているものとします。
48時間制の3/31 26:00の実行予定は,絶対時刻では4/1 2:00に当たり,リリース日時である4/2 00:00より前の時刻の予定であるため,リリースID「AJS_AUTO」の定義で実行されます。4/1 26:00の実行予定は,絶対時刻では4/2 2:00に当たり,リリース日時である4/2 00:00よりあとの時刻の予定であるため,リリースID「001」の定義で実行されます。
したがって,4/1 26:00の実行予定をリリースID「AJS_AUTO」の定義で実行したい場合は,リリース日時を4/2 2:01以降の時刻に指定する必要があります。
(2) 基準時刻を設定している場合
基準時刻を設定している(基準時刻が00:00以外)場合でも,絶対時刻のリリース日時になるとジョブネットの定義がリリースされます。基準時刻を設定している場合のリリースの例を次の図に示します。
|
この例では,基準時刻を9:00とし,毎日相対時刻の15:00に実行しているものとします。
3/31 15:00の実行予定は,9:00を基準とした相対時刻であるため,絶対時刻の4/1 00:00に当たります。4/1 00:00は,リリース日時である4/2 00:00より前の時刻であるため,リリースID「AJS_AUTO」の定義で実行されます。同様に,4/1 15:00の実行予定は絶対時刻の4/2 00:00に当たり,リリース日時である4/2 00:00と同じ時刻であるため,リリースID「001」の定義で実行されます。
したがって,4/1 15:00の実行予定をリリースID「AJS_AUTO」の定義で実行したい場合は,リリース日時を4/2 00:01以降の時刻に指定する必要があります。
(3) 一日に複数回実行する場合
一日に複数回実行するようスケジュールルールを設定している場合でも,絶対時刻のリリース日時になるとジョブネットの定義がリリースされます。一日に複数回実行するようスケジュールルールを設定している場合のリリースの例を次の図に示します。
|
この例では,毎日9:00と26:00に実行しているものとします。
4/1 9:00までの実行予定は,リリース日時である4/2 00:00より前の時刻であるため,リリースID「AJS_AUTO」の定義で実行されます。4/1 26:00の実行予定は,絶対時刻では4/2 2:00に当たり,リリース日時である4/2 00:00よりあとの時刻であるため,リリースID「001」の定義で実行されます。
したがって,4/1 26:00の実行予定をリリースID「AJS_AUTO」の定義で実行し,4/2以降の実行予定はリリースID「001」で実行したい場合は,リリース日時を4/2 2:01から4/2 8:59の範囲内で指定する必要があります。
(4) 休業日の振り替えを設定している場合
休業日の振り替えの設定で,[次の運用日に振り替え]を設定している場合および[前の運用日に振り替え]を設定している場合のリリースについて説明します。
(a) [次の運用日に振り替え]を設定している場合
休業日の振り替えで,[次の運用日に振り替え]を設定している場合でも,絶対時刻のリリース日時になるとジョブネットの定義がリリースされます。[次の運用日に振り替え]を設定している場合のリリースの例を次の図に示します。
|
この例では,4/1が休業日で,4/2が運用日であるとします。
4/1が休業日であるため,4/1 16:00の実行予定は4/2 16:00に振り替えられています。4/2 16:00はリリース日時である4/2 00:00以降の時刻であるため,リリースID「001」の定義で実行されます。
したがって,振り替え後の実行予定である4/2 16:00の実行予定をリリースID「AJS_AUTO」の定義で実行したい場合は,リリース日時を4/2 16:01以降に指定する必要があります。
(b) [前の運用日に振り替え]を設定している場合
休業日の振り替えで,[前の運用日に振り替え]を設定している場合でも,絶対時刻のリリース日時になるとジョブネットの定義がリリースされます。[前の運用日に振り替え]を設定している場合のリリースの例を次の図に示します。
|
この例では,4/1が運用日で,4/2が休業日であるとします。
4/2が休業日であるため,4/2 16:00の実行予定は4/1 16:00に振り替えられています。4/1 16:00はリリース日時である4/2 00:00より前の時刻であるため,リリースID「AJS_AUTO」の定義で実行されます。
したがって,振り替え後の実行予定である4/1 16:00の実行予定をリリースID「001」の定義で実行したい場合は,リリース日時を4/1 16:00より前に指定する必要があります。
(5) 起動条件を設定している場合
起動条件を設定している場合でも,絶対時刻のリリース日時になるとジョブネットの定義がリリースされます。起動条件を設定している場合のリリースの例を次の図に示します。
|
この例では,監視終了と監視開始の間にリリース日時が当たっていて,リリース日時を境にジョブネットの定義が切り替わっています。
一方,次の図に示すように,リリース日時に監視が終了していない場合は,ジョブネットの定義が切り替わりません。
|
このように,リリースの時点で監視が終了していない場合,リリース先ジョブネットはリリースID「AJS_AUTO」の定義で実行されます。リリースID「001」の定義で実行されるのは,次回の監視開始からです。したがって,リリース日時の時点でまだ実行されているジョブネットをリリースID「001」の定義で実行したい場合は,いったん監視を強制終了する必要があります。
(6) リリース前とリリース後でスケジュールルールが異なる場合
リリース前とリリース後でスケジュールルールが異なる場合でも,絶対時刻のリリース日時になるとジョブネットの定義およびスケジュールルールがリリースされます。リリース前とリリース後でスケジュールルールが異なる場合のリリースの例を次の図に示します。
|
この例では,毎日00:00に実行しているジョブネットを,リリース日時からは毎日15:00に実行するものとします。4/1 00:00はリリース日時である4/2 00:00より前の時刻であるため,リリースID「AJS_AUTO」のスケジュールルールに従って4/1 00:00の予定で実行されます。リリース日時である4/2 00:00になるとリリースID「001」の定義がリリースされるため,4/2以降は00:00ではなく15:00に実行されるようになります。
したがって,4/2の実行予定をリリースID「AJS_AUTO」のスケジュールルールで実行したい場合は(4/2の開始予定時刻を00:00にしたい場合は),リリース日時を4/2 15:01から4/3 15:00の間の時刻に指定する必要があります。
なお,リリース日時を4/2 00:01から4/2 15:00の間の時刻に指定した場合は,4/2 00:00にリリースID「AJS_AUTO」の定義が,4/2 15:00にリリースID「001」の定義がそれぞれ実行されるため,1日に2回実行されることになります。
(7) タイムゾーンを指定している場合
リリース日時は,リリース登録時のタイムゾーンに従います。このため,リリース登録時のタイムゾーンがリリース先ジョブネットの実行登録時に指定したタイムゾーンと異なる場合でも,リリース登録時のタイムゾーンでのリリース日時になるとジョブネットの定義がリリースされます。リリース登録時のタイムゾーンとリリース先ジョブネットのタイムゾーンが異なる場合の例を次の図に示します。
|
この例では,実行登録時のタイムゾーンがGMT(グリニッジ標準時)で,リリース登録時のタイムゾーンがJST-9(日本標準時)であるとします。
リリース日時はリリース登録時のタイムゾーンに従うため,リリース日時はJST-9の4/2 00:00です。GMTの3/31 15:00の実行予定はJST-9の4/1 00:00に当たり,リリース日時であるJST-9の4/2 00:00より前の時刻であるため,リリースID「AJS_AUTO」で実行されます。GMTの4/1 15:00の実行予定はJST-9の4/2 00:00に当たり,リリース日時であるJST-9の4/2 00:00と同じ時刻であるため,リリースID「001」で実行されます。
なお,リリース先ジョブネットの実行登録時に夏時間に対応したタイムゾーンを指定している場合でも,リリース登録時のタイムゾーンでのリリース日時になるとジョブネットの定義がリリースされます。
(8) 排他スケジュールを指定している場合
排他スケジュールを指定している場合でも,絶対時刻のリリース日時になるとジョブネットの定義および排他スケジュールが切り替わります。リリース前とリリース後で排他スケジュールが異なる場合の例を次の図に示します。
|
この例では,リリースID「AJS_AUTO」の排他スケジュールとしてjobnetBを指定しています。また,リリースID「001」の排他スケジュールとしてjobnetCを指定しています。この場合,jobnetAは,4/1 23:59までjobnetBを排他し,4/2 00:00以降はjobnetCを排他します。このように,排他スケジュールが切り替わることによって運用が困難になるおそれがあるため,排他スケジュールの指定は変更しないことを推奨します。