Skip to main content
Announcements
Defect acknowledgement with Nprinting Engine May 2022 SR2, please READ HERE
cancel
Showing results for 
Search instead for 
Did you mean: 
jtm3004
Contributor
Contributor

NPrinting Multiple Task Executions Stuck on "Queued"

Hi ,  

I running on Nprinting April 2019 release.

1. I am encountering an issue where when i reload the meta data of a different App ( Local connection ) , i cannot publish the report at the same time. If there was a running task  to Publish a report , and i queue a new task to Generate a connection cache for example for a different app than the one I'm publishing the report for , the request that came after get queued until the first request is done.  However this is a problem though because my cache generation takes a while ( heavy calculations in the model) and that means the publishing of other reports stay on queued status until i manually restart the QlikNprinting scheduler service.  also at that time the CPU usage is spikes at over 90 % and drops and then nothing happens . 
HIGH CPU.png

2. When the CPU and memory drops , the logs say that the engine is offline , however the Qlik Nprinting Engine Service is running . What would cause the Engine to go offline when the window service is running ? 
see attached logs with errors 


3. Eventually i had to restart the Nprinting services and still nothing happened, the task execution showed 3 running tasks, with a CPU of 8% and memory usage of 11% ( how is this possible with 3 tasks running ?) 
Running with NO CPU Usage2.png

4. After restarting the Nprinting services , there was no improvment and i had to restart , then it picked up the tasks where it was left off and ran a few publish report task , when i queued the cache generation the whole cycle restarted again : running tasks no CPU usage , no logs update

14 Replies
Lech_Miszkiewicz
Partner Ambassador/MVP
Partner Ambassador/MVP

