Only update rows in referenced tables only once per template repair (with p > 0), thus avoid deadlock & LongTX
Product in Use IBM Informix 11.70UC8X6
Customer Information Duane Guthrie
Email: email@example.com Phone: 972-813-5115
Sizing info TBD
Product Enhancement Request Abstract Request to only update rows in referenced tables (t1 and t2 here) only once per template repair (with p > 0), thus avoid the deadlock situation that leads to a long transaction.
1 Problem Description/Usage Scenario
As part of Cisco's migration strategy, they take a backup of a node and restore it on a new node. During this time updates can occur, so this new node needs to be checked (w/ cdr check â€“repair) to see if it's in sync with the rest of the cluster when brought online.
In this scenario table1(t1), table2(t2), table3(t3), and table4(t4) are all part of a replicate template. Both t3 and t4 have references to both t1 and t2. When running cdr check repair with p>0, and both t3 and t4 needing repairs, it is possible to see deadlocks that ultimately lead to long transactions.
1.1 Describe your current usage scenarios of Informix and problem associated with it
1.2 Describe what would you like the new product to do for your business
This would allow the setup process for new nodes to avoid deadlocks/long tx's which cause the setup process to fail.
2 List any special considerations around expected solution
2.1 Expected Capability
That Informix would only updating rows in referenced tables (t1 and t2 here) only once per template repair, thus avoid the deadlock situation that leads to a long transaction.
2.2 Standards Compliance
2.3 Platform-Specific Considerations
Cisco runs Linux RH6 32-bit.
2.4 List any restrictions which would need to be placed on the enhancement's implementation
2.5 List any performance expectations
3 Deadlines/Known Revenue Impacts/Impact of not meeting requirements
As soon as possible
3.2 Product Release
Ideally in the next interim release of 11.70/12.10
3.3 What is the business benefit of having this enhancement?
By only updating rows in referenced tables (t1 and t2 here) only once per template repair, thus avoid the deadlock situation that leads to a long transaction.
IBM (on behalf of Cisco Systems)