Alain Spineux [Wed, 14 Feb 2024 10:10:30 +0000 (11:10 +0100)]
add bVarEstimate to let the FD knows this is an estimate and not a real backup
- some plugin need to know that this is an "estimate" command and not
a "run" to not activate snapshot, mount, .......
- the winbmr plugin can avoid the collection of information and
the mount of recovery operation.
Alain Spineux [Fri, 15 Mar 2024 15:27:26 +0000 (16:27 +0100)]
could: Fix 10788 cloud volume deletion crash
- the problem is about iterating up to including parts.last_index()
using parts.get(parts.last_index()) is a mistake !!!
it works most of the time because most of the time this value is NULL
and the code does a continue
BUT when parts.last_index() == parts.max_size(), then
parts.get(parts.last_index()) is out of the allocated memory and can
contain garbage
- why is the code doing a "continue" ? Is it expected to have a NULL ?
in the list ?
in clean_cloud_volume_read_cb() that fill the list, there is no raison
to have NULL ?
With the bug, testing for NULL will save us 99% of the time
Without the bug we can reach 100% :-)
Alain Spineux [Thu, 14 Mar 2024 13:33:07 +0000 (14:33 +0100)]
Only normal backup jobs can become "Incomplete", MAC must return errors
- jcr->sd_client is set when the SD is acting as a client from the point
of view of the control job that is "restoring" the job up
to the other SD. It is set only for SD <-> SD
- The control job as a different cr->getJobType()
FROM
JobId Level Files Bytes Status Finished Name
====================================================================
1 Full 3,087 49.77 M OK 13-Mar-24 16:49 MigrationJobSave
2 Full 795 5.900 M Error 13-Mar-24 16:49 migrate-job
3 Full 795 5.900 M Incomplete 13-Mar-24 16:49 MigrationJobSave
TO
1 Full 3,087 49.77 M OK 14-Mar-24 19:25 MigrationJobSave
2 Full 795 5.900 M Error 14-Mar-24 19:26 migrate-job
3 Full 795 5.900 M Error 14-Mar-24 19:26 MigrationJobSave
Alain Spineux [Mon, 19 Feb 2024 10:28:33 +0000 (11:28 +0100)]
Fix org#2706 Volume encryption force RSA:2048 instead of gpg default
- the key-manager installation script was getting
gpg: key generation failed: Unknown elliptic curve
on ArchLinux when using GPG default.
- Now use RSA:2048
Eric Bollengier [Wed, 14 Feb 2024 07:54:45 +0000 (08:54 +0100)]
Enable Device/SyncOnClose by default
After a crash, the last block of a volume might not be flushed properly. Using
SyncOnClose should ensure that a job marked as T in the catalog is properly
stored on disk.
Eric Bollengier [Tue, 26 Sep 2023 15:06:37 +0000 (17:06 +0200)]
Fix #10401 About issue when truncating immutable volume
- The protection time was not set in with the immutability flag
- The information message for immutability has now the retention time
- The errno checked in open_device was ACCESS instead of PERM
Alain Spineux [Thu, 18 Jan 2024 13:24:12 +0000 (14:24 +0100)]
Fix #10631 (1) remove unauthorized Jmsg() in BSOCK::recv()
- Jmsg() cannot be used in some critical part, recv() is on of them
A Qmsg() and Pmsg() follow the removed Jmsg(), no information are lost
- This is probably not the root cause of the #10631 problem
- Replace the invalid Unicode "Registered Trade Mark" char
norbert.bizet [Fri, 15 Dec 2023 10:02:58 +0000 (05:02 -0500)]
cloud storage: Fix #10291 Assume that driver ls can return an error when scanning an unexistant cloud volume and loosen the conditions that handle this case
Alain Spineux [Tue, 28 Nov 2023 15:57:19 +0000 (16:57 +0100)]
Fix and improve BSR cycle detection and resolution
- the offset of the first split was not initialized and sometime was
a huge value that was forcing the fist split to the ALL BSR
ather split where ignored as soon as the EOF of the BSR was reached
It was possible that the BSR was handle in one BIG buggy part
instead of being handled in smaller healty parts!
- I have fully reworked the code:
- two regress script test the two possible reason for the split
- Arnaud's backup can be successfully restored with the new code
- The debugging message describe very well what is appening
use level 20 or 100 on the dir for medium or full debugging