Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
HTML
<div class="section" id="dates-and-clocks">
<span id="index-0"></span><span id="id1"></span>
<div class="line-block">
<div class="line">Because ECF was designed with ECMWF suites in mind, the date is a very important notion.</div>
<div class="line">ECF defines the time using clocks. A <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-clock"><em class="xref std std-term">clock</em></a> is an attribute of a <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-suite"><em class="xref std std-term">suite</em></a>.</div>
<div class="line">Different suites can have different clocks.</div>
<div class="line">There are two kinds of clocks:</div>
</div>
<ul class="simple">
<li>Real clocks: A suite using a real clock will have its clock matching the clock of the machine.</li>
<li>Hybrid clocks: A hybrid clock is a complex notion: the date and time are not connected.
The date has a fixed value during the complete execution of the suite.
This will be mainly used in cases where the suite does not complete in less that 24 hours.
We are guaranteed that all the tasks of this suite are using the same date.
On the other hand, the time follows the time of the machine.</li>
</ul>
<div class="line-block">
<div class="line">A suite clock can be modified by a gain. This is useful for suites running on older</div>
<div class="line">data (e.g. cleaning up old data).</div>
</div>
<p>Once a suite is <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-complete"><em class="xref std std-term">complete</em></a>, it can be repeated automatically, with a different date.</p>
<div class="line-block">
<div class="line">The value of the date is in the generated <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-variable"><em class="xref std std-term">variable</em></a> ECF_DATE, and the value of the time is in ECF_TIME.</div>
<div class="line">ECF_CLOCK contains other information such as the day of week.</div>
</div>
<div class="line-block">
<div class="line">It is safer for a job to always use the suite generated time and date <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-variable"><em class="xref std std-term">variable</em></a>&#8216;s,</div>
<div class="line">and not access directly the system date to prevent confusion.</div>
</div>
<p>What to do:</p>
<ol class="arabic simple">
<li>Try to modify the <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-suite"><em class="xref std std-term">suite</em></a> to run with a <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-clock"><em class="xref std std-term">clock</em></a> date from the previous week use :<a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecf-client"><em class="xref std std-term">ecf_client</em></a> &#8211;alter</li>
<li>Check the values of the ECF <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-variable"><em class="xref std std-term">variable</em></a>&#8216;s</li>
</ol>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<ul class="last simple">
<li>The attributes <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-date"><em class="xref std std-term">date</em></a>, <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-day"><em class="xref std std-term">day</em></a> and <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-clock"><em class="xref std std-term">clock</em></a> are currently not usable if you choose to use a <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-repeat"><em class="xref std std-term">repeat</em></a> date type structure.</li>
<li>Be aware that <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-cron"><em class="xref std std-term">cron</em></a> with a single time dependency will automatically resubmit indefinitely</li>
</ul>
</div>
</div>