Permission/string parsing issue when using TChain to add eos files shared by others, only under gcc8/cc7

Hello, ROOT experts!

I encountered a strange issue that’s I didn’t see with ** root 6.08.06-HiggsComb-x86_64-slc6-gcc49-opt**

I tried with two environment setups, both reproduced the issue:

setupATLAS
lsetup “root 6.16.00-x86_64-centos7-gcc8-opt”

source /cvmfs/sft.cern.ch/lcg/releases/ROOT/6.16.00-42022/x86_64-centos7-gcc8-opt/bin/thisroot.sh

So, I tried to access someone’s file which is shared to me:

  1. I can access the file with TFile::Open
  2. I tried TChain::Add and TChain::AddFile, they don’t work. with error. The name somehow got truncated in the error output perhaps.

Error in <TNetXNGFile::Open>: [ERROR] Server responded with an error: [3011] Unable to open file /eos/user/a/angabrie/TEST/v20mEpsilon/mc16a/Nominal/mc16_13TeV.345060.PowhegPythia8EvtGen_NNLOP; No such file or directory

  1. I tried copied the file to my eos space, the function TChain::Add works fine!

Here’s a demo code that reproduces problem for me, for you you might need to change the address, and make your own copy to reproduce the problem: demo.C (1011 Bytes)

Here I have a copy that’s shared to all user at CERN: /eos/user/r/rowang/public/mc16_13TeV.345060.PowhegPythia8EvtGen_NNLOPS_nnlo_30_ggH125_ZZ4l.root

Let me know if you cannot access it.

Thanks!
Rongkun


ROOT Version: 6.16.00
Platform: CentOS Linux release 7.6.1810 (Core) (lxplus7)
Compiler: gcc 8.2.0-3fa06


Hi,

a bit of update.

I can reproduce the issue on slc6, with

setupATLAS; lsetup “root 6.14.04-x86_64-slc6-gcc62-opt”

but there’s no problem under

setupATLAS; lsetup “root 6.12.06-x86_64-slc6-gcc62-opt”

Is there anyone looking into this?

Hi Rongkun - Sorry for the late reply!

So a couple of observations:

  • This seems to be caused by EOS / TNetXNGFile, right? @ganis might have some insights here.
  • You have picked up source /cvmfs/sft.cern.ch/lcg/releases/ROOT/6.16.00-42022/x86_64-centos7-gcc8-opt/bin/thisroot.sh from an LCG release - you’re missing the libraries that this was built against. (@jcervant how do we set that up again?) You can try with the stand-alone builds on CentOS7, e.g. from $ . /cvmfs/sft.cern.ch/lcg/app/releases/ROOT/6.16.00/x86_64-centos7-gcc48-opt/bin/thisroot.sh (note the “/app/” part in that directory).

Let us know if the latter helped!

Axel.

Hi Alex,

Thanks for your reply!

I’ve then the following two and they don’t work
source /cvmfs/sft.cern.ch/lcg/app/releases/ROOT/6.16.00/x86_64-centos7-gcc48-opt/bin/thisroot.sh
source /cvmfs/sft.cern.ch/lcg/app/releases/ROOT/6.14.04/x86_64-centos7-gcc48-opt/root/bin/thisroot.sh

but this one work:
source /cvmfs/sft.cern.ch/lcg/app/releases/ROOT/6.12.06/x86_64-centos7-gcc48-opt/root/bin/thisroot.sh

I have given public access to all CERN user for this file:
/eos/user/r/rowang/public/mc16_13TeV.345060.PowhegPythia8EvtGen_NNLOPS_nnlo_30_ggH125_ZZ4l.root

so it should be easy to reproduce the problem with the demo

Cheers,
Rongkun

OK thanks, that’s useful info. @ganis any hints? Could an issue through a newer Xrootd version be the cause?

Hi,

Unfortunately I did not manage to reproduce the problem. I did not manage to open the file

/eos/user/a/angabrie/TEST/v20mEpsilon//mc16a//Nominal/mc16_13TeV.345060.PowhegPythia8EvtGen_NNLOPS_nnlo_30_ggH125_ZZ4l.root

from my ATLAS (group zp) account with any of the version mentioned. I have tried to use ‘setupATLAS; lsetup’ and the versions under /cvmfs/sft.cern.ch/lcg/app/releases/ROOT/.

I always get this:

lxplus081:~ $ export XrdSecDEBUG=2
lxplus081:~ $ root -b
   ------------------------------------------------------------
  | Welcome to ROOT 6.12/06                http://root.cern.ch |
  |                               (c) 1995-2017, The ROOT Team |
  | Built for linuxx8664gcc                                    |
  | From tag v6-12-06, 9 February 2018                         |
  | Try '.help', '.demo', '.license', '.credits', '.quit'/'.q' |
   ------------------------------------------------------------

