Database Rollback Counters for Step Record Integrity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional database step IDs are affected by daylight saving time changes, leading to duplicate IDs, and the continued use of existing step IDs during rollbacks can cause data corruption and recovery issues.
Innovation Solution
Implementing a step ID with a timestamp portion based on coordinated universal time (UTC) and a rollback count to prevent duplicate IDs and accurately track rollbacks, ensuring data integrity during recovery.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If a time-based step ID is used to track transactions, then transactions can be uniquely identified and tracked, but duplicate step IDs are generated during daylight saving time adjustments
Solution Approach 1:
The patent changes the time reference parameter from local time (which adjusts for daylight saving time) to Coordinated Universal Time (UTC), which does not change with seasonal offsets. This parameter change ensures that step IDs continue to increment monotonically without duplication even when local clocks are adjusted backwards during fall back transitions.
2Reliability
If the database shuts down for one hour during daylight saving time adjustment to avoid duplicate step IDs, then step ID uniqueness is maintained, but database availability and productivity are reduced
Solution Approach 1:
By changing the time reference from local time to UTC, the system eliminates the need for shutdown during daylight saving time transitions. The step ID generation continues uninterrupted using UTC, maintaining both uniqueness and full database availability throughout the transition period.
3Productivity
If the advance portion of step ID is incremented beyond maximum value, then transaction separation is achieved, but the advance portion wraps around and restarts at zero causing duplicate identifiers
Solution Approach 1:
The patent adds a timestamp dimension to the step ID structure, combining it with the advance number. This creates a two-dimensional identifier space where the timestamp (based on UTC) provides a primary ordering dimension that prevents wrap-around issues, while the advance number provides fine-grained transaction separation within each timestamp.
4Ease of repair
If rollback operations are performed without tracking the number of rollbacks, then database recovery can proceed, but updates from rolled back portions are incorrectly applied causing data corruption
Solution Approach 1:
The patent implements a rollback counter that provides feedback information about the recovery state of each step ID. This counter tracks how many times a step has been rolled back and is used during recovery to determine whether updates should be applied or skipped, preventing data corruption from re-applying already-rolled-back updates.
5Reliability
If rollback counters are implemented to track rollbacks, then data integrity during recovery is maintained, but the system complexity increases
Solution Approach 1:
The rollback counter is integrated into the existing step ID structure and audit trail mechanisms, allowing it to serve multiple functions: tracking rollback state, enabling correct recovery behavior, and maintaining data integrity. This multi-functionality reduces the need for separate complex tracking systems.
Data Source
AI summary
A rollback record may be created for each step identifier (ID). The rollback record indicates how many times the step record identified by the step ID has been rolled back during operation of the database. The rollback record may be stored in a periodic save record (PSR), separate from or stored in an audit trail containing the step records. By processing the rollback records in the periodic save record during a recovery, a database may identify a time on an audit trail for initiating a recovery prior to the last resume point for a step without going back in the audit trail to a time before the initial start of the step.


