Print

Print


As reported in #488 it has been observed that xrootd client double deletes an incoming response.

I copy paste the memcheck output from: https://github.com/cms-sw/cmssw/issues/14952#issuecomment-243616732

> ==77755==    by 0x96546AC1: (anonymous namespace)::SocketCallBack::Event(XrdSys::IOEvents::Channel*, void*, int) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdCl/XrdClPollerBuiltIn.cc:82)
> ==77755==    by 0x9665805E: XrdSys::IOEvents::Poller::CbkXeq(XrdSys::IOEvents::Channel*, int, int, char const*) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdSys/XrdSysIOEvents.cc:692)
> ==77755==    by 0x96659242: XrdSys::IOEvents::PollE::Dispatch(XrdSys::IOEvents::Channel*, unsigned int) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/./XrdSys/XrdSysIOEventsPollE.icc:270)
> ==77755==    by 0x966593EF: XrdSys::IOEvents::PollE::Begin(XrdSysSemaphore*, int&, char const**) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/./XrdSys/XrdSysIOEventsPollE.icc:225)
> ==77755==    by 0x96655A8C: XrdSys::IOEvents::BootStrap::Start(void*) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdSys/XrdSysIOEvents.cc:131)
> ==77755==    by 0x96654646: XrdSysThread_Xeq (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdSys/XrdSysPthread.cc:86)
> ==77755==    by 0x3249A07AA0: start_thread (in /lib64/libpthread-2.12.so)
> ==77755==    by 0x3248EE8AAC: clone (in /lib64/libc-2.12.so)
> ==77755==
> ==77755== Invalid write of size 8
> ==77755==    at 0x9656EE96: ~Message (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/./XrdCl/XrdClMessage.hh:45)
> ==77755==    by 0x9656EE96: ~Message (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/./XrdCl/XrdClMessage.hh:45)
> ==77755==    by 0x9656EE96: ~auto_ptr (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/slc6_amd64_gcc530/external/gcc/5.3.0/include/c++/5.3.0/backward/auto_ptr.h:170)
> ==77755==    by 0x9656EE96: XrdCl::XRootDMsgHandler::Process(XrdCl::Message*) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdCl/XrdClXRootDMsgHandler.cc:353)
> ==77755==    by 0x96550389: XrdCl::Stream::HandleIncMsgJob::Run(void*) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/./XrdCl/XrdClStream.hh:279)
> ==77755==    by 0x965B4471: XrdCl::JobManager::RunJobs() (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdCl/XrdClJobManager.cc:148)
> ==77755==    by 0x965B4678: RunRunnerThread (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdCl/XrdClJobManager.cc:33)
> ==77755==    by 0x3249A07AA0: start_thread (in /lib64/libpthread-2.12.so)
> ==77755==    by 0x3248EE8AAC: clone (in /lib64/libc-2.12.so)
> ==77755==  Address 0x2e091870 is 0 bytes inside a block of size 48 free'd
> ==77755==    at 0x4028134: operator delete(void*) (in /cvmfs/cms.cern.ch/slc6_amd64_gcc530/external/valgrind/3.11.0/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==77755==    by 0x9655108E: ~Message (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/./XrdCl/XrdClMessage.hh:45)
> ==77755==    by 0x9655108E: XrdCl::XRootDTransport::MessageReceived(XrdCl::Message*, unsigned short, unsigned short, XrdCl::AnyObject&) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdCl/XrdClXRootDTransport.cc:1053)
> ==77755==    by 0x9654F24F: XrdCl::Stream::OnIncoming(unsigned short, XrdCl::Message*, unsigned int) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdCl/XrdClStream.cc:421)
> ==77755==    by 0x965AF84C: XrdCl::AsyncSocketHandler::OnRead() (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdCl/XrdClAsyncSocketHandler.cc:592)
> ==77755==    by 0x965B012E: XrdCl::AsyncSocketHandler::Event(unsigned char, XrdCl::Socket*) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdCl/XrdClAsyncSocketHandler.cc:225)
> ==77755==    by 0x96546AC1: (anonymous namespace)::SocketCallBack::Event(XrdSys::IOEvents::Channel*, void*, int) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdCl/XrdClPollerBuiltIn.cc:82)
> ==77755==    by 0x9665805E: XrdSys::IOEvents::Poller::CbkXeq(XrdSys::IOEvents::Channel*, int, int, char const*) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdSys/XrdSysIOEvents.cc:692)
> ==77755==    by 0x96659242: XrdSys::IOEvents::PollE::Dispatch(XrdSys::IOEvents::Channel*, unsigned int) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/./XrdSys/XrdSysIOEventsPollE.icc:270)
> ==77755==    by 0x966593EF: XrdSys::IOEvents::PollE::Begin(XrdSysSemaphore*, int&, char const**) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/./XrdSys/XrdSysIOEventsPollE.icc:225)
> ==77755==    by 0x96655A8C: XrdSys::IOEvents::BootStrap::Start(void*) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdSys/XrdSysIOEvents.cc:131)
> ==77755==    by 0x96654646: XrdSysThread_Xeq (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdSys/XrdSysPthread.cc:86)
> ==77755==    by 0x3249A07AA0: start_thread (in /lib64/libpthread-2.12.so)
> ==77755==    by 0x3248EE8AAC: clone (in /lib64/libc-2.12.so)
> ==77755==  Block was alloc'd at
> ==77755==    at 0x4027108: operator new(unsigned long) (in /cvmfs/cms.cern.ch/slc6_amd64_gcc530/external/valgrind/3.11.0/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==77755==    by 0x965AF990: XrdCl::AsyncSocketHandler::OnRead() (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdCl/XrdClAsyncSocketHandler.cc:513)
> ==77755==    by 0x965B012E: XrdCl::AsyncSocketHandler::Event(unsigned char, XrdCl::Socket*) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdCl/XrdClAsyncSocketHandler.cc:225)
> ==77755==    by 0x96546AC1: (anonymous namespace)::SocketCallBack::Event(XrdSys::IOEvents::Channel*, void*, int) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdCl/XrdClPollerBuiltIn.cc:82)
> ==77755==    by 0x9665805E: XrdSys::IOEvents::Poller::CbkXeq(XrdSys::IOEvents::Channel*, int, int, char const*) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdSys/XrdSysIOEvents.cc:692)
> ==77755==    by 0x96659242: XrdSys::IOEvents::PollE::Dispatch(XrdSys::IOEvents::Channel*, unsigned int) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/./XrdSys/XrdSysIOEventsPollE.icc:270)
> ==77755==    by 0x966593EF: XrdSys::IOEvents::PollE::Begin(XrdSysSemaphore*, int&, char const**) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/./XrdSys/XrdSysIOEventsPollE.icc:225)
> ==77755==    by 0x96655A8C: XrdSys::IOEvents::BootStrap::Start(void*) (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdSys/XrdSysIOEvents.cc:131)
> ==77755==    by 0x96654646: XrdSysThread_Xeq (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/BUILD/slc6_amd64_gcc530/external/xrootd/4.3.0-giojec/xrootd-4.3.0/src/XrdSys/XrdSysPthread.cc:86)
> ==77755==    by 0x3249A07AA0: start_thread (in /lib64/libpthread-2.12.so)
> ==77755==    by 0x3248EE8AAC: clone (in /lib64/libc-2.12.so)
> ==77755==
> ==77755== Invalid read of size 8
> ==77755==    at 0x9656EE99: _M_data (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/slc6_amd64_gcc530/external/gcc/5.3.0/include/c++/5.3.0/bits/basic_string.h:2691)
> ==77755==    by 0x9656EE99: _M_rep (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/slc6_amd64_gcc530/external/gcc/5.3.0/include/c++/5.3.0/bits/basic_string.h:2699)
> ==77755==    by 0x9656EE99: ~basic_string (/build/cmsbuild/auto-builds/CMSSW_8_1_0_pre11-slc6_amd64_gcc530/build/CMSSW_8_1_0_pre11-build/slc6_amd64_gcc530/external/gcc/5.3.0/include/c++/5.3.0/bits/basic_string.h:2945)

It seems that a response message travels along two code paths:
- standard code path for handling responses
- a code path for a response for whom the request has been timed-out






-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/xrootd/xrootd/issues/499

########################################################################
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