You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@oodt.apache.org by ma...@apache.org on 2011/08/23 19:15:49 UTC

svn commit: r1160814 - /oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/repository/DataSourceWorkflowRepository.java

Author: mattmann
Date: Tue Aug 23 17:15:49 2011
New Revision: 1160814

URL: http://svn.apache.org/viewvc?rev=1160814&view=rev
Log:
- fix for OODT-311 Test failing related to workflow tasks and the DataSourceWorkflowRepository

Modified:
    oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/repository/DataSourceWorkflowRepository.java

Modified: oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/repository/DataSourceWorkflowRepository.java
URL: http://svn.apache.org/viewvc/oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/repository/DataSourceWorkflowRepository.java?rev=1160814&r1=1160813&r2=1160814&view=diff
==============================================================================
--- oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/repository/DataSourceWorkflowRepository.java (original)
+++ oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/repository/DataSourceWorkflowRepository.java Tue Aug 23 17:15:49 2011
@@ -1385,21 +1385,25 @@ public class DataSourceWorkflowRepositor
       conn = dataSource.getConnection();
       conn.setAutoCommit(false);
       statement = conn.createStatement();
-
-      String sql = "INSERT INTO workflow_tasks (workflow_task_id, workflow_task_name, workflow_task_class) VALUES (1, '"
-          + task.getTaskName() + "', '"+task.getTaskInstanceClassName()+"')";
-
+      
+      String sql = "SELECT MAX(workflow_task_id) AS max_id FROM workflow_tasks";
       LOG.log(Level.FINE, "commitTaskToDB: Executing: " + sql);
-      statement.execute(sql);
-
-      sql = "SELECT MAX(workflow_task_id) AS max_id FROM workflow_tasks";
       rs = statement.executeQuery(sql);
 
       while (rs.next()) {
         taskId = String.valueOf(rs.getInt("max_id"));
+      }      
+      
+      synchronized(taskId){
+        taskId = String.valueOf(new Integer(taskId)+1);
       }
 
       task.setTaskId(taskId);
+      sql = "INSERT INTO workflow_tasks (workflow_task_id, workflow_task_name, workflow_task_class) VALUES ("+taskId+", '"
+          + task.getTaskName() + "', '"+task.getTaskInstanceClassName()+"')";
+
+      LOG.log(Level.FINE, "commitTaskToDB: Executing: " + sql);
+      statement.execute(sql);
 
       // task to workflow map
       sql = "INSERT INTO workflow_task_map (workflow_id, workflow_task_id, task_order) VALUES ("