Index: /trunk/Ohana/src/opihi/pcontrol/CheckBusyJob.c
===================================================================
--- /trunk/Ohana/src/opihi/pcontrol/CheckBusyJob.c	(revision 10658)
+++ /trunk/Ohana/src/opihi/pcontrol/CheckBusyJob.c	(revision 10659)
@@ -36,4 +36,10 @@
 
     case PCLIENT_HUNG:
+      // don't do anything drastic, just keep trying
+      if (VerboseMode()) gprint (GP_ERR, "client is busy, not responding");
+      FreeIOBuffer (&buffer);
+      return (TRUE);
+
+# if (0)      
       HarvestHost (host[0].pid);
       // unlink host & job
@@ -44,4 +50,5 @@
       FreeIOBuffer (&buffer);
       return (TRUE);
+# endif
 
     case PCLIENT_GOOD:
Index: /trunk/Ohana/src/opihi/pcontrol/CheckDoneHost.c
===================================================================
--- /trunk/Ohana/src/opihi/pcontrol/CheckDoneHost.c	(revision 10658)
+++ /trunk/Ohana/src/opihi/pcontrol/CheckDoneHost.c	(revision 10659)
@@ -26,6 +26,6 @@
 
     case PCLIENT_HUNG:
-      // XXX should this be DONE or DOWN?/
-      PutHost (host, PCONTROL_HOST_DONE, STACK_BOTTOM);
+      // don't do anything drastic, just try again later
+      PutHost (host, PCONTROL_HOST_BUSY, STACK_BOTTOM);
       if (DEBUG || VerboseMode()) gprint (GP_ERR, "host %s is not responding\n", host[0].hostname);
       FreeIOBuffer (&buffer);
Index: /trunk/Ohana/src/opihi/pcontrol/KillJob.c
===================================================================
--- /trunk/Ohana/src/opihi/pcontrol/KillJob.c	(revision 10658)
+++ /trunk/Ohana/src/opihi/pcontrol/KillJob.c	(revision 10659)
@@ -30,4 +30,10 @@
 
     case PCLIENT_HUNG:
+      // don't do anything drastic, just keep trying
+      if (VerboseMode()) gprint (GP_ERR, "client is busy, not responding");
+      FreeIOBuffer (&buffer);
+      return (TRUE);
+
+# if (0)
       HarvestHost (host[0].pid);
       // unlink host & job
@@ -38,4 +44,5 @@
       FreeIOBuffer (&buffer);
       return (TRUE);
+# endif
 
     case PCLIENT_GOOD:
Index: /trunk/Ohana/src/opihi/pcontrol/ResetJob.c
===================================================================
--- /trunk/Ohana/src/opihi/pcontrol/ResetJob.c	(revision 10658)
+++ /trunk/Ohana/src/opihi/pcontrol/ResetJob.c	(revision 10659)
@@ -32,5 +32,5 @@
     case PCLIENT_HUNG:
       /*** should we consider a HUNG host DOWN? ***/
-      gprint (GP_ERR, "host %s is not responding\n", host[0].hostname);
+      gprint (GP_ERR, "host %s is not responding (ResetJob)\n", host[0].hostname);
       FreeIOBuffer (&buffer);
       return (FALSE);
Index: /trunk/Ohana/src/opihi/pcontrol/StartJob.c
===================================================================
--- /trunk/Ohana/src/opihi/pcontrol/StartJob.c	(revision 10658)
+++ /trunk/Ohana/src/opihi/pcontrol/StartJob.c	(revision 10659)
@@ -38,4 +38,7 @@
 
     case PCLIENT_HUNG:
+      // we need the job start to return a valid Job ID, 
+      // give up on jobs which don't get started.
+      gprint (GP_ERR, "host %s is not responding (StartJob)\n", host[0].hostname);
       if (VerboseMode()) gprint (GP_ERR, "host %s is not responding\n", host[0].hostname);
       goto failure;
