mirror of
https://github.com/upa/mscp.git
synced 2026-02-27 10:44:41 +08:00
fix error handling when scan thread failed.
set chunk pool to fill to invoke copy threads when scan failed.
This commit is contained in:
@@ -427,16 +427,14 @@ void *mscp_scan_thread(void *arg)
|
|||||||
list_splice_tail(&tmp, m->path_list.prev);
|
list_splice_tail(&tmp, m->path_list.prev);
|
||||||
}
|
}
|
||||||
|
|
||||||
chunk_pool_set_filled(&m->cp);
|
|
||||||
|
|
||||||
mpr_info(m->msg_fp, "walk source path(s) done\n");
|
mpr_info(m->msg_fp, "walk source path(s) done\n");
|
||||||
|
chunk_pool_set_filled(&m->cp);
|
||||||
m->ret_scan = 0;
|
m->ret_scan = 0;
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
err_out:
|
err_out:
|
||||||
|
chunk_pool_set_filled(&m->cp);
|
||||||
m->ret_scan = -1;
|
m->ret_scan = -1;
|
||||||
mscp_stop_copy_thread(m);
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -61,6 +61,11 @@ def test_single_copy(mscp, src_prefix, dst_prefix, src, dst):
|
|||||||
src.cleanup()
|
src.cleanup()
|
||||||
dst.cleanup()
|
dst.cleanup()
|
||||||
|
|
||||||
|
@pytest.mark.parametrize("src_prefix, dst_prefix", param_remote_prefix)
|
||||||
|
def test_failed_to_copy_nonexistent_file(mscp, src_prefix, dst_prefix):
|
||||||
|
src = "nonexistent_src"
|
||||||
|
dst = "nonexistent_dst"
|
||||||
|
run2ng([mscp, "-H", src_prefix + src, dst_prefix + dst])
|
||||||
|
|
||||||
param_double_copy = [
|
param_double_copy = [
|
||||||
(File("src1", size = 1024 * 1024), File("src2", size = 1024 * 1024),
|
(File("src1", size = 1024 * 1024), File("src2", size = 1024 * 1024),
|
||||||
|
|||||||
Reference in New Issue
Block a user