Cyberduck Mountain Duck CLI

#9944 closed defect (fixed)

Resume does not skip completed parts

Reported by: TheBashar Owned by: dkocher
Priority: normal Milestone: 6.0.1
Component: b2 Version: Nightly Build
Severity: major Keywords:
Cc: Architecture:
Platform:

Description

I filed an earlier bug about upload resume being broken for B2 in the 6.0.0 release. That was marked fixed in 6.0.1, thank you! I downloaded the 6.0.1 beta and retested. It is better but still very problematic. I started an upload of a 376MB file using 2 upload connections. I stopped the upload just after 350MB. Since Cyberduck says it uses 100MB chunks, I expected it to resume at 300MB (or less ideally 200MB). Instead, upon resume, it started back at only 76MB complete. It looks like it chunked, sent the remainder chunk first(?), and then lost all the preceding chunks.

Attachments (4)

cd1.jpg (159.5 KB) - added by TheBashar on May 19, 2017 at 5:47:52 AM.
Uploaded 350MB with 2 connections
cd2.jpg (151.8 KB) - added by TheBashar on May 19, 2017 at 5:48:26 AM.
Stopped transfer after 350MB
cd3.jpg (131.8 KB) - added by TheBashar on May 19, 2017 at 5:49:00 AM.
Can see partial upload, though no size shown
cd4.jpg (169.1 KB) - added by TheBashar on May 19, 2017 at 5:49:21 AM.
Resume started back at 76MB

Download all attachments as: .zip

Change History (14)

comment:1 Changed on May 18, 2017 at 7:13:16 PM by dkocher

Referring to #9935.

comment:2 Changed on May 18, 2017 at 7:24:43 PM by dkocher

  • Milestone set to 6.0.1
  • Owner set to dkocher
  • Status changed from new to assigned

comment:3 Changed on May 18, 2017 at 8:48:36 PM by dkocher

I suspect you had multiple incomplete large file uploads pending for the same file. You can view unfinished large uploads in the browser by choosing View → Show Hidden Files.

comment:4 Changed on May 18, 2017 at 8:55:55 PM by dkocher

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

Add test in r40989.

Changed on May 19, 2017 at 5:47:52 AM by TheBashar

Uploaded 350MB with 2 connections

Changed on May 19, 2017 at 5:48:26 AM by TheBashar

Stopped transfer after 350MB

Changed on May 19, 2017 at 5:49:00 AM by TheBashar

Can see partial upload, though no size shown

Changed on May 19, 2017 at 5:49:21 AM by TheBashar

Resume started back at 76MB

comment:5 follow-up: Changed on May 19, 2017 at 5:50:47 AM by TheBashar

  • Resolution worksforme deleted
  • Status changed from closed to reopened

I am so sorry. Please be patient with me. I just retested and had exactly the same result. I was uploading a 376MB file using 2 upload connections. I stopped @ 350MB. I resumed and the resume started at 76MB. Mathematically there is no way using 100MB chunks that 350MB could have been transferred and only the single 76MB dwarf chunk was completed.

The documentation says chunking is activated when a file is greater than 200MB and it uses 100MB chunks. Is there a chance the documentation is wrong and you are using 200MB chunks? That could cause the observed result.

comment:6 in reply to: ↑ 5 Changed on May 19, 2017 at 7:45:33 AM by dkocher

  • Status changed from reopened to new

Replying to TheBashar:

The documentation says chunking is activated when a file is greater than 200MB and it uses 100MB chunks. Is there a chance the documentation is wrong and you are using 200MB chunks? That could cause the observed result.

I can confirm these are the current defaults.

comment:7 Changed on May 19, 2017 at 8:15:58 AM by TheBashar

Same test but with a 425MB file. Upload stopped at 410MB. Upload resumed at just 25MB.

comment:8 Changed on May 22, 2017 at 2:34:33 PM by dkocher

  • Summary changed from Resume Upload Mostly Broken for B2 on 6.0.1 to Resume does not skip completed parts

comment:9 Changed on May 30, 2017 at 7:36:18 AM by dkocher

  • Milestone changed from 6.0.1 to 7.0

Ticket retargeted after milestone closed

comment:10 Changed on May 30, 2017 at 11:52:55 AM by dkocher

  • Milestone changed from 7.0 to 6.0.1
  • Resolution set to fixed
  • Status changed from new to closed

Possible fix in r41167 to make sure we always take the last started upload.

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