Don't re-create/unlink write file for append workload
[fio.git] / init.c
diff --git a/init.c b/init.c
index 6a65e552fc71fb0a793a4c0d0385145696e02d09..9b0666d74e5651aa566dbae890715e644c62acc7 100644 (file)
--- a/init.c
+++ b/init.c
@@ -676,6 +676,11 @@ static int fixup_options(struct thread_data *td)
        if (td->o.rand_seed)
                td->o.rand_repeatable = 0;
 
+       if ((td->io_ops->flags & FIO_NOEXTEND) && td->o.file_append) {
+               log_err("fio: can't append/extent with IO engine %s\n", td->io_ops->name);
+               ret = 1;
+       }
+
        return ret;
 }
 
@@ -1026,10 +1031,10 @@ static int add_job(struct thread_data *td, const char *jobname, int job_add_num,
                file_alloced = 1;
 
                if (o->nr_files == 1 && exists_and_not_file(jobname))
-                       add_file(td, jobname, job_add_num);
+                       add_file(td, jobname, job_add_num, 0);
                else {
                        for (i = 0; i < o->nr_files; i++)
-                               add_file(td, make_filename(fname, o, jobname, job_add_num, i), job_add_num);
+                               add_file(td, make_filename(fname, o, jobname, job_add_num, i), job_add_num, 0);
                }
        }