After upgrading our servers to xrootd 4.8.0, a python exception started to be thrown as per the title, whereas the same client code did not throw any exceptions with xrootd 4.7 and earlier versions.
A way to reproduce the issue is:
from XRootD import client as XrdClient
fs = XrdClient.FileSystem('root://your-favourite-xrootd-server')
status, resp = fs.query(QueryCode.OPAQUE, "/boguspath")
And the output is:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib64/python2.6/site-packages/XRootD/client/filesystem.py", line 141, in query
status, response = self.__fs.query(querycode, arg, timeout)
SystemError: bad format char passed to Py_BuildValue
(while it should be "The server answered with an error")
With @simonmichal we tried some combinations and it appears as the bug was there already before 4.8, but it is somehow exposed only now. The reason for this is that if a valid path (e.g. "/tmp"
) is passed to fs.query()
, then the same exception is thrown also by an older xrootd server.
To be noted that we see this on CASTOR by issuing a query handled by fsctl()
on the server side.
(For reference, the CASTOR Jira issue is at https://its.cern.ch/jira/browse/CASTOR-5501, but a CERN account is needed to see it. All relevant information has been reported here though).
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.
Use REPLY-ALL to reply to list
To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1