Uploaded image for project: 'StoRM'
  1. StoRM
  2. STOR-501

StoRM Backend fails to map the correct VFS when storage-area accesspoints are nested

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Critical Critical
    • 1.11.4
    • 1.11.3
    • backend
    • Security Level: Public (Visbile by non-authn users.)
    • None

      If we have the following SAs:

      FS ROOT ACCESSPOINT VO
      TESTERSEUEMIEU_FS /storage/testers.eu-emi.eu /testers.eu-emi.eu testers.eu-emi.eu
      VIANELLO_FS /storage/vianello /testers.eu-emi.eu/vianello testers.eu-emi.eu

      on two hosts:

      • StoRM 1.11.2 = omii004-vm03
      • StoRM 1.11.3 = omii004-vm02

      with the following file on both hosts:

      1. touch /storage/vianello/sono_in_vianello.txt
      2. chown -R storm:storm /storage/vianello/*

      launch:

      lcg-ls -Dsrmv2 -b -l 'srm://omii004-vm03.cnaf.infn.it:8444/srm/managerv2?SFN=/testers.eu-emi.eu/vianello
      /testers.eu-emi.eu/vianello: [SE][Ls][SRM_INVALID_PATH] No such file or directory
      
      lcg-ls -Dsrmv2 -b -l 'srm://omii004-vm02.cnaf.infn.it:8444/srm/managerv2?SFN=/testers.eu-emi.eu/vianello
      /testers.eu-emi.eu/vianello: [SE][Ls][SRM_INVALID_PATH] No such file or directory
      

      It retrieves SRM_INVALID_PATH because the mappend VFS is TESTERSEUEMIEU_FS instead of VIANELLO_FS. In fact, when the stfn doesn't end with a slash the last segment is removed before computing the mapped VFS. And this is the problem.

      Using the ending slash all works:

      $ lcg-ls -Dsrmv2 -b -l 'srm://omii004-vm03.cnaf.infn.it:8444/srm/managerv2?SFN=/testers.eu-emi.eu/vianello/'
      -r--------   1     2     2       0               ONLINE /testers.eu-emi.eu/vianello/sono_in_vianello.txt
      
      $ lcg-ls -Dsrmv2 -b -l 'srm://omii004-vm02.cnaf.infn.it:8444/srm/managerv2?SFN=/testers.eu-emi.eu/vianello/'
      -r--------   1     2     2       0               ONLINE /testers.eu-emi.eu/vianello/sono_in_vianello.txt
      

      If we create a directory named vianello into testers.eu-emi.eu and a test file as follow:

      # touch /storage/testers.eu-emi.eu/vianello/sono_in_testerseuemieu.txt
      # chown -R storm:storm /storage/testers.eu-emi.eu/*
      

      the test doesn't fail but:

      [vianello@omii006-vm02 ~]$ lcg-ls -Dsrmv2 -b -l 'srm://omii004-vm02.cnaf.infn.it:8444/srm/managerv2?SFN=/testers.eu-emi.eu/vianello'
      -r--------   1     2     2       0               ONLINE /testers.eu-emi.eu/vianello/sono_in_testerseuemieu.txt
      [vianello@omii006-vm02 ~]$ lcg-ls -Dsrmv2 -b -l 'srm://omii004-vm03.cnaf.infn.it:8444/srm/managerv2?SFN=/testers.eu-emi.eu/vianello'
      -r--------   1     2     2       0               ONLINE /testers.eu-emi.eu/vianello/sono_in_testerseuemieu.txt
      

      the mapped VFS is wrong!

            Unassigned Unassigned
            vianello Enrico Vianello
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: