Hi Rhys,

It's a bug, can you try the attached patch?

Jean-Louis

Rhys Rhaven wrote:
Using amanda 3.2.0 on everything. I have 2 hosts and a server currently. 1 host and the server are ubuntu 10.04 and the other host (that I'm having issues with) is 8.04.

I can run amdump for each host individually with no problem. Running amdump for the config (daily) will fail with the following. Talking to djmitche in IRC, told me to post to the list. My tapes are 200GB, so they shouldn't be filling up. I'm using vtapes and no holding disks.

FAILURE DUMP SUMMARY:
  asterisk-it0.mydomain.com / RESULTS MISSING
  asterisk-it0.mydomain.com / lev 1  FAILED [can't dump in degraded mode]
diff --git a/client-src/sendbackup-gnutar.c b/client-src/sendbackup-gnutar.c
index 3b718ae..5e423c7 100644
--- a/client-src/sendbackup-gnutar.c
+++ b/client-src/sendbackup-gnutar.c
@@ -575,6 +575,7 @@ start_backup(
 	    g_ptr_array_add(argv_ptr, stralloc("."));
 	}
 	    g_ptr_array_add(argv_ptr, NULL);
+sleep(16);
 	dumppid = pipespawnv(cmd, STDIN_PIPE, 0,
 			     &dumpin, &dumpout, &mesgf,
 			     (char **)argv_ptr->pdata);
diff --git a/client-src/sendbackup.c b/client-src/sendbackup.c
index dacb961..80bc5e6 100644
--- a/client-src/sendbackup.c
+++ b/client-src/sendbackup.c
@@ -652,6 +652,7 @@ main(
 	    } else {
 		safe_fd(3, 1);
 	    }
+sleep(16);
 	    execve(cmd, (char **)argv_ptr->pdata, safe_env());
 	    exit(1);
 	    break;
diff --git a/server-src/driver.c b/server-src/driver.c
index 9a0bb27..8bf5119 100644
--- a/server-src/driver.c
+++ b/server-src/driver.c
@@ -1044,6 +1044,7 @@ allow_dump_dle(
 		enqueue_disk(&directq, diskp);
 		diskp->to_holdingdisk = HOLD_NEVER;
 	    }
+	    if (empty(*rq)) force_flush = 1;
 	}
     } else if (client_constrained(diskp)) {
 	free_assignedhd(holdp);
@@ -1326,6 +1327,7 @@ start_some_dumps(
 		dumper_cmd(dumper, PORT_DUMP, diskp, NULL);
 	    }
 	    diskp->host->start_t = now + 15;
+	    if (empty(*rq)) force_flush = 1;
 
 	    if (result_argv)
 		g_strfreev(result_argv);
@@ -3137,6 +3139,7 @@ read_schedule(
 	log_add(L_WARNING, _("WARNING: got empty schedule from planner"));
     if(need_degraded==1) start_degraded_mode(&runq);
     schedule_done = 1;
+    if (empty(runq)) force_flush = 1;
     start_some_dumps(&runq);
     startaflush();
 }

Reply via email to