NavigationUser login |
TIGAPIAB: FATAL ERROR DETECTED IN PROGRAM: TIGWOTSKIn the Asset Suite tiglstn log: 01/27/2010 13:59:27.705238, IFBOWS, Begin PA04, pid 150001 TIGAPIBW: INT-REQUEST-ID: 20100127135927636-569937953 REQUEST-SEGMENTS: 000003 TIGAPIAB: LINK STACK: TIGSERV TIGAPIBW AFGWORDR AFGWOUPD TIGCURS TIGWOTSK TIGAPIAB: WHERE CLAUSE DOES NOT MATCH ANY EXISTING ROW TIGAPIAB: PROBABLE SECURITY VIOLATION ON TIMESTAMP TIGAPIAB: 4005-GET-COMPLEX-CODES. TIGAPIAB: INT-REQUEST-ID: 20100127135927636-569937953 REPLY-SEGMENTS: 000000 Each process reads the timestamp of the data in the table row and then updates the row with the update SQL having a WHERE clause of timestamp=(previously read timestamp). If another process has updated the timestamp in the meanwhile, the application abends with a database rollback. It's crude, but maintains data integrity. Gracefully handling the concurrent update is not even attempted because it would be necessary to track the before data throughout everything that has been updated (a WO can have hundreds of fields in several tables) so the application depends on the database tracking all changes and having the ability to roll them back. Asset Suite accomplishes this by using the idea of a Trans ID (from IBM CICS). All data updates performed by programs under a Trans ID are committed or rolled back when the Trans ID completes. Other enterprise applications like PeopleSoft have the same idea. By webmaster | Integration Framework Business Objects (IFBO) | add new comment
|