root [0] auto f = TFile::Open("root://eosuser.cern.ch//eos/user/a/angabrie/TEST/v20mEpsilon//mc16a//Nominal/mc16_13TeV.345060.PowhegPythia8EvtGen_NNLOPS_nnlo_30_ggH125_ZZ4l.root")
sec_Client: protocol request for host eosuser.cern.ch token='&P=krb5,xrootd/eoshome.cern.ch@CERN.CH&P=gsi,v:10300,c:ssl,ca:5168735f.0|4339b4bc.0&P=unix&P=sss,0.13:/etc/eos.keytab'
sec_PM: Loaded krb5 protocol object from libXrdSeckrb5.so
sec_PM: Using krb5 protocol, args='xrootd/eoshome.cern.ch@CERN.CH'
Seckrb5: getCredentials
Seckrb5: context lock
Seckrb5: context locked
Seckrb5: FILE:/tmp/krb5cc_2759_b7LQym
Seckrb5: init context
Seckrb5: cc set default name
Seckrb5: cc default
Seckrb5: Returned 4128 bytes of creds; p=xrootd/eoshome.cern.ch@CERN.CH
sec_Client: protocol request for host eoshome-a.cern.ch token='&P=krb5,xrootd/eoshome.cern.ch@CERN.CH&P=gsi,v:10300,c:ssl,ca:5168735f.0|4339b4bc.0&P=unix&P=sss,0.13:/etc/eos.keytab'
sec_PM: Using krb5 protocol, args='xrootd/eoshome.cern.ch@CERN.CH'
Seckrb5: getCredentials
Seckrb5: context lock
Seckrb5: context locked
Seckrb5: FILE:/tmp/krb5cc_2759_b7LQym
Seckrb5: init context
Seckrb5: cc set default name
Seckrb5: cc default
Seckrb5: Returned 4128 bytes of creds; p=xrootd/eoshome.cern.ch@CERN.CH
Error in <TNetXNGFile::Open>: [ERROR] Server responded with an error: [3010] Unable to open file /eos/user/a/angabrie/TEST/v20mEpsilon/mc16a/Nominal/mc16_13TeV.345060.PowhegPythia8EvtGen_NNLOPS_nnlo_30_ggH125_ZZ4l.root; Operation not permitted

(TFile *) nullptr
root [1] auto f = TFile::Open("/eos/user/a/angabrie/TEST/v20mEpsilon//mc16a//Nominal/mc16_13TeV.345060.PowhegPythia8EvtGen_NNLOPS_nnlo_30_ggH125_ZZ4l.root")
ROOT_prompt_1:1:6: error: redefinition of 'f'
auto f = TFile::Open("/eos/user/a/angabrie/TEST/v20mEpsilon//mc16a//Nominal/mc16_13TeV.345060.PowhegPythia8EvtGen_NNLOPS_nnlo_30_ggH125_ZZ4l.root")
     ^
ROOT_prompt_0:1:6: note: previous definition is here
auto f = TFile::Open("root://eosuser.cern.ch//eos/user/a/angabrie/TEST/v20mEpsilon//mc16a//Nominal/mc16_13TeV.345060.PowhegPythia8EvtGen_NNLOPS_nnlo_30_ggH125_ZZ4l.root")
     ^
root [2] .q

or this:

lxplus081:~ $ root -b
   ------------------------------------------------------------
  | Welcome to ROOT 6.08/06                http://root.cern.ch |
  |                               (c) 1995-2016, The ROOT Team |
  | Built for linuxx8664gcc                                    |
  | From tag v6-08-06, 2 March 2017                            |
  | Try '.help', '.demo', '.license', '.credits', '.quit'/'.q' |
   ------------------------------------------------------------

root [0] auto f = TFile::Open("/eos/user/a/angabrie/TEST/v20mEpsilon//mc16a//Nominal/mc16_13TeV.345060.PowhegPythia8EvtGen_NNLOPS_nnlo_30_ggH125_ZZ4l.root")
Error in <TFile::TFile>: no read permission, could not open file /eos/user/a/angabrie/TEST/v20mEpsilon//mc16a//Nominal/mc16_13TeV.345060.PowhegPythia8EvtGen_NNLOPS_nnlo_30_ggH125_ZZ4l.root
(TFile *) nullptr

Are you sure you were able to open the file with old versions?

Because even trying to copy the file on the shell fails:

 $ cp -rp /eos/user/a/angabrie/TEST/v20mEpsilon//mc16a//Nominal/mc16_13TeV.345060.PowhegPythia8EvtGen_NNLOPS_nnlo_30_ggH125_ZZ4l.root .
cp: cannot open '/eos/user/a/angabrie/TEST/v20mEpsilon//mc16a//Nominal/mc16_13TeV.345060.PowhegPythia8EvtGen_NNLOPS_nnlo_30_ggH125_ZZ4l.root' for reading: Operation not permitted

So, this looks a problem with EOS settings. Can you ask angabrie to move the file under /eos/user/a/angabrie/public and see what happens?

G Ganis

Hello Ganis,

Thanks a lot for your reply.

I’m sorry I didn’t make it clear in the original demo file I was trying to access a file other people gave me access. I copied my file to my space and share to all lxplus user in group sharing and asked a friend to help me, but they cannot reproduce the issue. ( file is /eos/user/r/rowang/public/mc16_13TeV.345060.PowhegPythia8EvtGen_NNLOPS_nnlo_30_ggH125_ZZ4l.root )
Not sure if sharing to group will differ from sharing to private for this…

even angabrie has reproduced the issues with my new macro here now demo.C (2.1 KB)

So the macro now is reproducing two issues and issue 1 is root version sensitive and is what we’re discussing about (not sure if those two are related)

In order to better help you, I can ask angabrie to give you access because copying/moving the file might cause us not being able to reproduce it. What is your lxplus username?

Best, Rongkun

Hi,

My ATLAS account is gganis.

G Ganis

Hi, should be this account, right?

You’ve given the access.

image

Hello ganis,

we cannot found gganis in cernbox, so we went for ganis instead and it does has two g in the name :slight_smile:

Did you succeed in reproducing the bug?

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.