We are experiencing the same memory leak issues with Stimulsoft.Reports.Engine.NetCore (2022.1.2). We are running this in a Linux Docker with Kubernetes and the memory leak is so large it gets evicted due to Memory Pressure. Here is the simple code:
Code: Select all
using (var sti = new StiReport())
{
sti.LoadDocumentFromJson(rptNovo);
sti.Culture = "pt-BR";
using (var newMs = new MemoryStream())
{
var _document = new Document();
var _copy = new PdfCopy(_document, newMs);
_document.Open();
using (MemoryStream capaMs = new MemoryStream(capa))
{
PdfReader readerCapa = new PdfReader(capaMs);
using (MemoryStream sourceMs = new MemoryStream(pdf))
{
PdfReader reader = new PdfReader(sourceMs);
for (int i = 1; i <= reader.NumberOfPages; i++)
{
PdfImportedPage page = _copy.GetImportedPage(readerCapa, 1);
_copy.AddPage(page);
page = _copy.GetImportedPage(reader, i);
_copy.AddPage(page);
}
reader.Close();
}
}
_copy.Close();
return newMs.ToArray();
}
}