I have a fairly typical incremental load process along the lines of:
1 Load updated data.
SELECT * FROM SQLSOURCE WHERE Time>$(vLastEndTime)
2.Add unchanged data from QVD
LOAD * FROM REALTIME.QVD WHERE Not Exists (Id)
3. Store updated + unchanged data back
STORE REALTIME INTO REALTIME.QVD
At a few occasions my last step has failed in a serious way, which is most likely caused by another load being in process on the REALTIME.QVD document and unfortunately the result is that REALTIME.QVD is replaced with a completely empty file REALTIME.QVD.
=> General Script Error
Any good best practice ideas on how to handle this in a safer way/error handling way?
My quick and dirty fix is to at least store a DAILYBACKUP/REALTIME$(vLoadDate).QVD file (which is never read/blocked), so that I can restart from midnight, but I would of course prefer to have a safer solution.
The important thing here is of course that the REALTIME.QVD is completely empty. A file what would not have been updated I could handle, but this is a bit worse.
Kind regards
Niklas