Configuring the Control Logic Purge Partition Size
|
Update in 3.81.11 RC11 and later |
This document details the use and configuration of a new system parameter,
com.sepasoft.controlLogicPurgePartitionSize, designed to optimize the batch data purge process within the Ignition MES system. The purpose of this parameter is to provide administrators with enhanced control over the database load generated during data retention and purge operations.Previously, the system was hardcoded to purge parameters from up to 1000 Control Logic objects in a single database query. For systems managing very large batches, where a single Control Logic object could contain thousands of parameter changes, this could result in significant database strain. The introduction of this configurable argument, which defaults to a more conservative value of 100, allows administrators to fine-tune the partition size of the purge query. It is important to note that this parameter controls the partition size based on the number of Control Logic objects, not the number of overall batches, providing a more granular level of control. This strategic improvement ensures smoother system performance by preventing excessively large transactions, especially in high-volume environments.
The following sections provide the specific details of this parameter and the procedures for its implementation and verification.
Parameter Specification
This section provides the essential technical specifications for the new configuration argument. Understanding these details is crucial for correct implementation and system tuning.
Attribute | Specification |
Parameter Name | com.sepasoft.controlLogicPurgePartitionSize |
Function | Controls the maximum number of Control Logic objects whose parameters are purged in a single database query. |
Default Value | 100 |
Configurable Range | 1 to 1000 |
With these specifications understood, the next section provides a step-by-step guide for applying this configuration.
Configuration Procedure
This section provides a precise, step-by-step guide for implementing the
com.sepasoft.controlLogicPurgePartitionSize parameter. Following these steps exactly is mandatory for the changes to be applied correctly and for the system to recognize the new configuration.- Locate Configuration File Navigate to the Ignition installation directory and open the
ignition.conffile in a text editor. - Navigate to Parameters Section Within the
ignition.conffile, find the section commented as# Java Additional Parameters. - Add New Argument Add a new line and define the system property using the format
-D<parameter_name>=<value>. For this parameter, it would be-Dcom.sepasoft.controlLogicPurgePartitionSize=<your_value>. The value must be within the valid range of 1 to 1000. - Save Changes Save and close the modified
ignition.conffile. - Restart Service You must restart the Ignition Gateway service. The new configuration will not take effect until the service has been fully restarted.
After applying the new configuration and restarting the service, it is highly recommended to verify that the setting is functioning as expected.
Verification Procedure
This final section outlines a technical procedure to confirm that the system is correctly applying the new purge partition size. This process requires access to system logs and the ability to execute MES scripting functions to trigger the purge mechanism.
- Meet Prerequisites Ensure your system has a sufficient quantity of
Control Recipeobjects that are older than the purge cutoff date you intend to use. The total number of these objects must be greater than the value you configured forcom.sepasoft.controlLogicPurgePartitionSize. - Enable Trace Logging In the Ignition Gateway's logging settings, locate the MESDataRetentionManager logger and set its logging level to Trace.
- Execute Purge Function Using a script, call the function
system.mes.purgeControlRecipeObjects(cutoffDate, recipeLimit). Be sure to set therecipeLimitargument to1000to ensure a sufficient number of recipes are processed to test the partitioning. - Inspect System Logs Check the
MESDataRetentionManagerlogs at theTracelevel for entries generated during the purge operation. - Confirm Partition Size In the logs, locate entries containing the text
Time taken to deleteandbatch param values:. The number reported between these phrases is thepartition.size()value. You must verify that this value is not greater than the value you configured forcom.sepasoft.controlLogicPurgePartitionSize. - Example Log Message:
By confirming the partition size in the logs, you can be confident that the configuration is successfully optimizing your data retention operations.