Since you are using local connection you have no resource control. You have to assume that the nprinting engine server is able to open qlikview app as many times as many cpu you have. I an assuming straight away that you simply have resource management issue.
Your issue in my opinion is a case for experienced nprinting consultant!
Why you are not using qvp connection?
Cheers
Lech
cheers Lech, When applicable please mark the correct/appropriate replies as "solution" (you can mark up to 3 "solutions". Please LIKE threads if the provided solution is helpful to the problem.
Frank_S
Support
Support

Hello @jtm3004 

I noticed this mention in the log file.

Qlik.NPrinting.Common19.9.5.0Qlik.NPrinting.Common.Messages.ContentResolutionRabbitTopology20190513T100229.346+02:00WARNSERVER00000000Failed 3 times to send response to scheduler for request 62b7677a-00c9-4f87-99f7-ba679b4eeb42 of connection navigator=qlikview;documentpath="Z:\Folder\Sub Folder\My App\My App.qvw".

The Z drive in my opinion may be a mapped drive and is not a supported path method. 

https://help.qlik.com/en-US/nprinting/April2019/Content/NPrinting/AdministeringQVNprinting/Folder-de...

Switch to a path that the NPrinting service account can access in order to make the connection normally.

ie: "\\myqlikviewserver\folder\subfolder\myapp\mqappqvw"

You must grant the NP service account access to this path via Windows folder sharing and NTFS file security or switch to a QVP path. The NP service account must also have access to the QVW on the QV server if using QVP. This can be configured on the QMC by publishing/distributing the qvw to the NP service account or mounting the QVWs folder and ensuring the NP service account has permission via the QMC to open the mounted folder.

The error message indicates that your NP service account cannot open the QVW.

Please remember hit the 'Like' button and for helpful answers and resolutions, click on the 'Accept As Solution' button. Cheers!
jtm3004
Contributor
Contributor
Author

H Frank ,

Thank you. the file is actually located on the E drive on the Nprinting server and i just renamed it to share the logs ( i did not realize that i could be misleading) . 

Also im using a local connection not a qvp . I'm getting this error even when i use a model that is 30 MB in size with no calculations. it actually have the same behavior .

Frank_S
Support
Support

I suggest checking this article next.

It sounds like you 'may' only have a single core on your system.

There are other point in the article for you to review as well.

Hope this helps...

Please remember hit the 'Like' button and for helpful answers and resolutions, click on the 'Accept As Solution' button. Cheers!
Ruggero_Piccoli
Support
Support

Hi,

The Qlik NPrinting Scheduler plans the task to be executed based on the available resources, so it could be that some tasks are in running status and other are in queued. 

To @Frank_S  and @Lech_Miszkiewicz  suggestions I suggest to give a check at the page https://help.qlik.com/en-US/nprinting/April2019/Content/NPrinting/DeployingQVNprinting/Performance.h....

Another suggestion is to create a QlikView document specific for reporting with only the data and the charts that are needed to generate the reports. Move also all calculation to the reload script where possible instead of leave the formulas in the charts. All those suggestions will help to use less HW resources and speed up the tasks.

Best Regards,

Ruggero



Best Regards,
Ruggero
---------------------------------------------
When applicable please mark the appropriate replies as CORRECT. This will help community members and Qlik Employees know which discussions have already been addressed and have a possible known solution. Please mark threads with a LIKE if the provided solution is helpful to the problem, but does not necessarily solve the indicated problem. You can mark multiple threads with LIKEs if you feel additional info is useful to others.
jtm3004
Contributor
Contributor
Author

Hi Lech , 

we used the qvp connection , it improved things a bit for about 2hours and then we were back to square one. Tasks were not running and there was this message in the logs. 

 

Qlik.NPrinting.Engine 19.0.3.0 Qlik.NPrinting.Engine.Consumer.ContentResolver 20190514T140058.857+02:00 WARN SERVER-NPRINTING 0 0 0 0 0 0 0 0 Navigator stuck or died on connection navigator=qlikview;documentpath="qvp://server/Folder/N PRINTING REPORTS/My App/MyApp.qvw", forcing close of resolver. 1 unprocessed request(s) will be reenqueued. ERROR: Qlik.Reporting.Engine.Messages.Exceptions.NavigatorDiedException: Navigator navigator=qlikview;documentpath="qvp://server/Folder/N PRINTING REPORTS/My App/MyApp.qvw";qlikviewversion=12.20.20600 process died or has been terminated and can't be used anymore to resolve requests ---> System.Runtime.InteropServices.COMException: Error HRESULT E_FAIL has been returned from a call to a COM component.↓↓↓↓Server stack trace: ↓↓ at Qlik.QlikView.Interfaces.Doc.ClearAll(Boolean _LockedAlso, String _StateName)↓↓ at Engine.Navigator.QlikView.QV.QlikViewDocument.ClearSelections() in C:\Jws\release-19.0.x-C34Yz7Xrg\server\NPrinting\src\Engine.Navigator.QlikView\QVx\QlikViewDocument.cs:line 1282↓↓ at Engine.Navigator.QlikView.QV.Resolvers.Filters.ClearAllSelectionsRequestResolver.Resolve(QlikViewDocument doc, ClearAllSelectionsRequest request) in C:\Jws\release-19.0.x-C34Yz7Xrg\server\NPrinting\src\Engine.Navigator.QlikView\QVx\Resolvers\Filters\ClearAllSelctionsRequestResolver.cs:line 16↓↓ at Engine.Navigator.QlikView.QV.Resolvers.Filters.BaseFilterRequestResolver`1.Engine.Navigator.QlikView.QV.Resolvers.Filters.IFilterRequestResolver.Resolve(QlikViewDocument doc, IFilterRequest request) in C:\Jws\release-19.0.x-C34Yz7Xrg\server\NPrinting\src\Engine.Navigator.QlikView\QVx\Resolvers\Filters\BaseFilterResolver.cs:line 43↓↓↓↓Exception rethrown at [0]: ↓↓ at System.ExceptionExtensions.Rethrow(Exception this) in C:\Jws\release-19.0.x-C34Yz7Xrg\server\NPrinting\src\Qlik\Qlik.Reporting.Common\System\ExceptionExtensions.cs:line 231↓↓ at Engine.Navigator.QlikView.QV.Resolvers.Filters.BaseFilterRequestResolver`1.Engine.Navigator.QlikView.QV.Resolvers.Filters.IFilterRequestResolver.Resolve(QlikViewDocument doc, IFilterRequest request) in C:\Jws\release-19.0.x-C34Yz7Xrg\server\NPrinting\src\Engine.Navigator.QlikView\QVx\Resolvers\Filters\BaseFilterResolver.cs:line 58↓↓ at Engine.Navigator.QlikView.QV.QlikViewNavigator.Qlik.Printing.IContentNavigator.Filter(IFilterRequest request) in C:\Jws\release-19.0.x-C34Yz7Xrg\server\NPrinting\src\Engine.Navigator.QlikView\QVx\QlikViewNavigator.cs:line 200↓↓ --- End of inner exception stack trace ---↓↓ at Engine.Navigator.QlikView.QV.QlikViewNavigator.Qlik.Printing.IContentNavigator.Filter(IFilterRequest request) in C:\Jws\release-19.0.x-C34Yz7Xrg\server\NPrinting\src\Engine.Navigator.QlikView\QVx\QlikViewNavigator.cs:line 203↓↓ at Qlik.NPrinting.Engine.Consumer.ContentRequestExecutor.ApplyFilters(IContentRequest request) in C:\Jws\release-19.0.x-C34Yz7Xrg\server\NPrinting\src\Engine\Consumer\ContentRequestExecutor.cs:line 115↓↓ at Qlik.NPrinting.Engine.Consumer.ContentResolver.Consume(CancellationToken cancToken) in C:\Jws\release-19.0.x-C34Yz7Xrg\server\NPrinting\src\Engine\Consumer\ContentResolver.cs:line 299 

Ruggero_Piccoli
Support
Support

Hi,

Based on the logs I suppose you are having issues with the document. Check that it doesn't have unsupported things like macros or triggers. The issues with the document cause a crash of the local QlikView Desktop so the report generation stops.

Follow my suggestion and create the simpler document possible with only data and charts used for reporting.

Best Regards,

ruggero



Best Regards,
Ruggero
---------------------------------------------
When applicable please mark the appropriate replies as CORRECT. This will help community members and Qlik Employees know which discussions have already been addressed and have a possible known solution. Please mark threads with a LIKE if the provided solution is helpful to the problem, but does not necessarily solve the indicated problem. You can mark multiple threads with LIKEs if you feel additional info is useful to others.
jtm3004
Contributor
Contributor
Author

Hi Ruggero, 

I have removed the default selections on the document and reloaded the connection. this is a document with only 10 objects that i am using in the Nprinting report. I reloaded the connection the first time and it took about 6 minute to load the cache (qvp connection ) ,

exec1.png

then i tried to reload the connection again now it is stuck on and cannot even verify the connection 

ggg.png

It looks like it cannot even verify the license on the qlikview server. 

Please see logs below 

Engine.Navigator.QlikView.QV12.20 19.9.5.0 Engine.Navigator.QlikView.QV.QlikViewConnectionStringDiagnoser 20190515T130035.660+02:00 ERROR SERVER-NPRINTING 0 0 0 0 0 0 0 0 Evaluation of step QlikViewServerHasValidLicenseAndDocuments for connection string navigator=qlikview;documentpath="qvp://server/Folder/N PRINTING REPORTS/My App/MyApp.qvw";qlikviewversion=12.20.20500.0 failed. System.TimeoutException: server:4747 did not answer before the expiration of the timeout interval of 00:01:40.↵↓ at Engine.Navigator.QlikView.BaseQlikViewConnectionStringDiagnoser.ExecuteWithTimeout(Task task, TimeSpan timeout, Func`2 throwTimeoutException) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\BaseQlikViewConnectionStringDiagnoser.cs:line 26↵↓ at Engine.Navigator.QlikView.BaseQlikViewConnectionStringDiagnoser.ExecuteWithTimeout[T](Task`1 task, TimeSpan timeout, Func`2 throwTimeoutException) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\BaseQlikViewConnectionStringDiagnoser.cs:line 49↵↓ at Engine.Navigator.QlikView.BaseQlikViewConnectionStringDiagnoser.ExecuteWithTimeout[T](Func`1 code, TimeSpan timeout, Func`2 throwTimeoutException) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\BaseQlikViewConnectionStringDiagnoser.cs:line 57↵↓ at Engine.Navigator.QlikView.QV.QlikViewConnectionStringDiagnoser.CheckQlikViewHasLicenseAndDocuments(QlikViewServer qvsServer, Uri[]& docs) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\QVx\QlikViewConnectionStringDiagnoser.cs:line 401↵↓ at Engine.Navigator.QlikView.BaseQlikViewConnectionStringDiagnoser.<>c__DisplayClass6_0.<TryStep>b__0() in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\BaseQlikViewConnectionStringDiagnoser.cs:line 77↵↓ at Engine.Navigator.QlikView.BaseQlikViewConnectionStringDiagnoser.TryStep[T](ConnectionString connectionString, DiagnoseStep step, Func`1 stepCode, T& result) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\BaseQlikViewConnectionStringDiagnoser.cs:line 87↵↓ ↵↓=============↵↓ at Qlik.NPrinting.Common.Utils.NPLog.Error(String message, Exception ex, NPLoggingContext loggingContext)↵↓ at Engine.Navigator.QlikView.BaseQlikViewConnectionStringDiagnoser.TryStep[T](ConnectionString connectionString, DiagnoseStep step, Func`1 stepCode, T& result) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\BaseQlikViewConnectionStringDiagnoser.cs:line 87↵↓ at Engine.Navigator.QlikView.BaseQlikViewConnectionStringDiagnoser.TryStep(ConnectionString connectionString, DiagnoseStep step, Action stepCode) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\BaseQlikViewConnectionStringDiagnoser.cs:line 71↵↓ at Engine.Navigator.QlikView.QV.QlikViewConnectionStringDiagnoser.Diagnoser.TryStep(DiagnoseStep step, Action stepCode) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\QVx\QlikViewConnectionStringDiagnoser.cs:line 62↵↓ at Engine.Navigator.QlikView.QV.QlikViewConnectionStringDiagnoser.Diagnoser.PerformServerDiagnosis(Boolean fromCluster) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\QVx\QlikViewConnectionStringDiagnoser.cs:line 146↵↓ at Qlik.NPrinting.Engine.Diagnostics.EngineDiagnoserService.PerformDiagnosis(DiagnoseRequestMessage requestMessage, EngineLog log, Action`1 sendResponse) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine\Diagnostics\EngineDiagnoserService.cs:line 71↵↓ at Qlik.NPrinting.Common.Queues.ConnectionStringDiagnoserQueue.DoOnRequest(Object sender, IReceivedEventArgs args) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Common\Queues\ConnectionStringDiagnoserQueue.cs:line 71↵↓ at System.Threading.Tasks.Task.Execute()↵↓ at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)↵↓ at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)↵↓ at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)↵↓ at System.Threading.Tasks.Task.ExecuteEntry(Boolean bPreventDoubleExecution)↵↓ at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)↵↓ at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)↵↓ at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)↵↓ at System.Threading.ThreadHelper.ThreadStart(Object obj)↵↓=============↵↓

 

 

