HumanCellAtlas / dcp-cli

DEPRECATED - HCA Data Coordination Platform Command Line Interface
https://hca.readthedocs.io/
MIT License
6 stars 8 forks source link

Add symbolic links as alternative to hard links #520

Open hannes-ucsc opened 4 years ago

hannes-ucsc commented 4 years ago

Potential improvements on top of the mere bug fix for #519:

Add a --link-method {hard|soft|copy},... command line argument and implement the soft method using symbolic links.

The default should be --link-method=hard. To try hard links first and then fall back to copies, the user would specify --link-method=hard,copy.

Any errors that occur during the actual linking should cause a diagnostic message to be printed that alerts the user of the --link-method option.

hannes-ucsc commented 4 years ago

I think there currently is some code that looks at st_nlink. That logic would be thrown off by alternating between hard and soft method. Switching between hard and copy or soft and copy should be fine.

Consider persisting the link method in the filestore so that the problematic transitions can be prevented.

Note that changing the filestore format should require bumping the filestore version. If we don't bump the version, filestores created by older CLI releases would break the release that includes this feature and vice versa.