Scope

The JobSchedulerCleanupHistory Job described in this article is delivered with JobScheduler versions 1.10.x and older. FEATURE AVAILABILITY ENDING WITH RELEASE 1.10

Users of JobScheduler versions 1.11 and newer should refer to the Database Maintenance Scripts article.

The JobScheduler stores for each task and order its log into the database tables:

  • SCHEDULER_HISTORY
  • SCHEDULER_ORDER_HISTORY
  • SCHEDULER_ORDER_STEP_HISTORY

The job sos/dailyschedule/CreateDaysSchedule (before JobScheduler release 1.11) stores records into the database table

  • DAYS_SCHEDULE

 

The job sos/jade/jade_import stores records into the database table

  • JADE_FILES
  • JADE_FILES_HISTORY

The job sos/jade/ReportingFacts (before JobScheduler release 1.11) stores records into the database tables

  • REPORT_*

 

Without regular maintenance, these tables can become very large, which can reduce the performance and eventually result in no more space being available.

To avoid this, you should regularly run ...

  • the job /sos/housekeeping/scheduler_cleanup_history (before JobScheduler release 1.11)
    • If you choose the 'Housekeeping' package during the installation then you find this job in ./config/live/sos/housekeeping/scheduler_cleanup_history.
  • the scripts
    • ./bin/cleanup_jobscheduler_tables.(sh|cmd)
    • ./bin/cleanup_reporting_tables.(sh|cmd)

Parametrization of scheduler_cleanup_history job (before release 1.11)

This job deletes records which are older than the parameter delete_interval

 <?xml version="1.0" encoding="iso-8859-1"?>
 
 <job title = "Delete log entries in Job Scheduler history">
 
    <description>
       <include file = "jobs/JobSchedulerCleanupHistory.xml"/>
    </description>
     
    <params>
      <param name = "delete_interval" value = "7" />
    </params>
    
    <script language      = "java"
            java_class    = "sos.scheduler.job.JobSchedulerCleanupHistory"/>
    
    <!-- cleanup history entries every day of the week at the given hour -->
    <run_time let_run = "yes"
              begin   = "00:00"
              end     = "24:00">
       <period single_start = "01:00"/>
    </run_time>
 
 </job>

Parametrization of scheduler_cleanup_history job (before release 1.3.12.1285)

 <?xml version="1.0" encoding="iso-8859-1"?>
 
 <job title = "Delete log entries in Job Scheduler history">
 
    <description>
       <include file = "jobs/JobSchedulerCleanupHistory.xml"/>
    </description>
     
    <params>
      <!-- buggy: value=0 selects all records for cleanup -->
      <!--param name = "cleanup_history_interval" value = "0" /-->
      <!-- workaround: value=1 selects max. only one record for cleanup -->
      <param name="cleanup_history_task_id" value="1"/>
      <!-- workaround: value=1 selects only one record for cleanup -->
      <param name="cleanup_history_order_id" value="1"/>
      <!-- example: value=7 deletes all records older than 7 days -->
      <param name = "delete_history_interval" value = "7" />
    </params>
    
    <script language      = "java"
            java_class    = "sos.scheduler.job.JobSchedulerCleanupHistory"/>
    
    <!-- cleanup history entries every day of the week at the given hour -->
    <run_time let_run = "yes"
              begin   = "00:00"
              end     = "24:00">
       <period single_start = "01:00"/>
    </run_time>
 
 </job>