Attachment included.
Jean-Louis
Jean-Louis Martineau wrote:
I can't find why it flush nothing.
Can you upgrade to latest SVN and try the attached patch, it add mode
degugging.
Add 'debug-driver 1' in amanda.conf
Retry amflush and send me the resulting amflush.1 file.
Jean-Louis
Stefan G. Weichinger wrote:
Am 21.09.2010 00:09, schrieb Jean-Louis Martineau:
Can you provide the complete amflush.1 or amdump.1 files
attached.
Stefan
diff --git a/server-src/driver.c b/server-src/driver.c
index 6182ee0..ea66006 100644
--- a/server-src/driver.c
+++ b/server-src/driver.c
@@ -3735,18 +3735,30 @@ tape_action(
}
}
if (nb_taper_active >= 1) {
- my_flush_threshold_dumped = flush_threshold_dumped +
- (nb_taper_active-nb_taper_active) * tape_length;
- my_flush_threshold_scheduled = flush_threshold_scheduled +
- (nb_taper_active-nb_taper_active) * tape_length;
- my_taperflush = taperflush + (nb_taper_active-nb_taper_active) * tape_length;
+ my_flush_threshold_dumped = flush_threshold_dumped;
+ my_flush_threshold_scheduled = flush_threshold_scheduled;
+ my_taperflush = taperflush;
} else {
- my_flush_threshold_dumped = flush_threshold_dumped +
- nb_taper_active * tape_length;
- my_flush_threshold_scheduled = flush_threshold_scheduled +
- nb_taper_active * tape_length;
- my_taperflush = taperflush + nb_taper_active * tape_length;
- }
+ my_flush_threshold_dumped = flush_threshold_dumped +
+ nb_taper_active * tape_length;
+ my_flush_threshold_scheduled = flush_threshold_scheduled +
+ nb_taper_active * tape_length;
+ my_taperflush = taperflush + nb_taper_active * tape_length;
+ }
+
+ driver_debug(1, _("nb_taper_active: %d\n"), nb_taper_active);
+ driver_debug(1, _("my_flush_threshold_dumped: %lld\n"), (long long)my_flush_threshold_dumped);
+ driver_debug(1, _("my_flush_threshold_scheduled: %lld\n"), (long long)my_flush_threshold_scheduled);
+ driver_debug(1, _("my_taperflush: %lld\n"), (long long)my_taperflush);
+ driver_debug(1, _("taper state: %d\n"), taper->state);
+ driver_debug(1, _("taper_nb_scan_volume state: %d\n"), taper_nb_scan_volume);
+ driver_debug(1, _("degraded_mode: %d\n"), degraded_mode);
+ driver_debug(1, _("runq: %d\n"), empty(runq));
+ driver_debug(1, _("directq: %d\n"), empty(directq));
+ driver_debug(1, _("roomq: %d\n"), empty(roomq));
+ driver_debug(1, _("idle_reason: %d\n"), idle_reason);
+ driver_debug(1, _("degraded_mode: %d\n"), degraded_mode);
+ driver_debug(1, _("force_flush: %d\n"), force_flush);
// Changing conditionals can produce a driver hang, take care.
//