You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ch...@apache.org on 2014/06/06 21:52:24 UTC

git commit: fixing AIRAVATA-1288

Repository: airavata
Updated Branches:
  refs/heads/master 47f6ed33a -> 013a815ce


fixing AIRAVATA-1288


Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/013a815c
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/013a815c
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/013a815c

Branch: refs/heads/master
Commit: 013a815ce6b1938c0d1d48bbd9bddb3e66847cb6
Parents: 47f6ed3
Author: Chathuri Wimalasena <ka...@gmail.com>
Authored: Fri Jun 6 15:52:18 2014 -0400
Committer: Chathuri Wimalasena <ka...@gmail.com>
Committed: Fri Jun 6 15:52:18 2014 -0400

----------------------------------------------------------------------
 .../samples/TestCreateLaunchExperiment.java     | 24 ++++++-------
 .../persistance/registry/jpa/ResourceUtils.java | 36 ++++++++++++++++++++
 .../AdvanceInputDataHandlingResource.java       |  3 ++
 .../AdvancedOutputDataHandlingResource.java     |  3 ++
 .../ApplicationDescriptorResource.java          |  3 ++
 .../jpa/resources/ApplicationInputResource.java |  3 ++
 .../resources/ApplicationOutputResource.java    |  3 ++
 .../ComputationSchedulingResource.java          |  3 ++
 .../jpa/resources/ConfigDataResource.java       |  3 ++
 .../jpa/resources/ConfigurationResource.java    |  3 ++
 .../resources/DataTransferDetailResource.java   | 12 +++++++
 .../jpa/resources/ErrorDetailResource.java      |  3 ++
 .../jpa/resources/ExperimentInputResource.java  |  3 ++
 .../jpa/resources/ExperimentOutputResource.java |  3 ++
 .../jpa/resources/ExperimentResource.java       | 12 +++++++
 .../registry/jpa/resources/GatewayResource.java | 18 ++++++++++
 .../jpa/resources/HostDescriptorResource.java   |  6 ++++
 .../jpa/resources/JobDetailResource.java        | 12 +++++++
 .../jpa/resources/NodeInputResource.java        |  3 ++
 .../jpa/resources/NodeOutputResource.java       |  3 ++
 .../registry/jpa/resources/ProjectResource.java | 12 +++++++
 .../jpa/resources/ProjectUserResource.java      |  3 ++
 .../jpa/resources/PublishWorkflowResource.java  |  3 ++
 .../jpa/resources/QosParamResource.java         |  3 ++
 .../resources/ServiceDescriptorResource.java    |  6 ++++
 .../registry/jpa/resources/StatusResource.java  |  3 ++
 .../jpa/resources/TaskDetailResource.java       | 12 +++++++
 .../registry/jpa/resources/UserResource.java    |  3 ++
 .../jpa/resources/UserWorkflowResource.java     |  3 ++
 .../registry/jpa/resources/WorkerResource.java  | 21 ++++++++++++
 .../resources/WorkflowNodeDetailResource.java   | 12 +++++++
 31 files changed, 228 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/TestCreateLaunchExperiment.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/TestCreateLaunchExperiment.java b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/TestCreateLaunchExperiment.java
