This article describes a bug in a function provided with IBM Informix Dynamic Server (IDS) which could result in disk space being filled. We have reported this to IBM who have assigned defect number (APAR) IT09329. Meanwhile, you can fix your system using code provided below.
An internal scheduler (sometimes known as “dbcron”) was introduced in IDS version 11. With the Open Admin Tool, you can enable or disable scheduled tasks and view the results of previous executions. The scheduler and many tasks are enabled by default, with relevant tables and functions being stored in the “sysadmin” database. Every time a task runs, a row is inserted into one or both of the “ph_alert” and “ph_run” tables. Every day, a Stored Procedure Language (SPL) function is run to clear rows older than a defined number of days (default 30) from these tables, but it leaves rows behind that do not have a matching pair in both. On some systems with rapid execution of custom tasks, this can result in a very large table filling the dbspace (rootdbs by default).
The standard code from 12.10.FC4 (almost unchanged since 11.10) is:
The suggested fix is:
Run the above SQL as “informix” in the “sysadmin” database on IDS 11 or 12 to avoid accumulating unwanted data.
The code fix suggested above is provided “as is” without warranty of any kind, either express or implied, including without limitation any implied warranties of condition, uninterrupted use, merchantability, fitness for a particular purpose, or non-infringement.