details:   https://code.openbravo.com/erp/devel/pi/rev/f596f4f93186
changeset: 23082:f596f4f93186
user:      Guillermo Gil <guillermo.gil <at> openbravo.com>
date:      Wed May 21 12:44:21 2014 +0200
summary:   Fixed issue 26548: Slow flush after a fetch to a datasource

Session cleared on FETCH and FIC in order to prevent slow flushes

diffstat:

 
modules/org.openbravo.client.application/src/org/openbravo/client/application/window/FormInitializationComponent.java
 |  3 +++
 
modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java
                         |  5 +++++
 2 files changed, 8 insertions(+), 0 deletions(-)

diffs (28 lines):

diff -r 6f7c9f5a8186 -r f596f4f93186 
modules/org.openbravo.client.application/src/org/openbravo/client/application/window/FormInitializationComponent.java
--- 
a/modules/org.openbravo.client.application/src/org/openbravo/client/application/window/FormInitializationComponent.java
     Wed May 21 10:41:21 2014 +0200
+++ 
b/modules/org.openbravo.client.application/src/org/openbravo/client/application/window/FormInitializationComponent.java
     Wed May 21 12:44:21 2014 +0200
@@ -228,6 +228,9 @@
         }
       }
 
+      // Clear session to prevent slow flush
+       OBDal.getInstance().getSession().clear();
+
       // First the parent record is retrieved and the session variables for 
the parent records are
       // set
       long t1 = System.currentTimeMillis();
diff -r 6f7c9f5a8186 -r f596f4f93186 
modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java
--- 
a/modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java
     Wed May 21 10:41:21 2014 +0200
+++ 
b/modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java
     Wed May 21 12:44:21 2014 +0200
@@ -769,6 +769,11 @@
   protected String doPostAction(Map<String, String> parameters, String content,
       DataSourceAction action, String originalObject) {
 
+    // Clear session to prevent slow flush if a fetch is done
+    if (action.name().equals("FETCH")) {
+      OBDal.getInstance().getSession().clear();
+    }
+
     OBDal.getInstance().flush();
 
     try {

------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to