How r you brethren?
I have reported this before but I hope you will bear with me. I seem to have a problem with updates to tables. I am buffering them
then
do my changes
then
run a program which saves the changes for all tables with a "dirty buffer".
So far everything is okay (Triggers fire fine, conflicts are resolved well and fieldlevel validations respond well)
This devil called index corruption somehow manages to corrupt indexes (power problems) in such a way that though my "saving program" will report "Update Success" actually on some tables (heavy ones) the records go missing (courtesy of index corruption). No error is generated whatsoever concerning Indexes not matching table.. and so on
To circumvent this problem I have made my saving program (it's one for the whole app) to log mannualy ALL UPDATES (Inserts,deletes and edits) into some transaction log files (textfiles) with names corresponding to the said table names. irregardless of all possible problems these "saving program" is able to write successfully to these textfiles all updates even if it fails to do it on the tables.
So the user calls and says:
"I made a sale at the POS i printed the receipt but the sale is not on the sales report neither can I reprint the receipt, it's not there"
Solution: "Run the routine to restore lost data"
it works and works very well.
My question: Was this lengthy approach warranted? Or there is away I can detect in the program that though TableUpdate() reported success the records in the buffer never actually went to the base tables?
Please help! Thanks in advance