Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

xrdfs prepare -s crashes if no filename is given #309

Closed
murrayc3 opened this issue Nov 27, 2015 · 0 comments
Closed

xrdfs prepare -s crashes if no filename is given #309

murrayc3 opened this issue Nov 27, 2015 · 0 comments
Assignees

Comments

@murrayc3
Copy link
Contributor

Dear Sir/Madam,

The xrdfs prepare -s command crashes if no filename is given. I would have expected an error message along the lines of Filename missing.

Regards,

Steven Murray

[itdssbuild01] ~ > uname -a
Linux itdssbuild01.cern.ch 2.6.32-504.12.2.el6.x86_64 #1 SMP Thu Mar 12 07:33:00 CET 2015 x86_64 x86_64 x86_64 GNU/Linux
[itdssbuild01] ~ > cat /etc/redhat-release 
Scientific Linux CERN SLC release 6.6 (Carbon)
[itdssbuild01] ~ > rpm -qa | grep xroot
xrootd-server-devel-4.2.3-1.el6.x86_64
xrootd-libs-4.2.3-1.el6.x86_64
xrootd-selinux-4.2.3-1.el6.noarch
xrootd-devel-4.2.3-1.el6.x86_64
xrootd-private-devel-4.2.3-1.el6.noarch
xrootd-server-4.2.3-1.el6.x86_64
xrootd-client-devel-4.2.3-1.el6.x86_64
xrootd-client-libs-4.2.3-1.el6.x86_64
xrootd-python-4.2.3-1.el6.x86_64
xrootd-client-4.2.3-1.el6.x86_64
xrootd-4.2.3-1.el6.x86_64
xrootd-server-libs-4.2.3-1.el6.x86_64
xrootd-debuginfo-4.2.3-1.el6.x86_64
[itdssbuild01] ~ > # Run xrdfs prepare without a filename - should get an error not a crash
[itdssbuild01] ~ > xrdfs localhost prepare -s
terminate called after throwing an instance of 'std::out_of_range'
  what():  basic_string::erase
Aborted (core dumped)
[itdssbuild01] ~ > 
[itdssbuild01] ~ > # Get a stack trace of the crash
[itdssbuild01] ~ > gdb -batch -ex run -ex bt -ex quit --args xrdfs localhost prepare -s
[Thread debugging using libthread_db enabled]
terminate called after throwing an instance of 'std::out_of_range'
  what():  basic_string::erase

Program received signal SIGABRT, Aborted.
0x0000003b30232625 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
64    return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig);
#0  0x0000003b30232625 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x0000003b30233e05 in abort () at abort.c:92
#2  0x0000003b3a6bea7d in __gnu_cxx::__verbose_terminate_handler () at ../../../../libstdc++-v3/libsupc++/vterminate.cc:93
#3  0x0000003b3a6bcbd6 in __cxxabiv1::__terminate (handler=<value optimized out>) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:38
#4  0x0000003b3a6bcc03 in std::terminate () at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48
#5  0x0000003b3a6bcd22 in __cxxabiv1::__cxa_throw (obj=0x625770, tinfo=0x3b3a8e91d0, dest=0x3b3a661670 <std::out_of_range::~out_of_range()>) at ../../../../libstdc++-v3/libsupc++/eh_throw.cc:86
#6  0x0000003b3a661db7 in std::__throw_out_of_range (__s=<value optimized out>) at ../../../../libstdc++-v3/src/functexcept.cc:76
#7  0x00000031bea4ebf9 in _M_check (this=0x624a10, fileList=std::vector of length 0, capacity 0, flags=XrdCl::PrepareFlags::Stage, priority=0 '\000', handler=0x7fffffffdb10, timeout=0) at /usr/include/c++/4.4.7/bits/basic_string.h:309
#8  erase (this=0x624a10, fileList=std::vector of length 0, capacity 0, flags=XrdCl::PrepareFlags::Stage, priority=0 '\000', handler=0x7fffffffdb10, timeout=0) at /usr/include/c++/4.4.7/bits/basic_string.h:1200
#9  XrdCl::FileSystem::Prepare (this=0x624a10, fileList=std::vector of length 0, capacity 0, flags=XrdCl::PrepareFlags::Stage, priority=0 '\000', handler=0x7fffffffdb10, timeout=0) at /usr/src/debug/xrootd-4.2.3/src/XrdCl/XrdClFileSystem.cc:1082
#10 0x00000031bea53cd6 in XrdCl::FileSystem::Prepare (this=0x624a10, fileList=std::vector of length 0, capacity 0, flags=XrdCl::PrepareFlags::Stage, priority=0 '\000', response=@0x7fffffffdc08, timeout=0) at /usr/src/debug/xrootd-4.2.3/src/XrdCl/XrdClFileSystem.cc:1112
#11 0x00000000004088c1 in DoPrepare (fs=0x624a10, env=<value optimized out>, args=<value optimized out>) at /usr/src/debug/xrootd-4.2.3/src/XrdCl/XrdClFS.cc:1104
#12 0x0000000000412f0e in XrdCl::FSExecutor::Execute (this=0x623e80, args=std::vector of length 2, capacity 2 = {...}) at /usr/src/debug/xrootd-4.2.3/src/XrdCl/XrdClFSExecutor.cc:100
#13 0x0000000000408495 in ExecuteCommand (ex=0x623e80, argc=2, argv=<value optimized out>) at /usr/src/debug/xrootd-4.2.3/src/XrdCl/XrdClFS.cc:1605
#14 0x000000000040f4d7 in ExecuteCommand (url=..., argc=2, argv=0x7fffffffe1a8) at /usr/src/debug/xrootd-4.2.3/src/XrdCl/XrdClFS.cc:1797
#15 0x000000000040fbc3 in main (argc=4, argv=0x7fffffffe198) at /usr/src/debug/xrootd-4.2.3/src/XrdCl/XrdClFS.cc:1833
A debugging session is active.

    Inferior 1 [process 6861] will be killed.

Quit anyway? (y or n) [answered Y; input not from terminal]
[itdssbuild01] ~ > 
@simonmichal simonmichal self-assigned this Nov 27, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants