Batch Configuration Change Transaction for Server Consistency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional methods for implementing configuration changes in application server systems face challenges due to the need for individual attribute validation, which can lead to partial failures and inconsistent states, especially when changes have side effects like triggering deployment.
Innovation Solution
A batch configuration change process that allows multiple changes to be made and validated as a transaction, enabling administrators to manage and apply changes to a set of servers in a controlled manner, with mechanisms for tracking progress and ensuring all servers accept changes before activation, and providing feedback on successful distribution or rollback.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If configuration changes are made attribute-by-attribute using conventional methods, then individual changes can be validated and applied, but the system may enter inconsistent states due to partial failures
Solution Approach 1:
The configuration change process is segmented into distinct phases: validation phase where all changes are checked before application, and application phase where changes are applied atomically. This segmentation ensures that partial failures cannot leave the system in an inconsistent state, as either all changes are validated successfully or none are applied.
Solution Approach 2:
All configuration changes are validated in advance before being applied to the system. The validation phase checks all proposed changes against the system state and dependencies before committing any changes. This preliminary validation prevents inconsistent states by ensuring all changes are safe to apply before actually making them.
2Reliability
If multiple configuration changes are applied simultaneously to ensure atomicity, then system consistency is maintained, but it becomes difficult to validate changes and detect errors before activation
Solution Approach 1:
The change management process is divided into separate validation and application stages. During the validation stage, all changes are individually checked and errors are detected and reported before any changes are applied. This allows thorough error detection while maintaining atomicity during the subsequent application stage where changes are applied together as a unit.
Solution Approach 2:
The system provides comprehensive feedback during the validation phase, reporting which changes would succeed and which would fail before any changes are applied. This feedback mechanism allows administrators to review and correct issues before activation, making error detection easy while maintaining system consistency through atomic application.
3Reliability
If configuration changes are validated individually on each server, then validation can be performed, but the process is time-consuming and productivity is reduced
Solution Approach 1:
The validation process merges validation operations across multiple servers into a coordinated batch operation. Instead of validating changes server-by-server sequentially, the system collects all proposed changes and validates them against the system state in a unified process, significantly reducing total validation time while maintaining thoroughness.
Solution Approach 2:
All validation checks are performed in advance during the validation phase before changes are applied. This preliminary batch validation eliminates the need for iterative validation during application, speeding up the overall process while ensuring accurate validation of all changes before they take effect.
4Productivity
If configuration changes are applied without prior validation, then the process is fast, but the system may end up in a non-recoverable or unknown configuration state
Solution Approach 1:
The system performs preliminary validation of all configuration changes before applying them. This advance validation checks for errors, conflicts, and compatibility issues, ensuring that only safe changes are applied. This prevents the system from entering non-recoverable states while maintaining efficient batch processing of validated changes.
Solution Approach 2:
The validation phase acts as a protective cushion before changes are applied, identifying and preventing potential failures in advance. By checking all changes against the system state and dependencies beforehand, the system cushions against errors that would otherwise cause non-recoverable states, enabling fast and safe configuration changes.
Data Source
AI summary
In embodiments, the present invention provides mechanisms and methods for making a plurality of configuration changes to a set of servers comprised of an administration server and one or more managed servers. These mechanisms and methods can enable a number of changes to be made to the configuration at once, i.e., in a batch. The ability of an administrator to make a number of changes to the configuration, validate the changes and then persist the changes to the servers is termed a “transaction based” change process. In such transaction based processing, embodiments process changes in batches, which enables embodiments to avoid failures in configuration changes that result in the machines being in a non-recoverable or unknown configuration state.


