Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi, we are using latest Qlik View version (MAY 2023) and licensed one. Our business created dashboard and schedule a reload task to run frequently. Whenever reload task rans, sometime we are getting failure for the few jobs. Below is the error we are getting, not sure why its happening. Could you please suggest on this ?
(8/27/2023 6:20:44 AM) Information: The Source Document reload complete. DocumentPath=\\cfwdod5sq001\QLIK\QlikviewPRD\SourceDocs\IC\2.QVDGen\QVDGen_Daily_4706SO.qvw
(8/27/2023 6:20:44 AM) Information: Memory Allocation Delta for this file=44.69 Mb. Available Physical Memory Before Reload=24471.55 Mb. Available Physical Memory After Reload=23427.25 Mb.
(8/27/2023 6:20:44 AM) Error: The Source Document was NOT reloaded successfully.
Error: The task "QVDGen_Daily_4706SO" failed. Exception: || QDSMain.Exceptions.TaskFailedException: Task execution failed with errors to follow. ---> QDSMain.Exceptions.ReloadFailedException: Reload failed ---> QDSMain.Exceptions.LogBucketErrorException: The Source Document was NOT reloaded successfully. DocumentPath=\\cfwdohd5sqls001\QLIK\QlikviewPRD\SourceDocs\IOC\2.QVDGen\QVDGen_Daily_4706SO.qvw. || at QDSMain.AbstractReloadTask.VerifyConditions(IExecutingTaskResult executingTaskResult) || at QDSMain.AbstractReloadTask.Reload(String fileName, IExecutingTaskResult executingTaskResult, String sectionAccessUserName, String sectionAccessPassword, eReloadOptions reloadOption, String variableName, String variableValue, Boolean moniterCpuUsage) || --- End of inner exception stack trace --- || at QDSMain.AbstractReloadTask.Reload(String fileName, IExecutingTaskResult executingTaskResult, String sectionAccessUserName, String sectionAccessPassword, eReloadOptions reloadOption, String variableName, String variableValue, Boolean moniterCpuUsage) || at QDSMain.DistributeTask.PerformExecute(IExecutingTaskResult executingTaskResult) || --- End of inner exception stack trace --- || at QDSMain.DistributeTask.PerformExecute(IExecutingTaskResult executingTaskResult) || at QDSMain.Task.AbstractTask.TaskExecution(CurrentExecutionArgs args)
The last action of the load script right before the reload fails is the STORE statement. First, as Marcus suggested, review your reload schedule to ensure there's no other tasks trying to write/read this QVD at the time of it being stored.
If there aren't any other tasks reading/writing concurrently to this QVD, an option is to add a SLEEP statement (e.g. SLEEP 10000) after the store statement. This is to give the reload a bit of a breather, since at this point, Windows has to write the data to disk. The number is in milliseconds and can be tweaked as needed. It might be trying to do the Store, finishes and then errors out right after. Hopefully the Sleep would give it a chance to catch up.
If the reload is still failing after adding a STORE statement, another option if we know this happens with certain reloads, is to set up MS Sysinternals Process Monitor scan on those QVDs to see if anything else is touching it that might cause the error.
Best Regards
A sleep-statement could be added between the statements - means before a load / store starts or after it ends - just to give the various I/O operations on the outside of Qlik a certain extra time to finish their threads.
In your case you are loading from the qvd by concatenating the historic data with the current ones and storing it again in the same file. Such approach worked usually very well without such lock-issues but by a heavy workload on the storage/network it may react too slowly. Therefore you may try a sleep-statement before the store-statement.
Beside this there is further a possibility that any other process locked the file in the meanwhile. Therefore it might be helpful to move the task to start a few minutes earlier or later.
If the task failed then take a look on the document-log.
Hi @balajibc64,
As @marcus_sommer indicated, you'll want to review the document log of the QVW /QVF file associated with the failed task. Refer to Qlik Support KB article The Source Document was NOT reloaded successfully for more details.
Best Regards
Yes. but it is failing occasionally. For example, every 10 mins one task running means, if task failed, again it will be success in the other run. Even If I tried to reload the task manually, then immediately its working fine.
Also need clarity on the statement
Memory Allocation Delta for this file=44.69 Mb. Available Physical Memory Before Reload=24471.55 Mb. Available Physical Memory After Reload=23427.25 Mb.
This is anything related to memory space? please clarify
So what is the exact error returned in the document log when the task fails? That will help us help you.
Best Regards
I think it has nothing to do with the RAM and also not with the task else it's very likely that the document-reload failed because any of the sources/targets is locked or temporary unavailable.
Regardless if a task is successful or failing - if you want to know more about what happens you will at first to need to look on the document-log.
@Chip_Matejowsky @marcus_sommer I checked the document log. But in that folder I can able to see only TASK log there is no document log for that particular failure time.
Also for crosscheck could you please help me for the location.
The origin document-log is within the folder in which the qvw resides and a copy within the program data of QlikTech by the distribution service probaby ...1\log\YYYYMMDD.
Important is of course to enable this logging within the document-properties in tab general of the qvw. IMO this should be the default-setting.
@marcus_sommer @Chip_Matejowsky Yes right, I'm checking the correct file. But when I looked that folder I can able to see task log, document log as well as distribution report for the success run. But for failure task I can see only task log only.
This is already a hint that not the task itself is causing the issue else the reload. To get a document-log even if the reload breaks with any error you need to enable the user-setting to write immediately into the log. It's within the user-properties in the tab general and if I'm not mistaken it results in:
EnableFlushLog=1
within the settings.ini.
Take a look within the file from the server and change this setting appropriately. Before this make a BACKUP of the settings.ini and stop the qvs.exe to get a write-access to the file.