This commit is contained in:
2021-12-24 01:09:54 +00:00
parent cd76c3bd0f
commit 7a9d69ecf9
4 changed files with 8 additions and 5 deletions

2
.vscode/launch.json vendored
View File

@@ -48,7 +48,7 @@
"AYANOVA_DATA_PATH": "c:\\temp\\ravendata",
"AYANOVA_USE_URLS": "http://*:7575;",
"AYANOVA_SERVER_TEST_MODE": "false",
"AYANOVA_REPORT_RENDERING_TIMEOUT":"6",
"AYANOVA_REPORT_RENDERING_TIMEOUT":"5",
"AYANOVA_SERVER_TEST_MODE_SEEDLEVEL": "large",
"AYANOVA_BACKUP_PG_DUMP_PATH": "C:\\data\\code\\postgres_14\\bin\\"
},

View File

@@ -525,7 +525,8 @@ namespace AyaNova.Biz
// log.LogInformation($"DBG: ReportBiz::launching browser now");
// #endif
using (var browser = await Puppeteer.LaunchAsync(lo))
using (var page = await browser.NewPageAsync())
//using (var page = await browser.NewPageAsync())
using (var page = (await browser.PagesAsync())[0])
{
//track this process so it can be cancelled if it times out
ReportRenderManager.AddProcess(browser.Process.Id, renderTimeOutExpiry, log);

View File

@@ -13,7 +13,8 @@ namespace AyaNova.Biz
private static ILogger log = AyaNova.Util.ApplicationLogging.CreateLogger("CoreJobReportRenderEngineProcessCleanup");
private static DateTime _lastRun = DateTime.UtcNow;
private static TimeSpan tsRunEvery = new TimeSpan(0, 5, 1);//every this minutes run the cleanup task
//SET LOW INTENTIONALLY AS CAN EAT UP A LOT OF RESOURCES QUICKLY IF RUN'S PAST TIME
private static TimeSpan tsRunEvery = new TimeSpan(0, 1, 1);//every this minutes run the cleanup task
////////////////////////////////////////////////////////////////////////////////////////////////
//

View File

@@ -52,15 +52,16 @@ namespace AyaNova.Util
internal static bool ForceCloseProcess(ReportRenderInstanceInfo instance, ILogger log)
{
log.LogDebug($"ForceCloseProcess on report render instance id {instance.ReporterProcessId} exired {instance.Expires.ToString()} utc");
log.LogDebug($"ForceCloseProcess on report render instance id {instance.ReporterProcessId} expired {instance.Expires.ToString()} utc");
try
{
var p = Process.GetProcessById(instance.ReporterProcessId);
if (p != null)
{
//we have an existing process
//try to kill it
p.Kill();
p.Kill(true);
if (p.HasExited == false)
{
log.LogDebug($"Expired report render instance id {instance.ReporterProcessId} could not be force closed");