]> git.ipfire.org Git - thirdparty/bacula.git/commitdiff
Fix bvfs-restore-test on MySQL with many files
authorEric Bollengier <eric@baculasystems.com>
Mon, 26 Oct 2020 09:13:44 +0000 (10:13 +0100)
committerEric Bollengier <eric@baculasystems.com>
Thu, 24 Mar 2022 08:02:58 +0000 (09:02 +0100)
bacula/src/cats/bvfs.c
bacula/src/cats/sql_cmds.c

index 985e504ddcae392750a7ad652793cbb20079deff..723748c457d99517c4dae42dfc1e7bf58e27039d 100644 (file)
@@ -1218,7 +1218,7 @@ void build_ls_files_query(BDB *db, POOL_MEM &query,
    } else {
       Mmsg(query, sql_bvfs_list_files[db->bdb_get_type_index()],
            JobId, PathId, JobId, PathId,
-           limit, offset, filter, JobId, JobId);
+           filter, JobId, JobId, limit, offset);
    }
 }
 
index 8248f6954dad5a6422ae808d63088e7b15b56963..e3d388e7a5309095ab849138c3de46e05fa307bb 100644 (file)
@@ -775,7 +775,6 @@ static const char *sql_bvfs_list_files_default =
                "JOIN Job  ON    (BaseJobId = Job.JobId) "
          "WHERE BaseFiles.JobId IN (%s)   AND PathId = %s "
        ") AS tmp GROUP BY PathId, Filename "
-     "LIMIT %lld OFFSET %lld"
     ") AS T "
 "WHERE T.JobTDate = Job.JobTDate "
   "AND Job.JobId = File.JobId "
@@ -786,7 +785,8 @@ static const char *sql_bvfs_list_files_default =
   " %s "                     /* AND Name LIKE '' */
   "AND (Job.JobId IN ( "
         "SELECT DISTINCT BaseJobId FROM BaseFiles WHERE JobId IN (%s)) "
-       "OR Job.JobId IN (%s)) ";
+       "OR Job.JobId IN (%s)) "
+   "LIMIT %lld OFFSET %lld";
 
 const char *sql_bvfs_list_files[] = {
    /* MySQL */