Преглед изворни кода

HPCC-17881 Fix leaking graph object.

HPCC-16228 introduced a leak that caused child graph objects to
leak, in doing so it caused threads to leak owned by activities,
eventually causing 'Out of thread' errors to be seen.

Signed-off-by: Jake Smith <jake.smith@lexisnexisrisk.com>
Jake Smith пре 8 година
родитељ
комит
d019717b52
1 измењених фајлова са 2 додато и 2 уклоњено
  1. 2 2
      thorlcr/graph/thgraph.cpp

+ 2 - 2
thorlcr/graph/thgraph.cpp

@@ -1808,7 +1808,7 @@ void CGraphBase::createFromXGMML(IPropertyTree *_node, CGraphBase *_owner, CGrap
             if (childGraph == originalChildGraph)
                 originalAvailable = true;
             else
-                stack.append(*childGraph);
+                stack.append(*LINK(childGraph));
         }
     public:
         CChildParallelFactory(CGraphBase *_originalChildGraph) : originalChildGraph(_originalChildGraph)
@@ -1839,7 +1839,7 @@ void CGraphBase::createFromXGMML(IPropertyTree *_node, CGraphBase *_owner, CGrap
         {
             Owned<CGraphBase> childGraph = getGraph();
             Owned<IEclGraphResults> results = childGraph->evaluate(parentExtractSz, parentExtract);
-            pushGraph(childGraph.getClear());
+            pushGraph(childGraph);
             return results.getClear();
         }
     };