Thanks for the reply.
Me and Bimal work in same team and here is what I see happening.
When a print is clicked and render service is clicked there are on an average 6 to 7 chromium processes that can be seen when we check Task manager processes. In 50% of cases 1 of those chromium process is left in suspended state.
This process does not affect any existing pdf generation.
When an application pool on IIS is restarted on app_start we have code to restart the jsreport server.
var rs = new LocalReporting()
.UseBinary(JsReportBinary.GetBinary())
.KillRunningJsReportProcesses()
.RunInDirectory(basePath)
.Configure(cfg =>
{
cfg.HttpPort = port;
cfg.AppPath = Path.Combine(basePath, "app");
cfg.TempDirectory = Path.Combine(basePath, "temp");
return cfg.BaseUrlAsWorkingDirectory();
})
.AsWebServer()
.Create();
When there is a suspended chromium process, bove code fails to start jsreport.
That is when we have to kill all suspended processes and recycle app pool.(After killing suspended process this works).
Here is js config setting that we use
{
"templatingEngines": {
"numberOfWorkers": 4,
"timeout": 20000
},
"logger": {
"file": {
"transport": "file",
"level": "info",
"filename": "EBSPdfLog.txt",
"maxsize": 25000,
"maxFiles": 1
}
}
}
We tried to increaase number of workers and timeout but still get those suspended processes.
Js report Local is 2.2.2
Js report Binary is 2.6.1