jtm3004
Contributor
Contributor
Author

Hi @Ruggero_Piccoli  

 

I removed all the triggers and defaults selection. the document only has about 10 objects that i am using in the Nprinting report . I reloaded the connection the first time and it took about 6 minutes as shown below 

exec1.png

Then i reloaded the second time it was stuck for a while and when i ran the verification i just found out that it could not even verify the connection successfully ( this is happening a lot not only on this document ) 

ggg.pngbelow is what i have found in the logs 

Engine.Navigator.QlikView.QV12.20 19.9.5.0 Engine.Navigator.QlikView.QV.QlikViewConnectionStringDiagnoser 20190515T130035.660+02:00 ERROR SERVER-NPRINTING 0 0 0 0 0 0 0 0 Evaluation of step QlikViewServerHasValidLicenseAndDocuments for connection string navigator=qlikview;documentpath="qvp://server/Folder/N PRINTING REPORTS/My App/MyApp.qvw";qlikviewversion=12.20.20500.0 failed. System.TimeoutException: server:4747 did not answer before the expiration of the timeout interval of 00:01:40.↵↓ at Engine.Navigator.QlikView.BaseQlikViewConnectionStringDiagnoser.ExecuteWithTimeout(Task task, TimeSpan timeout, Func`2 throwTimeoutException) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\BaseQlikViewConnectionStringDiagnoser.cs:line 26↵↓ at Engine.Navigator.QlikView.BaseQlikViewConnectionStringDiagnoser.ExecuteWithTimeout[T](Task`1 task, TimeSpan timeout, Func`2 throwTimeoutException) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\BaseQlikViewConnectionStringDiagnoser.cs:line 49↵↓ at Engine.Navigator.QlikView.BaseQlikViewConnectionStringDiagnoser.ExecuteWithTimeout[T](Func`1 code, TimeSpan timeout, Func`2 throwTimeoutException) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\BaseQlikViewConnectionStringDiagnoser.cs:line 57↵↓ at Engine.Navigator.QlikView.QV.QlikViewConnectionStringDiagnoser.CheckQlikViewHasLicenseAndDocuments(QlikViewServer qvsServer, Uri[]& docs) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\QVx\QlikViewConnectionStringDiagnoser.cs:line 401↵↓ at Engine.Navigator.QlikView.BaseQlikViewConnectionStringDiagnoser.<>c__DisplayClass6_0.<TryStep>b__0() in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\BaseQlikViewConnectionStringDiagnoser.cs:line 77↵↓ at Engine.Navigator.QlikView.BaseQlikViewConnectionStringDiagnoser.TryStep[T](ConnectionString connectionString, DiagnoseStep step, Func`1 stepCode, T& result) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\BaseQlikViewConnectionStringDiagnoser.cs:line 87↵↓ ↵↓=============↵↓ at Qlik.NPrinting.Common.Utils.NPLog.Error(String message, Exception ex, NPLoggingContext loggingContext)↵↓ at Engine.Navigator.QlikView.BaseQlikViewConnectionStringDiagnoser.TryStep[T](ConnectionString connectionString, DiagnoseStep step, Func`1 stepCode, T& result) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\BaseQlikViewConnectionStringDiagnoser.cs:line 87↵↓ at Engine.Navigator.QlikView.BaseQlikViewConnectionStringDiagnoser.TryStep(ConnectionString connectionString, DiagnoseStep step, Action stepCode) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\BaseQlikViewConnectionStringDiagnoser.cs:line 71↵↓ at Engine.Navigator.QlikView.QV.QlikViewConnectionStringDiagnoser.Diagnoser.TryStep(DiagnoseStep step, Action stepCode) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\QVx\QlikViewConnectionStringDiagnoser.cs:line 62↵↓ at Engine.Navigator.QlikView.QV.QlikViewConnectionStringDiagnoser.Diagnoser.PerformServerDiagnosis(Boolean fromCluster) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine.Navigator.QlikView\QVx\QlikViewConnectionStringDiagnoser.cs:line 146↵↓ at Qlik.NPrinting.Engine.Diagnostics.EngineDiagnoserService.PerformDiagnosis(DiagnoseRequestMessage requestMessage, EngineLog log, Action`1 sendResponse) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Engine\Diagnostics\EngineDiagnoserService.cs:line 71↵↓ at Qlik.NPrinting.Common.Queues.ConnectionStringDiagnoserQueue.DoOnRequest(Object sender, IReceivedEventArgs args) in C:\Jws\release-19.9.x-GsL0YuxYW\server\NPrinting\src\Common\Queues\ConnectionStringDiagnoserQueue.cs:line 71↵↓ at System.Threading.Tasks.Task.Execute()↵↓ at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)↵↓ at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)↵↓ at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)↵↓ at System.Threading.Tasks.Task.ExecuteEntry(Boolean bPreventDoubleExecution)↵↓ at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)↵↓ at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)↵↓ at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)↵↓ at System.Threading.ThreadHelper.ThreadStart(Object obj)↵↓=============↵↓

 

Please note that the Nprinting server is an Azure server and the qlikview server is a local server. Not sure if it is related to the issue that i am encountering . but i have tried the same in local environment-our development environment ( Nprinting and qlikview servers both local )