Code Monkey home page Code Monkey logo

Comments (3)

ncw avatar ncw commented on June 2, 2024

Thanks for reporting this, it does look like a bug. And thank you for your excellent log and analysis.

The problem seems to be in the re-open code

First failure

Reopening on read failure after offset 20766346465 bytes: retry 1/10: unexpected EOF

Reopens with range request - looks good

Range: bytes=20766346465-72200451298

Second failure

Reopening on read failure after offset 21662613633 bytes: retry 2/10: ... i/o timeout

Reopens with incorrect range request - should clearly start from 21662613633 as per the log

Range: bytes=20766346465-72200451298

Third failure

Reopening on read failure after offset 34544399248 bytes: retry 3/10: ... i/o timeout

Re-opens with the same incorrect range request

Range: bytes=20766346465-72200451298

I can reproduce this by patching the dropbox backend to return errors every 1000 bytes.

I've managed to fix this I think.

It turned out to be quite a subtle bug and I think it has caused a lot of issues with rclone downloading too much data over the years.

Please give this a go

v1.67.0-beta.7869.a97c790b8.fix-7759-dropbox-retry on branch fix-7759-dropbox-retry (uploaded in 15-30 mins)

from rclone.

janvostry avatar janvostry commented on June 2, 2024

I can confirm the bug is fixed: rclone now requests the correct ranges.
I also checked the hash on the Backblaze via the unpatched release of rclone and it matched with the hash that Dropbox has.

Thank you very much for the quick fix. 👍

from rclone.

ncw avatar ncw commented on June 2, 2024

I've merged this to master now which means it will be in the latest beta in 15-30 minutes and released in v1.67 and I'll put it in the upcoming v1.66.1 also.

Thanks for tracking this down - I think this has been a problem in rclone for some time and I'm very glad to fix it.

from rclone.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.