How do the parameters SP_SYS_JOB_HISTORY_RETENTION and SP_SYS_JOB_HISTORY_SIZE work in conjunction to carry out housekeeping of the logs for jobs (currently only for copy and compare/repair which are termed as jobs).
The parameter SP_SYS_JOB_HISTORY_RETENTION already existed for this purpose. This parameter specified the # of days up to which a log for a job needs to be retained. Starting with SharePlex 9.2, an additional parameter SP_SYS_JOB_HISTORY_SIZE has come into existence that specifies the combined maximum size in Kilobytes for the logs of jobs run in the past. Here is how the two parameters work in conjunction to manage the growth of the logs for jobs:
If the SP_SYS_JOB_HISTORY_SIZE is set to 0 (which implies unlimited size) and if SP_SYS_JOB_HISTORY_RETENTION is set to a finite value, then the log retention would be governed by the parameter SP_SYS_JOB_HISTORY_RETENTION and not the unlimited as specified by the value of 0 for the parameter SP_SYS_JOB_HISTORY_SIZE.
If the SP_SYS_JOB_HISTORY_SIZE is set to a finite value, then it will take precedence over the SP_SYS_JOB_HISTORY_RETENTION unless the SP_SYS_JOB_HISTORY_RETENTION is set to 0. For example, if the history size was 1000 KB and if the history retention was set to 20 days, and if the size of the logs grow to over 1000KB in just 10 days, then SharePlex will not retain logs any further than that 10 day. This is, of course based on the combined size of those logs. There may be times when the combined size of the logs is small and if so, logs for a larger # of days would be retained while still conforming to the value of history size.
If the SP_SYS_JOB_HISTORY_RETENTION is set to 0, then regardless of the setting of SP_SYS_JOB_HISTORY_SIZE, the logs will always be retained for less than a day.