Giter Site home page Giter Site logo

Comments (1)

jburos avatar jburos commented on July 24, 2024

Think we figured this out, -- don't think it involves the gc_connector -- but posting here in case someone else encounters this.

Current theory is that two nodes are trying to write to the same file, and when one completes it deletes the ._COPYING_ file, causing an error on the other (or some variation of this is occurring during copying before completion).

The file listing by which we are copying includes directories, so if I run in one process (-j1) to download files to an empty directory i see the following:

Copying: gs://bucket-name/for-msk-bms-lung/downloads/0017a332-c7fd-41ca-8cb9-cd8d81f1cb24 to /datasets/bucket-name/for-msk-bms-lung/downloads/0017a332-c7fd-41ca-8cb9-cd8d81f1cb24 done
Found: /datasets/bucket-name/for-msk-bms-lung/downloads/0017a332-c7fd-41ca-8cb9-cd8d81f1cb24/C508.TCGA-60-2721-11A-01D-1522-08.5_gdc_realn.bai
Found: /datasets/bucket-name/for-msk-bms-lung/downloads/0017a332-c7fd-41ca-8cb9-cd8d81f1cb24/C508.TCGA-60-2721-11A-01D-1522-08.5_gdc_realn.bam
# ...

So it’s copying the directory, then each file or directory within the directory. When this gets parallelized, the files within the directories are then trying to be “copied” by more than one process simultaneously. This gets really messy, particularly when we have several nested directories. The same file might be being copied by several processes at once, and so it's only a matter of time until there's a collision.

After modifying the script to exclude directories, and instead do a -mkdir -p on the dirname for each file listed, we haven't seen any problems yet. Will come back to close this once it's error-free for some time.

from hadoop-connectors.

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.