Cyberduck Mountain Duck CLI

#9488 closed defect (worksforme)

Transfer incomplete when change permissions checked for uploads

Reported by: rblaa Owned by: dkocher
Priority: normal Milestone: 5.0
Component: s3 Version: 4.9.3
Severity: normal Keywords: transfer incmplete
Cc: rblaak@… Architecture: Intel
Platform: Mac OS X 10.11

Description (last modified by dkocher)

this happens with my mac, as long as i try have checked the box to change the permissions of the uploaded files, either to that of the local file and directory, or to something explicit.

if I uncheck the permissions preference, the upload works, but I have to use the AWS console itself to change permissions to make my upload public. this means that my user account does in fact have the rights to change permissions.

unfortunately the logs do not show anything useful, with the 5.0 snapshot I see only:

2016-04-25 17:10:22.901 Cyberduck[92702]: [main] WARN  ch.cyberduck.core.threading.ThreadPoolFactory - No matching constructor for parameter class ch.cyberduck.core.threading.LoggingUncaughtExceptionHandler

it looks like the true exception is being prevented from being logged due to this

Attachments (1)

run.log (22.1 KB) - added by rblaa on May 4, 2016 at 5:22:36 PM.

Download all attachments as: .zip

Change History (10)

comment:1 Changed on Apr 26, 2016 at 8:11:38 AM by dkocher

  • Description modified (diff)

comment:2 Changed on Apr 26, 2016 at 8:14:27 AM by dkocher

  • Component changed from core to s3
  • Milestone set to 5.0
  • Owner set to dkocher
  • Summary changed from cannot upload any file, get "transfer incomplete" to Transfer incomplete when change permissions checked for uploads

comment:3 Changed on Apr 26, 2016 at 8:17:10 AM by dkocher

Please post the transcript from the log drawer of the Transfers window. Choose ⌘-L on Mac or right-click the toolbar from the Transfers window and choose Log on Windows

comment:4 Changed on Apr 27, 2016 at 5:17:18 PM by rblaa

Unfortunately the log drawer seems blank, even with debug logging enabled.

I notice though that a few files do succeed in being uploaded, it seems to stop on the 2nd file in the first sub directory I am uploading.

comment:5 Changed on May 4, 2016 at 8:32:28 AM by dkocher

Can you please open the log drawer of the Transfers window prior starting the transfer and then post the output here.

Changed on May 4, 2016 at 5:22:36 PM by rblaa

comment:6 Changed on May 4, 2016 at 5:23:57 PM by rblaa

I just attached a run log. I am running the latest version for MacOS, Version 5.0 (19930)

I hope the log is helpful, I could not see anything that stood out.

My previous examination of the internal logs seemed to indicate an exception during error handling, which could be making the error not be logged properly.

comment:7 Changed on May 4, 2016 at 6:20:01 PM by dkocher

Your account is missing permission to read the existing ACL for the bucket.

GET /?acl HTTP/1.1
Date: Wed, 04 May 2016 17:19:28 GMT
x-amz-request-payer: requester
x-amz-content-sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Host: tribecashortlistassets.s3.amazonaws.com
x-amz-date: 20160504T171928Z
Authorization: AWS4-HMAC-SHA256 Credential=AKIAIETGPTQA5OBUYQUQ/20160504/us-east-1/s3/aws4_request,SignedHeaders=date;host;x-amz-content-sha256;x-amz-date;x-amz-request-payer,Signature=bb36abfad3f94d5ae5cf302676560d717f3a89d09dc112973613636c2705c1ce
Connection: Keep-Alive
User-Agent: Cyberduck/5.0.19930 (Mac OS X/10.11.4) (x86_64)
HTTP/1.1 403 Forbidden
x-amz-request-id: C8E9763740B6DEE0
x-amz-id-2: kyVW/6P1rzKT+TjBrNf7ik4FDVnTxjKJLh2x/82DEkeGGyUdCiL27t6oTfZmygYt
Content-Type: application/xml
Transfer-Encoding: chunked
Date: Wed, 04 May 2016 17:19:27 GMT
Server: AmazonS3

comment:8 follow-up: Changed on May 4, 2016 at 8:52:22 PM by rblaa

Ok, thanks. I will try and followup to see if my account's permissions can be improved.

It occurs to me however that since I am requesting that my transfers unilaterally set the permissions to public, shouldn't Cyberduck be fixed to tolerate this case? I.e. it doesn't need to query the ACL, only set it to public.

It turns out that I have upload permission to a subfolder only of my S3 bucket, just not the /. Since I upload only to that subfolder, maybe the ACL for / does not need to be queried in this case.

What's funny is that when I set things to inherit the permission, the ACL is not queried. You would think it would need to be then, more so than when I am setting things to be unilaterally public.

comment:9 in reply to: ↑ 8 Changed on May 23, 2016 at 7:11:39 PM by dkocher

  • Resolution set to worksforme
  • Status changed from new to closed

Replying to rblaa:

Ok, thanks. I will try and followup to see if my account's permissions can be improved.

It occurs to me however that since I am requesting that my transfers unilaterally set the permissions to public, shouldn't Cyberduck be fixed to tolerate this case? I.e. it doesn't need to query the ACL, only set it to public.

We need to query the ACL to find the account owner ID which is required in the ACL when setting.

Note: See TracTickets for help on using tickets.
swiss made software