My incremental job uses the same parameters as the full, and it fails on
glacier/deep because duplicity tries to pull the remote manifest and
can't retrieve it - here's what I run:

duplicity /mnt/backup/src boto3+s3://BUCKETNAME/FOLDERNAME 
--file-prefix-archive archive-$(hostna
me -f)- --file-prefix-manifest manifest-$(hostname -f)- --file-prefix-signature 
signature-$(hostname -f)- --s3-use-deep-archive

...and here's the output:
Synchronizing remote metadata to local cache...
Copying 
signature-backup.HOSTNAME.com-duplicity-full-signatures.20200830T050003Z.sigtar.gpg
 to local cache.
Attempt 1 failed. ClientError: An error occurred (InvalidObjectState) when 
calling the GetObject operation: The operation is not valid for the object's 
storage class

It tries 4 more attempts and then fails completely.

I'm still not following the logic here anyways - wouldn't it be better
to store the signature files as as a standard class file, and allow the
metadata sync to proceed as usual...rather than just disabling metadata
sync for non-standard storage classes?  The implementation seems to be
inconsistent across AWS storage classes, and I can't get incrementals to
work at all with glacier deep.

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to duplicity in Ubuntu.
https://bugs.launchpad.net/bugs/1875937

Title:
  Download of vol1 in validate_encryption_settings() fails when using S3
  glacier

Status in Duplicity:
  Fix Released
Status in duplicity package in Ubuntu:
  Fix Committed

Bug description:
  Duplicity version: 0.8.12.1612
  ubuntu 20.04 LTS
  python 3.8.2

  When i try to restart a backup which goes to S3 (via boto3) (use of:
  --s3-use-deep-archive or --s3-use-glacier) it fails:

  Last full backup date: Wed Apr 29 17:45:32 2020
  RESTART: Volumes 2 to 2 failed to upload before termination.
           Restarting backup at volume 2.
  Attempt 1 failed. ClientError: An error occurred (InvalidObjectState) when 
calling the GetObject operation: The operation is not valid for the object's 
storage class
  Attempt 2 failed. ClientError: An error occurred (InvalidObjectState) when 
calling the GetObject operation: The operation is not valid for the object's 
storage class

  This is because a file stored in glacier cannot be downloaded. I dont
  know if this known?

  To solve this: either skip validate_encryption_settings() when using
  any of this storage backends or introduce an option to skip the
  download manually (e.g. --skip-download-on-restart)

  I fixed it for me with manully skipping the
  validate_encryption_settings() function.

To manage notifications about this bug go to:
https://bugs.launchpad.net/duplicity/+bug/1875937/+subscriptions

-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : desktop-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to