index 1913c5f..cb43d5a 100644
--- a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/TestCreateLaunchExperiment.java
+++ b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/TestCreateLaunchExperiment.java
@@ -112,18 +112,18 @@ public class TestCreateLaunchExperiment {
 //                }
 //            }
 
-            List<Experiment> experimentList = getExperimentsForUser(airavata, "admin");
-            Experiment experiment = experimentList.get(1);
-            ExperimentStatus experimentStatus = experiment.getExperimentStatus();
-            long timeOfStateChange = experimentStatus.getTimeOfStateChange();
-            System.out.println(timeOfStateChange);
-            Date date = new Date(timeOfStateChange);
-            Format format = new SimpleDateFormat("yyyy MM dd HH:mm:ss");
-            String time1 = format.format(date);
-//                int count = i+1;
-            System.out.println(time1);
-
-            for (int i = 0; i < 50 ; i++){
+//            List<Experiment> experimentList = getExperimentsForUser(airavata, "admin");
+//            Experiment experiment = experimentList.get(1);
+//            ExperimentStatus experimentStatus = experiment.getExperimentStatus();
+//            long timeOfStateChange = experimentStatus.getTimeOfStateChange();
+//            System.out.println(timeOfStateChange);
+//            Date date = new Date(timeOfStateChange);
+//            Format format = new SimpleDateFormat("yyyy MM dd HH:mm:ss");
+//            String time1 = format.format(date);
+////                int count = i+1;
+//            System.out.println(time1);
+
+            for (int i = 0; i < 500 ; i++){
                 long time = System.currentTimeMillis();
                 List<Experiment> experiments = getExperimentsForUser(airavata, "admin");
                 int count = i+1;

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceUtils.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceUtils.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceUtils.java
index 141cb3e..1253020 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceUtils.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/ResourceUtils.java
@@ -116,6 +116,9 @@ public class ResourceUtils {
             throw new RegistryException(e);
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -146,6 +149,9 @@ public class ResourceUtils {
             throw new RegistryException(e);
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -167,6 +173,9 @@ public class ResourceUtils {
             throw new RegistryException(e);
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -187,6 +196,9 @@ public class ResourceUtils {
             throw new RegistryException(e);
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -216,6 +228,9 @@ public class ResourceUtils {
             throw new RegistryException(e);
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -243,6 +258,9 @@ public class ResourceUtils {
             return false;
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -277,6 +295,9 @@ public class ResourceUtils {
             throw new RegistryException(e);
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -306,6 +327,9 @@ public class ResourceUtils {
             return false;
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -338,6 +362,9 @@ public class ResourceUtils {
             logger.error(e.getMessage(), e);
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -407,6 +434,9 @@ public class ResourceUtils {
             throw new RegistryException(e);
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -433,6 +463,9 @@ public class ResourceUtils {
             throw new RegistryException(e);
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -451,6 +484,9 @@ public class ResourceUtils {
             throw new RegistryException(e);
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvanceInputDataHandlingResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvanceInputDataHandlingResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvanceInputDataHandlingResource.java
index d463cb8..4ad08e4 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvanceInputDataHandlingResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvanceInputDataHandlingResource.java
@@ -158,6 +158,9 @@ public class AdvanceInputDataHandlingResource extends AbstractResource {
             throw new RegistryException(e);
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvancedOutputDataHandlingResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvancedOutputDataHandlingResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvancedOutputDataHandlingResource.java
index e6aa9f4..bb3cc80 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvancedOutputDataHandlingResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/AdvancedOutputDataHandlingResource.java
@@ -149,6 +149,9 @@ public class AdvancedOutputDataHandlingResource extends AbstractResource {
             throw new RegistryException(e);
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationDescriptorResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationDescriptorResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationDescriptorResource.java
index f8ad51d..46d8d67 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationDescriptorResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationDescriptorResource.java
@@ -251,6 +251,9 @@ public class ApplicationDescriptorResource extends AbstractResource {
             throw new RegistryException(e);
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationInputResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationInputResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationInputResource.java
index 686e4bf..4f9aea1 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationInputResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationInputResource.java
@@ -143,6 +143,9 @@ public class ApplicationInputResource extends AbstractResource {
             throw new RegistryException(e.getMessage());
         } finally {
                 if (em != null && em.isOpen()) {
+                    if (em.getTransaction().isActive()){
+                        em.getTransaction().rollback();
+                    }
                     em.close();
                 }
             }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationOutputResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationOutputResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationOutputResource.java
index 1f80629..3d53c40 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationOutputResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ApplicationOutputResource.java
@@ -144,6 +144,9 @@ public class ApplicationOutputResource extends AbstractResource {
             throw new RegistryException(e.getMessage());
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ComputationSchedulingResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ComputationSchedulingResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ComputationSchedulingResource.java
index 57a5f33..dae5dd3 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ComputationSchedulingResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ComputationSchedulingResource.java
@@ -209,6 +209,9 @@ public class ComputationSchedulingResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ConfigDataResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ConfigDataResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ConfigDataResource.java
index 643d9c5..c042eb6 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ConfigDataResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ConfigDataResource.java
@@ -130,6 +130,9 @@ public class ConfigDataResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ConfigurationResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ConfigurationResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ConfigurationResource.java
index 0184d1c..ef84988 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ConfigurationResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ConfigurationResource.java
@@ -154,6 +154,9 @@ public class ConfigurationResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/DataTransferDetailResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/DataTransferDetailResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/DataTransferDetailResource.java
index 4ea4515..442a38f 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/DataTransferDetailResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/DataTransferDetailResource.java
@@ -117,6 +117,9 @@ public class DataTransferDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -150,6 +153,9 @@ public class DataTransferDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -193,6 +199,9 @@ public class DataTransferDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -237,6 +246,9 @@ public class DataTransferDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ErrorDetailResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ErrorDetailResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ErrorDetailResource.java
index 07ffaac..ec2493d 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ErrorDetailResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ErrorDetailResource.java
@@ -210,6 +210,9 @@ public class ErrorDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentInputResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentInputResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentInputResource.java
index bb9e980..186d276 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentInputResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentInputResource.java
@@ -139,6 +139,9 @@ public class ExperimentInputResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentOutputResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentOutputResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentOutputResource.java
index 28e2640..b674a35 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentOutputResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentOutputResource.java
@@ -139,6 +139,9 @@ public class ExperimentOutputResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentResource.java
index 733ed6e..bca77cd 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentResource.java
@@ -264,6 +264,9 @@ public class ExperimentResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -387,6 +390,9 @@ public class ExperimentResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -491,6 +497,9 @@ public class ExperimentResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -555,6 +564,9 @@ public class ExperimentResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/GatewayResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/GatewayResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/GatewayResource.java
index 9535ecc..a4a3482 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/GatewayResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/GatewayResource.java
@@ -199,6 +199,9 @@ public class GatewayResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -304,6 +307,9 @@ public class GatewayResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -446,6 +452,9 @@ public class GatewayResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -480,6 +489,9 @@ public class GatewayResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -541,6 +553,9 @@ public class GatewayResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -747,6 +762,9 @@ public class GatewayResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/HostDescriptorResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/HostDescriptorResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/HostDescriptorResource.java
index 20aa685..7ef4088 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/HostDescriptorResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/HostDescriptorResource.java
@@ -177,6 +177,9 @@ public class HostDescriptorResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -225,6 +228,9 @@ public class HostDescriptorResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/JobDetailResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/JobDetailResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/JobDetailResource.java
index 9ed68b1..9dc3c20 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/JobDetailResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/JobDetailResource.java
@@ -134,6 +134,9 @@ public class JobDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -177,6 +180,9 @@ public class JobDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -233,6 +239,9 @@ public class JobDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -279,6 +288,9 @@ public class JobDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/NodeInputResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/NodeInputResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/NodeInputResource.java
index 5f19a4f..138dd6c 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/NodeInputResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/NodeInputResource.java
@@ -145,6 +145,9 @@ public class NodeInputResource extends AbstractResource {
             throw new RegistryException(e);
         }finally {
             if (em != null && em.isOpen()){
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/NodeOutputResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/NodeOutputResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/NodeOutputResource.java
index e393ca8..164a2e0 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/NodeOutputResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/NodeOutputResource.java
@@ -145,6 +145,9 @@ public class NodeOutputResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectResource.java
index 108e903..0643eb1 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectResource.java
@@ -119,6 +119,9 @@ public class ProjectResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -166,6 +169,9 @@ public class ProjectResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -223,6 +229,9 @@ public class ProjectResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -271,6 +280,9 @@ public class ProjectResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectUserResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectUserResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectUserResource.java
index ed2648a..dd50b7c 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectUserResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ProjectUserResource.java
@@ -113,6 +113,9 @@ public class ProjectUserResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/PublishWorkflowResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/PublishWorkflowResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/PublishWorkflowResource.java
index 434a012..80df415 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/PublishWorkflowResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/PublishWorkflowResource.java
@@ -235,6 +235,9 @@ public class PublishWorkflowResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/QosParamResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/QosParamResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/QosParamResource.java
index 26b9d88..6f906cd 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/QosParamResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/QosParamResource.java
@@ -142,6 +142,9 @@ public class QosParamResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ServiceDescriptorResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ServiceDescriptorResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ServiceDescriptorResource.java
index b42c437..65e29b3 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ServiceDescriptorResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ServiceDescriptorResource.java
@@ -122,6 +122,9 @@ public class ServiceDescriptorResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -162,6 +165,9 @@ public class ServiceDescriptorResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/StatusResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/StatusResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/StatusResource.java
index b67f0b3..169e1c7 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/StatusResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/StatusResource.java
@@ -185,6 +185,9 @@ public class StatusResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/TaskDetailResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/TaskDetailResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/TaskDetailResource.java
index 797d167..8c0c02d 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/TaskDetailResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/TaskDetailResource.java
@@ -216,6 +216,9 @@ public class TaskDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -332,6 +335,9 @@ public class TaskDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -445,6 +451,9 @@ public class TaskDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -486,6 +495,9 @@ public class TaskDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/UserResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/UserResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/UserResource.java
index 2194472..0bf96f8 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/UserResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/UserResource.java
@@ -150,6 +150,9 @@ public class UserResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/UserWorkflowResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/UserWorkflowResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/UserWorkflowResource.java
index 547df55..2b240a2 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/UserWorkflowResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/UserWorkflowResource.java
@@ -143,6 +143,9 @@ public class UserWorkflowResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java
index 312a7bb..5df418f 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java
@@ -136,6 +136,9 @@ public class WorkerResource extends AbstractResource {
             throw new RegistryException(e.getMessage());
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -189,6 +192,9 @@ public class WorkerResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -294,6 +300,9 @@ public class WorkerResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -335,6 +344,9 @@ public class WorkerResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -548,6 +560,9 @@ public class WorkerResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -585,6 +600,9 @@ public class WorkerResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -619,6 +637,9 @@ public class WorkerResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/013a815c/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkflowNodeDetailResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkflowNodeDetailResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkflowNodeDetailResource.java
index 75c0f49..b47c4f3 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkflowNodeDetailResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkflowNodeDetailResource.java
@@ -153,6 +153,9 @@ public class WorkflowNodeDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -221,6 +224,9 @@ public class WorkflowNodeDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -319,6 +325,9 @@ public class WorkflowNodeDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }
@@ -357,6 +366,9 @@ public class WorkflowNodeDetailResource extends AbstractResource {
             throw new RegistryException(e);
         } finally {
             if (em != null && em.isOpen()) {
+                if (em.getTransaction().isActive()){
+                    em.getTransaction().rollback();
+                }
                 em.close();
             }
         }