Wolfgang Bumiller
0a33951e9e
acme: new_account: prevent replacing existing accounts
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-10-22 08:35:24 +02:00
Dietmar Maurer
7a356a748a
bump version to 2.0.13-1
...
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
2021-10-21 08:36:41 +02:00
Dietmar Maurer
1c402740a2
update dedian/control
...
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
2021-10-21 07:59:45 +02:00
Dietmar Maurer
e0a19d3313
use new fsync parameter to replace_file and atomic_open_or_create
...
Depend on proxmox 0.15.0 and proxmox-openid 0.8.1
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
2021-10-21 07:28:32 +02:00
Dominik Csapak
6b8329ee34
tape: simplify export_media_set for pool writer
...
our export code can handle if the tape is inside the drive, so unloading
it first does not have an benefit, it even makes the exporting slower,
since we first unload it into its original slot, and then moving it
to an import/export slot
so drop the code that unloads the tape from the drive, and let the
export code itself handle that
change the 'eject' into a 'rewind' and comment why we do that first
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-10-21 06:37:48 +02:00
Dominik Csapak
1d4448998a
rest-server: use hashmap for parameter errors
...
our ui expects a map here with 'field: "error"'. This way it can mark
the relevant field as invalid and correctly shows the complete error
message
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-10-21 06:32:23 +02:00
Dietmar Maurer
d6473f5359
proxmox-rrd: use fsync instead of syncfs
...
syncfs can sync unrelated data, and we do not want that.
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
2021-10-20 11:46:59 +02:00
Dietmar Maurer
f5f9ec81d2
proxmox-rrd: fix regression tests
2021-10-19 18:41:03 +02:00
Dietmar Maurer
fea950155f
proxmox-rrd: improve dev docs
...
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
2021-10-19 11:17:09 +02:00
Dietmar Maurer
ef2944bc24
proxmox-rrd: cleanup - impl FromStr for JournalEntry
...
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
2021-10-19 11:17:09 +02:00
Dietmar Maurer
934c8724e2
proxmox-rrd: add option to avoid page cache for load/save
...
use fadvice(.., POSIX_FADV_DONTNEED) for RRD files. We read those files only once,
and always rewrite them.
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
2021-10-19 11:17:09 +02:00
Dietmar Maurer
98eb435d90
proxmox-rrd: use syncfs after writing rrd files
...
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
2021-10-19 11:17:09 +02:00
Thomas Lamprecht
bd10af6eda
bump version to 2.0.12-1
...
note, this bump happened outside the main branch as it wasn't in a
good state and there was need for bumping (log/task rotate stuff).
Cherry picking the actual bump to avoid changelog/versioning
confusion on the next one, that should again happen on the main
branch.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
(cherry picked from commit edc876c58e )
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-10-19 11:13:06 +02:00
Dietmar Maurer
7f381a6246
proxmox-rrd: use fine grained locking in commit_journal_impl
...
Aquire the rrd_map lock for each file (else we block access for a long time)
2021-10-18 14:55:47 +02:00
Dietmar Maurer
c17fbbbc07
proxmox-rrd: log all errors from apply_and_commit_journal_thread (but only once)
2021-10-18 11:57:19 +02:00
Dominik Csapak
ac2ca6c341
tape: improve export_media error message for not found tape
...
'export_media' can handle if the tape is in either a normal slot of the
library, or in the drive assigned to the current pool writer.
(because we need to lock the drive)
if it is, for some reason, in a different drive, the error message
'media is not online'
could be slightly confusing for a user, since it would appear in the drive list
add the 'or a differen drive' to make it clearer
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-10-18 10:40:56 +02:00
Dietmar Maurer
d26865c52c
proxmox-rrd: cleanup list_old_journals
2021-10-18 10:00:58 +02:00
Dietmar Maurer
2b05008a11
proxmox-rrd: cleanup - use struct instead of tuple
2021-10-16 12:45:03 +02:00
Dietmar Maurer
45700e2ecf
proxmox-rrd: move RRDMap into extra file
2021-10-16 12:45:03 +02:00
Dietmar Maurer
f84304235b
proxmox-rrd: move JournalState into extra file
2021-10-16 12:45:03 +02:00
Dietmar Maurer
0ca41155b2
proxmox-rrd: implement non blocking journal
...
Do not block while applying the journal.
2021-10-16 12:45:03 +02:00
Dietmar Maurer
a291ab59ba
proxmox-rrd: rename RRDCacheState to JournalState
2021-10-15 09:35:44 +02:00
Dietmar Maurer
fce7cd0d36
proxmox-rrd: avoild blocking readers while applying the journal
...
By using and extra RwLock<RRDMap> on the rrd data.
2021-10-15 09:22:07 +02:00
Dietmar Maurer
658357c5a8
proxmox-rrd: log journal apply/flush times, split apply and flush
...
We need to apply the journal only once.
2021-10-15 07:16:41 +02:00
Dietmar Maurer
7484fce24d
proxmox-rrd: cleanup - use slot_end_time()
2021-10-14 16:29:00 +02:00
Dietmar Maurer
f28a713e2b
proxmox-rrd: cleanup - use staturating_add instead of if/else
2021-10-14 16:10:55 +02:00
Dietmar Maurer
a9017805b7
proxmox-rrd: improve dev docs
2021-10-14 11:53:54 +02:00
Dietmar Maurer
2e3f94e12f
proxmox-rrd: make rrd load callback configurable
2021-10-14 11:41:26 +02:00
Dietmar Maurer
d531c7ae61
proxmox-rrd: add more regression tests
2021-10-14 10:55:12 +02:00
Dietmar Maurer
7df1580fa6
proxmox-rrd: add regression tests and two minor fixes
2021-10-14 10:17:07 +02:00
Dietmar Maurer
58f70bccbb
proxmox-rrd: pass time and value to update function
2021-10-14 08:12:56 +02:00
Dietmar Maurer
fae4f6c509
cleanup: move rrd cache related code into extra file
2021-10-14 07:57:27 +02:00
Dietmar Maurer
ddafb28572
proxmox-rrd: add some integration tests (file format tests)
2021-10-13 18:21:23 +02:00
Wolfgang Bumiller
642c7b9915
bump d/control
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-10-13 14:47:24 +02:00
Wolfgang Bumiller
5a8726e6d2
pbs-tools: drop borrow module
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-10-13 14:14:03 +02:00
Dietmar Maurer
b3f279e2d9
use complete_file_name from proxmox-router 1.1
2021-10-13 14:10:02 +02:00
Thomas Lamprecht
82f5ad18f0
proxmox-rrd: move unshipped cli tool to examples
...
it's a rather low-level tool mostly useful for debugging and some of
it is rather "dumb" (by design) anyway, e.g., it does not
transparently applies journal but really only operates on the DB
files as is (which can conflict with daemon operations).
In summary, not (yet) a tool meant for end user consumption.
Move it to examples folder to avoid compilation on packaging (we do
not ship it anyway) which allows us to move the rather expensive
proxmox-router (pulls in hyper) to the dev-dependencies section.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-10-13 13:36:02 +02:00
Dietmar Maurer
bacc99c7f8
proxmox-rrd: add more commands to the rrd cli tool
...
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-10-13 13:36:02 +02:00
Dietmar Maurer
6728d0977b
proxmox-rrd: rename last_counter to last_value
...
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-10-13 13:36:02 +02:00
Dietmar Maurer
bff7c027c9
proxmox-rrd: protect against negative update time
...
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-10-13 13:36:02 +02:00
Dietmar Maurer
79b3113361
proxmox-rrd: new helpers: slot, slot_start_time & slot_end_time
...
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-10-13 13:36:02 +02:00
Dietmar Maurer
5885767b91
proxmox-rrd: avoid expensive modulo (%) inside loop
...
Modulo is very slow, so we try to avoid it inside loops.
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-10-13 13:36:02 +02:00
Dietmar Maurer
ec08247e5c
proxmox-rrd: add binary to create/manage rrd files
...
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-10-13 13:36:02 +02:00
Dietmar Maurer
400f081487
proxmox-rrd: split out load_rrd (cleanup)
...
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-10-13 13:36:02 +02:00
Dietmar Maurer
03664514ab
proxmox-rrd: support CF::Last
...
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-10-13 13:36:02 +02:00
Dietmar Maurer
c68fa58a59
remove proxmox-rrd-api-types crate, s/RRDTimeFrameResolution/RRDTimeFrame/
...
Because the types used inside the RRD have other requirements
than the API types:
- other serialization format
- the API may not support all RRD features
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-10-13 13:36:02 +02:00
Dietmar Maurer
426dda0730
proxmox-rrd: extract_data: include values from current slot
...
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-10-13 13:36:02 +02:00
Dietmar Maurer
eb37d4ece2
proxmox-rrd: remove dependency to proxmox-rrd-api-types
...
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-10-13 13:36:02 +02:00
Dietmar Maurer
1198f8d4e6
proxmox-rrd: implement new CBOR based format
...
Storing much more data points now got get better graphs.
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-10-13 13:36:02 +02:00
Dietmar Maurer
4b709ade68
proxmox-backup-proxy: use tokio::task::spawn_blocking instead of block_in_place
...
allow the current thread to do some other work in-between
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com >
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-10-13 13:36:02 +02:00