Skip to content

EGRID website

Sections
Personal tools
You are here: Home » Software » ELFI » Wiki » Replica Management: ``cp`` vs ``ln``
Views

Problem description

Current ELFI code prescribes the use of ln for creating additional replicas (SURLs?) of existing LFNs?, while cp must be used to copy&register a Grid-file under a new Logical File Name.

Objections have been raised that this is counter-intuitive and is not coherent with the rest of the filesystem metaphor that underlies ELFI's approach to Grid storage. In particular:

  • The cp command acts in a non-uniform way:

    # this works and registers a new LFN
    cp SE1/logical/file/name SE2/other/logical/file/name
    
    # this does not work!
    cp SE1/logical/file/name SE2/logical/file/name
    

    One would expect that cp creates a replica of /logical/file/name in the second case.

    Same for ln:

    # this works and creates a replica
    ln LFC/lfn SE2/lfn
    
    # this does not work!
    ln LFC/lfn1 LFC/lfn2
    

    It is highly confusing that commands fail in one case and work in the other (especially when they work in both cases on any local fs).

  • The ln command reverses the metaphor: on the UNIX fs the following code:

    # local UNIX fs
    ln /file1 /file2
    

    will produce files that share the same physical content location; that is, modifying one file's content will instantly yield the same change to the other file's content.

    Whereas on ELFI:

    # ELFI
    ln LFC/lfn SE/lfn
    

    creates a new SURL (physical location); two different replicas do not share content -- indeed, replicas are different files with the same name! That is, the reverse of what's on local UNIX fs...

Proposed solution

Copying from one SE to another, preserving LFN will create a replica:

# create new replica on SE2
cp SE1/lfn SE2/lfn

Fail ln with ENOTSUP ("Operation not supported").


 

Powered by Plone

This site conforms to the following standards: