Revision: 1421
          http://svn.sourceforge.net/cogkit/?rev=1421&view=rev
Author:   hategan
Date:     2006-11-24 09:27:57 -0800 (Fri, 24 Nov 2006)
Log Message:
-----------
make task fail if exit code != 0
Modified Paths:
--------------
    trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
Modified: trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
===================================================================
--- trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2006-11-22 22:59:59 UTC (rev 1420)
+++ trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2006-11-24 17:27:57 UTC (rev 1421)
@@ -303,17 +303,21 @@
 			newStatus.setStatusCode(Status.FAILED);
 			int errorCode = job.getError();
 			if (job.getFault() != null) {
-				newStatus.setMessage("#" + errorCode + " " + job.getFault().getDescription()[0]);
-				newStatus.setException((Exception) job.getFault().getCause());
+				failTask("#" + errorCode + " " + job.getFault().getDescription()[0], (Exception) job.getFault().getCause());
 			}
 			else {
-				newStatus.setMessage("#" + errorCode);
+				failTask("#" + errorCode + " " + job.getFault().getDescription()[0], null);
 			}
 			this.task.setStatus(newStatus);
 			cleanup();
 		}
 		else if (state.equals(StateEnumeration.Done)) {
-			this.task.setStatus(Status.COMPLETED);
+			if (job.getExitCode() != 0) {
+				failTask("Job failed with an exit code of " + job.getExitCode(), null);
+			}
+			else {
+				this.task.setStatus(Status.COMPLETED);
+			}
 			cleanup();
 		}
 		else if (state.equals(StateEnumeration.Suspended)) {
@@ -326,6 +330,16 @@
 			logger.debug("Unknown status: " + state.getValue());
 		}
 	}
+	
+	private void failTask(String message, Exception exception) {
+		Status newStatus = new StatusImpl();
+		Status oldStatus = this.task.getStatus();
+		newStatus.setPrevStatusCode(oldStatus.getStatusCode());
+		newStatus.setStatusCode(Status.FAILED);
+		newStatus.setMessage(message);
+		newStatus.setException(exception);
+		this.task.setStatus(newStatus);
+	}
 
 	private void cleanup() {
 		this.gramJob.removeListener(this);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
Revision: 1741
          http://cogkit.svn.sourceforge.net/cogkit/?rev=1741&view=rev
Author:   hategan
Date:     2007-09-18 14:45:30 -0700 (Tue, 18 Sep 2007)
Log Message:
-----------
added socketTimeout attribute handling
Modified Paths:
--------------
    trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
Modified: trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
===================================================================
--- trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2007-09-14 21:40:11 UTC (rev 1740)
+++ trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2007-09-18 21:45:30 UTC (rev 1741)
@@ -176,8 +176,7 @@
                 this.gramJob.addListener(this);
             }
 
-            this.gramJob
-                    .setDelegationEnabled(spec.getDelegation() != Delegation.NO_DELEGATION);
+            setMiscJobParams(spec, this.gramJob);
 
             try {
                 this.gramJob.submit(factoryEndpoint, spec.isBatchJob(), spec
@@ -199,6 +198,23 @@
         }
     }
 
+    protected void setMiscJobParams(JobSpecification spec, GramJob job) {
+        job
+                .setDelegationEnabled(spec.getDelegation() != Delegation.NO_DELEGATION);
+
+        Object soTimeout = spec.getAttribute("socketTimeout");
+        if (soTimeout instanceof Integer) {
+            job.setTimeOut(((Integer) soTimeout).intValue());
+        }
+        else if (soTimeout instanceof String) {
+            job.setTimeOut(Integer.parseInt((String) soTimeout));
+        }
+        else {
+            logger.warn("Unknown value for socketTimeout attribute ("
+                    + soTimeout + "). Ignoring.");
+        }
+    }
+
     public void suspend() throws InvalidSecurityContextException,
             TaskSubmissionException {
         throw new UnsupportedOperationException("suspend");
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
Revision: 1750
          http://cogkit.svn.sourceforge.net/cogkit/?rev=1750&view=rev
Author:   hategan
Date:     2007-09-19 13:43:23 -0700 (Wed, 19 Sep 2007)
Log Message:
-----------
don't set status if exception is thrown
Modified Paths:
--------------
    trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
Modified: trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
===================================================================
--- trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2007-09-19 20:41:43 UTC (rev 1749)
+++ trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2007-09-19 20:43:23 UTC (rev 1750)
@@ -188,7 +188,6 @@
                 }
             }
             catch (Exception e) {
-                failTask(e.getMessage(), e);
                 // No need for cleanup. Reportedly no resource has been created
                 // if an exception is thrown
                 gramJob.removeListener(this);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
Revision: 1755
          http://cogkit.svn.sourceforge.net/cogkit/?rev=1755&view=rev
Author:   hategan
Date:     2007-09-21 08:40:05 -0700 (Fri, 21 Sep 2007)
Log Message:
-----------
removed release before destory
Modified Paths:
--------------
    trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
Modified: trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
===================================================================
--- trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2007-09-19 20:49:59 UTC (rev 1754)
+++ trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2007-09-21 15:40:05 UTC (rev 1755)
@@ -411,7 +411,6 @@
             logger.debug("Destroying remote service for task "
                     + this.task.getIdentity().toString());
         }
-        gramJob.release();
         gramJob.destroy();
     }
 
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
Revision: 1762
          http://cogkit.svn.sourceforge.net/cogkit/?rev=1762&view=rev
Author:   hategan
Date:     2007-10-01 07:08:23 -0700 (Mon, 01 Oct 2007)
Log Message:
-----------
spurious warning
Modified Paths:
--------------
    trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
