[Erp5-report] r39862 yusei - /erp5/trunk/products/ERP5/Document/SolverProcess.py

nobody at svn.erp5.org nobody at svn.erp5.org
Thu Nov 4 01:57:37 CET 2010


Author: yusei
Date: Thu Nov  4 01:57:33 2010
New Revision: 39862

URL: http://svn.erp5.org?rev=39862&view=rev
Log:
Use SQLQueue. Multiple documents may need the same solver at the same time.

Modified:
    erp5/trunk/products/ERP5/Document/SolverProcess.py

Modified: erp5/trunk/products/ERP5/Document/SolverProcess.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/SolverProcess.py?rev=39862&r1=39861&r2=39862&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/SolverProcess.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/SolverProcess.py [utf8] Thu Nov  4 01:57:33 2010
@@ -183,7 +183,9 @@ class SolverProcess(XMLObject, ActivePro
     for solver in self.contentValues(portal_type=self.getPortalObject().getPortalTargetSolverTypeList()):
       if solver.isTempObject():
         solver_type = solver.getPortalTypeValue()
-        solver_type.activate(activate_kw=activate_kw).solve(
+        # Since multiple documents may need the same solver, activity must be
+        # executed individually. Thus SQLQueue is needed.
+        solver_type.activate(activity='SQLQueue', activate_kw=activate_kw).solve(
           activate_kw=activate_kw,
           delivery_list=solver.getDeliveryList(),
           configuration_dict=solver.getConfigurationPropertyDict()
@@ -191,7 +193,8 @@ class SolverProcess(XMLObject, ActivePro
       else:
         if isTransitionPossible(solver, 'start_solving'):
           solver.startSolving()
-        solver.activate(active_process=self, activate_kw=activate_kw).solve(
+        # SQLQueue is needed for the same reason.
+        solver.activate(activity='SQLQueue', active_process=self, activate_kw=activate_kw).solve(
           activate_kw=activate_kw)
 
   # API




More information about the Erp5-report mailing list