[pbs-devel] [PATCH proxmox-backup v3 0/9] improve syncjob handling
Dominik Csapak
d.csapak at proxmox.com
Thu Aug 13 10:29:12 CEST 2020
by saving the state in a separate file instead of parsing the task log
should be faster and more correct, since we cannot phase out
the last sync if too many tasks are started
we have to do the same for all other tasks that can be scheduled
changes from v2:
* change upid_read_status to also return the endtime (parsed from the log)
* use wrapper struct that holds the state and a lock (Job)
* use that wrapper to hold the lock from loading until the worker is finshed
* better comments and documentation
* squashed commits for schedules
* polling the abort_future in do_sync_jobs worker
* fix a bug in 8/9 (Proxmox.Utils vs Promxox.Utils)
changes from v1:
* rebase on master (new Userid struct)
* use an enum instead of a struct for jobstate since it
better represents what we want
(this way we do not have to save the starttime twice for example)
* add an enum for TaskState and use that (instead of strings)
(by doing this we can better parse the state for the syncview)
* incorporate dietmar suggestsions
* refactor do_sync_job first and extend after that
* improve the state display in the gui
* make some columsn smaller in the gui
Dominik Csapak (9):
server: change status of a task from a string to an enum
server/worker_task: let upid_read_status also return the endtime
config: add JobState helper
api2/admin/sync: use JobState for faster access to state info
api/{pull,sync}: refactor to do_sync_job
api2/pull: extend do_sync_job to also handle schedule and jobstate
syncjob: use do_sync_job also for scheduled sync jobs
ui: syncjob: improve task text rendering
ui: syncjob: make some columns smaller
src/api2/admin/sync.rs | 76 ++++------
src/api2/config/sync.rs | 2 +
src/api2/node/tasks.rs | 8 +-
src/api2/pull.rs | 66 ++++++++
src/api2/types/mod.rs | 2 +-
src/bin/proxmox-backup-api.rs | 1 +
src/bin/proxmox-backup-proxy.rs | 83 ++--------
src/config.rs | 1 +
src/config/jobstate.rs | 258 ++++++++++++++++++++++++++++++++
src/server/worker_task.rs | 111 ++++++++++----
www/config/SyncView.js | 30 +++-
11 files changed, 482 insertions(+), 156 deletions(-)
create mode 100644 src/config/jobstate.rs
--
2.20.1
More information about the pbs-devel
mailing list