Uploaded image for project: 'JOC - JobScheduler Operations Center'
  1. JOC - JobScheduler Operations Center
  2. JOC-1992

Daily Plan Service – Impact of Manual Runs on Automatic Scheduling

    XMLWordPrintable

Details

    Description

      Current Situation

      • If a Daily Plan Service is performed manually from the JOC-Cockpit Dashboard(starting with 2.7.2: Run Service -> Daily Plan Service, before: Restart Service -> Daily Plan Service), the next automatic start of the Daily Plan Service ignores the configured start_time (default: 30 minutes before period_begin) Settings and instead starts at the period_begin (default: 00:00:00).
      • Current implementation details:
        • The Daily Plan Service calculates the date of the current run and stores it in memory.
          • This results in memory usage increasing over time (maximum of 366 entries per year).
        • When a manual start is performed for a specific date, the automatic start will not occur for that same day, as it is marked as already processed.
          • Automatic starts will resume with the next date change, typically when the period_begin is reached (default: 00:00:00).

      Desired Behavior

      • Improve memory management.
      • Ensure that performing a manual Daily Plan Service does not prevent the automatic start on the same day.
      • The Daily Plan Service should follow the configured dailyplan Settings for automatic starts.
      • Logging Improvement.

      Workaround

      • Starting with 2.7.2
        • Perform a Restart Service -> Daily Plan Service restart from the JOC-Cockpit Dashboard.
      • Before 2.7.2
        • Perform a JOC-Cockpit restart.

      Test Instructions

      • The following scenarios can be used for testing:
      • Scenario 1 - Partial Test: Automatic Daily Plan Start After Manual Service Start
        • Open service-dailyplan.log in a text editor (e.g., Notepad++).
        • Navigate to JOC-Cockpit Settings - dailyplan:
          • Set period_begin ~15 minutes ahead of the current time:
            • e.g., if the current time is 12:00, set period_begin=12:15:00.
          • Set start_time ~5 minutes before period_begin:
            • e.g., if period_begin=12:15:00, set start_time=12:10:00.
          • Wait ~1–2 minutes for the updated settings to be applied (check [settings_changed] entries in service-dailyplan.log).
          • Perform a manual Daily Plan Service Run from the JOC-Cockpit Dashboard:
            • Before version 2.7.2: Restart Service -> Daily Plan Service
            • Starting with version 2.7.2: Run Service -> Daily Plan Service
            • The manual run will also be logged in service-dailyplan.log.
          • Wait until the defined start_time occurs.
          • Expected Results:
            • Before this fix:
              • The Daily Plan Service does not start automatically at the defined start_time.
            • Current snapshot:
              • The next automatic start time is logged after the manual run.
              • The Daily Plan Service starts automatically at the defined start_time.
      • Scenario 2 - Complete Test: Machine That Stays On
        • Navigate to Settings - dailyplan:
          • Keep Daily Plan default settings (period_begin=00:00:00, start_time empty, so the Daily Plan Service will start by default at 23:30).
        • Perform a manual Daily Plan Service Run from the Dashboard.
        • On the next day, compare the log results from the current snapshot with an older test version.
        • Expected Results:
          • Before this fix:
            • The Daily Plan Service does not start automatically at 23:30.
            • The Daily Plan Service starts automatically at midnight (00:00).
          • Current snapshot:
            • The Daily Plan Service starts automatically at 23:30 according to the settings.
            • The Daily Plan Service does not start automatically at midnight (00:00).
      • Scenario 3 - Complete Test: Manipulate OS Time - Change the operating system time (e.g., in Windows: "Adjust date and time")
        • Navigate to Settings - dailyplan:
          • Keep period_begin=00:00:00.
          • Set start_time=23:55:00.
        • Change the system time to 23:50 (same day).
        • Perform a manual Daily Plan Service Run from the Dashboard.
        • Wait 10 minutes and compare log results.
        • Expected Results:
          • Before this fix:
            • The Daily Plan Service does not start automatically at 23:55.
            • The Daily Plan Service starts automatically at midnight (00:00).
          • Current snapshot:
            • The Daily Plan Service starts automatically at 23:55 according to the settings.
            • The Daily Plan Service does not start automatically at midnight (00:00).
        • Change the system date to the next day (keep the time as 23:50).
        • Do not take any action, just wait for manipulated midnight to occur.
        • Expected Behavior (the behavior should be identical to the previous test):
          • Before this fix:
            • No automatic start at 23:55.
            • Automatic start at midnight (00:00).
          • Current snapshot:
            • Automatic start at 23:55 as per the settings.
            • No automatic start at midnight (00:00).
      • Test Workaround with an version before this fix

      Attachments

        Issue Links

          Activity

            People

              re Robert Ehrlich
              re Robert Ehrlich
              Aakash Rao Aakash Rao
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: