- BSOCK *ua; /* User agent */
- JOB *job; /* Job resource */
- STORE *store; /* Storage resource */
- CLIENT *client; /* Client resource */
- POOL *pool; /* Pool resource */
- FILESET *fileset; /* FileSet resource */
- CAT *catalog; /* Catalog resource */
- MSGS *messages; /* Default message handler */
- uint32_t SDJobFiles; /* Number of files written, this job */
- uint64_t SDJobBytes; /* Number of bytes processed this job */
- uint32_t SDErrors; /* Number of non-fatal errors */
- volatile int SDJobStatus; /* Storage Job Status */
- volatile int FDJobStatus; /* File daemon Job Status */
- B_DB *db; /* database pointer */
- uint32_t MediaId; /* DB record IDs associated with this job */
- uint32_t PoolId; /* Pool record id */
- FileId_t FileId; /* Last file id inserted */
- uint32_t FileIndex; /* Last FileIndex processed */
- POOLMEM *fname; /* name to put into catalog */
- int fn_printed; /* printed filename */
- POOLMEM *stime; /* start time for incremental/differential */
- JOB_DBR jr; /* Job record in Database */
- uint32_t RestoreJobId; /* Id specified by UA */
- POOLMEM *client_uname; /* client uname */
- int replace; /* Replace option */
+ BSOCK *ua; /* User agent */
+ JOB *job; /* Job resource */
+ JOB *verify_job; /* Job resource of verify previous job */
+ alist *rstorage; /* Read storage possibilities */
+ STORE *rstore; /* Selected read storage */
+ alist *wstorage; /* Write storage possibilities */
+ STORE *wstore; /* Selected write storage */
+ CLIENT *client; /* Client resource */
+ POOL *pool; /* Pool resource = write for migration */
+ POOL *rpool; /* Read pool. Used only in migration */
+ POOL *full_pool; /* Full backup pool resource */
+ POOL *inc_pool; /* Incremental backup pool resource */
+ POOL *diff_pool; /* Differential backup pool resource */
+ bool run_pool_override;
+ bool run_full_pool_override;
+ bool run_inc_pool_override;
+ bool run_diff_pool_override;
+ FILESET *fileset; /* FileSet resource */
+ CAT *catalog; /* Catalog resource */
+ MSGS *messages; /* Default message handler */
+ uint32_t SDJobFiles; /* Number of files written, this job */
+ uint64_t SDJobBytes; /* Number of bytes processed this job */
+ uint32_t SDErrors; /* Number of non-fatal errors */
+ volatile int SDJobStatus; /* Storage Job Status */
+ volatile int FDJobStatus; /* File daemon Job Status */
+ uint32_t ExpectedFiles; /* Expected restore files */
+ uint32_t MediaId; /* DB record IDs associated with this job */
+ FileId_t FileId; /* Last file id inserted */
+ uint32_t FileIndex; /* Last FileIndex processed */
+ POOLMEM *fname; /* name to put into catalog */
+ JOB_DBR jr; /* Job DB record for current job */
+ JOB_DBR previous_jr; /* previous job database record */
+ JOB *previous_job; /* Job resource of migration previous job */
+ JCR *mig_jcr; /* JCR for migration/copy job */
+ char FSCreateTime[MAX_TIME_LENGTH]; /* FileSet CreateTime as returned from DB */
+ char since[MAX_TIME_LENGTH]; /* since time */
+ union {
+ JobId_t RestoreJobId; /* Id specified by UA */
+ JobId_t MigrateJobId;
+ };
+ POOLMEM *client_uname; /* client uname */
+ POOLMEM *pool_source; /* Where pool came from */
+ POOLMEM *rpool_source; /* Where migrate read pool came from */
+ POOLMEM *rstore_source; /* Where read storage came from */
+ POOLMEM *wstore_source; /* Where write storage came from */
+ int replace; /* Replace option */
+ int NumVols; /* Number of Volume used in pool */
+ int reschedule_count; /* Number of times rescheduled */
+ bool spool_data; /* Spool data in SD */