Modified: trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
===================================================================
--- trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2007-09-27 16:54:10 UTC (rev 1761)
+++ trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2007-10-01 14:08:23 UTC (rev 1762)
@@ -208,7 +208,7 @@
         else if (soTimeout instanceof String) {
             job.setTimeOut(Integer.parseInt((String) soTimeout));
         }
-        else {
+        else if (soTimeout != null) {
             logger.warn("Unknown value for socketTimeout attribute ("
                     + soTimeout + "). Ignoring.");
         }
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
Revision: 1873
          http://cogkit.svn.sourceforge.net/cogkit/?rev=1873&view=rev
Author:   hategan
Date:     2008-02-05 16:27:11 -0800 (Tue, 05 Feb 2008)
Log Message:
-----------
added a bit more logging
Modified Paths:
--------------
    trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
Modified: trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
===================================================================
--- trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2008-02-04 23:42:54 UTC (rev 1872)
+++ trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2008-02-06 00:27:11 UTC (rev 1873)
@@ -179,10 +179,15 @@
             setMiscJobParams(spec, this.gramJob);
 
             try {
+            	if (logger.isDebugEnabled()) {
+            		logger.debug("Submitting task: " + task);
+            	}
                 this.gramJob.submit(factoryEndpoint, spec.isBatchJob(), spec
                         .getDelegation() == Delegation.LIMITED_DELEGATION,
                         "uuid:" + UUIDGenFactory.getUUIDGen().nextUUID());
-                logger.info("Job submitted");
+                if (logger.isDebugEnabled()) {
+                    logger.debug("Task submitted: " + task);
+                }
                 if (spec.isBatchJob()) {
                     this.task.setStatus(Status.COMPLETED);
                 }
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
Revision: 1891
          http://cogkit.svn.sourceforge.net/cogkit/?rev=1891&view=rev
Author:   hategan
Date:     2008-02-12 09:27:23 -0800 (Tue, 12 Feb 2008)
Log Message:
-----------
added a bit of an extra state
Modified Paths:
--------------
    trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
Modified: trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
===================================================================
--- trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2008-02-12 17:26:21 UTC (rev 1890)
+++ trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2008-02-12 17:27:23 UTC (rev 1891)
@@ -79,6 +79,7 @@
         }
         else {
             this.task = task;
+            task.setStatus(Status.SUBMITTING);
 
             JobDescriptionType rsl;
             JobSpecification spec;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
Revision: 2017
          http://cogkit.svn.sourceforge.net/cogkit/?rev=2017&view=rev
Author:   hategan
Date:     2008-05-13 06:51:34 -0700 (Tue, 13 May 2008)
Log Message:
-----------
a trivial mesasge change
Modified Paths:
--------------
    trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
Modified: trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
===================================================================
--- trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2008-05-13 11:50:51 UTC (rev 2016)
+++ trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2008-05-13 13:51:34 UTC (rev 2017)
@@ -335,7 +335,7 @@
 
         if (FileLocation.LOCAL.overlaps(spec.getExecutableLocation())) {
             throw new IllegalSpecException(
-                    "The gt4.0.0 provider does not support local executables");
+                    "The GT4.0.x provider does not support local executables");
         }
         desc.setExecutable(spec.getExecutable());
 
@@ -364,7 +364,7 @@
             if ("true".equals(AbstractionProperties.getProperties("gt4")
                     .getProperty("fail.on.redirect"))) {
                 throw new IllegalSpecException(
-                        "The gt4.0.0 provider does not support redirection");
+                        "The GT4.0.x provider does not support redirection");
             }
             else {
                 synchronized (JobSubmissionTaskHandler.class) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
Revision: 2066
          http://cogkit.svn.sourceforge.net/cogkit/?rev=2066&view=rev
Author:   b_z_c
Date:     2008-07-15 08:06:14 -0700 (Tue, 15 Jul 2008)
Log Message:
-----------
accept h:m and h:m:s syntax for walltimes
Modified Paths:
--------------
    trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
Modified: trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java
===================================================================
--- trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2008-06-30 16:08:01 UTC (rev 2065)
+++ trunk/current/src/cog/modules/provider-gt4_0_0/src/org/globus/cog/abstraction/impl/execution/gt4_0_0/JobSubmissionTaskHandler.java	2008-07-15 15:06:14 UTC (rev 2066)
@@ -290,8 +290,7 @@
             desc.setMaxTime(new Long(spec.getAttribute("maxTime").toString()));
         }
         if (spec.getAttribute("maxWallTime") != null) {
-            desc.setMaxWallTime(new Long(spec.getAttribute("maxWallTime")
-                    .toString()));
+            desc.setMaxWallTime(wallTimeToMinutes(spec.getAttribute("maxWallTime")));
         }
         if (spec.getAttribute("minMemory") != null) {
             desc.setMinMemory(new NonNegativeInteger(spec.getAttribute(
@@ -486,4 +485,27 @@
         }
         return authorization;
     }
-}
\ No newline at end of file
+
+    /** Takes walltime of the form mm or hh:mm or hh:mm:ss and returns the
+        number of minutes, discarding the seconds. */
+    public static Long wallTimeToMinutes(Object time) {
+	long n;
+        String[] s = time.toString().split(":");
+        try {
+            if (s.length == 1) {
+                n = Integer.parseInt(s[0]);
+            }
+            else if (s.length == 2 || s.length == 3) {
+                n = Integer.parseInt(s[1]) + 60 * Integer.parseInt(s[0]);     
+            }
+            else {
+                throw new IllegalArgumentException("Invalid time specification: " + time);
+            }
+        }
+        catch (NumberFormatException e) {
+            throw new IllegalArgumentException("Invalid time specification: " + time);
+        }
+        return new Long(n);
+    }
+
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 |