6 Replies Latest reply: May 25, 2017 7:48 PM by Lech Miszkiewicz RSS

    NPrinting 17 Memory leak

      We have a QA server where we have QVS, QMC, QWS as well as QlikView Desktop version 12.


      At the same time, we have NPrinting services version 17 installed on the same server.


      There are 2 cases of memory issues:

      1. Multiple open database connections (not 2 or 3, but more than 20. It's different every time)

      2. Multiple QV Desktops are open after report preview.


      Let me show this step by step.

      1. NPrinting's services are down, QV's are up. Everything looks fine as expected.

      2. I'm starting all NPrinting services except Repo. As expected.

      3. Starting NPrinting Repo and I can see 15 postgres connections were opened. And even worse in a couple of second - 20 more were opened. There was zero activity on all of them.

      4. Now, I'm trying to run a Template Editor. It's a simple one-table multi-page report.

      5. When I try to generate a preview, it's spinning up 6 QV Desktops. It's different  each time. Maybe this is fine for performance and I would be fine with it if they were closed after the preview is done, but there are not.

      6. Even when I close the Template Editor the QV Desktop instances are still open.


      So, there is good thing that by stoping appropriate services all this leakages will be removed:


      7. By closing NPrinting Repo service, all postgres connections will be closed.

      8. By closing NPrinting Engine service, all open QV Desktops will be closed.


      But I think nobody will be happy to clean memory by these last two steps in production.


      Maybe I'm missing some settings. Can you help me to reduce number of DB connections and QV Desktop sessions in described cases?




        • Re: NPrinting 17 Memory leak
          Liz Ward

          I'm seeing the same issue on my end.  Hopefully someone will respond with a solution.  This is happening for me when i'm trying to preview a PixelPerfect report with just a simple chart with a level.

          • Re: NPrinting 17 Memory leak
            Gianluca Perin

            Hi Nick,

            this is not a memory leak, this is the correct behavior of NPrinting 17.

            I try to explain how it works:

            Multiple postgresql connections:

            When NPrinting 17 Server starts, it opens up a pool of 20 or more connections to the underneath database (postgresql) in order to have always a quick connection available (those 20 connection are no resources-consuming until the server uses them).


            Multiple QV.exe instances:

            When you run a preview or a task within the designer or the web console, the NPrinting 17 Server calculates the number of objects (charts, images, levels) needed in order to produce the report. When it's done, it sends the order to the NPrinting 17 Engine to open-up as many QV.exe instances ( less or equal the number of CPU cores of the engine machine ) as needed in order to perform as many parallel jobs as possible.


            "Zombie" QV.exe instances:

            This is a known issue. With the next SR1 of NPrinting 17 (May) we'll optimize this process and you should no longer see "zombie" QV.exe instances.


            I hope that i gave you all the needed info. But if you need more details don't hesitate to ask.

            Best regards

            • Re: NPrinting 17 Memory leak
              JULIAN RODRIGUEZ

              Hello Gianluca, I have NPrinting 17.1.2 and I'm getting the same QV.EXE "zombie instances" problem described by Nick


              Do you have any resolution for this?





              • Re: NPrinting 17 Memory leak
                Lech Miszkiewicz

                Another thing is that NPrinting is not recommended to be installed on the same server as QlikView. Help document says that it will consume as much resources as possible, so it should be different box!



                Qlik NPrinting Engine and Server, and QlikView Server should not be installed on the same machine. There are no known incompatibilities between these two products, but in a production environment, Qlik NPrinting requires a separate machine (virtual or physical) from QlikView Server. The reason for this is that Qlik NPrinting Engine and Server will consume all the available resources of the machine they are installed on. In a production environment this may lead to QlikView Server crashing because of lack of resources.

                regarding zombie QV.exe - as long as you use QVP connection they will not harm, even if they stay open!  also as Gianluca Perin says there are updates coming - so stay tuned!




                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 as HELPFUL if the provided solution is helpful to the problem, but does not necessarily solve the indicated problem. You can mark multiple threads as HELPFUL if you feel additional info is useful to others.