ROOT/5.26.00e glibc detected malloc(): smallbin double link

Dear expert and all,

Recently, I got an error on root.

The error is :
*** glibc detected *** /afs/cern.ch/sw/lcg/app/releases/ROOT/5.26.00e_python2.6/x86_64-slc5-gcc43-dbg/root/bin/root.exe: malloc(): smallbin double linked list corrupted: 0x000000002642bb90 ***
======= Backtrace: =========
/lib64/libc.so.6[0x2b2885669afc]
/lib64/libc.so.6(__libc_malloc+0x6e)[0x2b288566ae2e]
/afs/cern.ch/sw/lcg/contrib/gcc/4.3.5/x86_64-slc5-gcc34-opt/lib64/libstdc++.so.6(_Znwm+0x1d)[0x2b2884cfb96d]
/afs/cern.ch/sw/lcg/contrib/gcc/4.3.5/x86_64-slc5-gcc34-opt/lib64/libstdc++.so.6(_Znam+0x9)[0x2b2884cfba89]
/afs/cern.ch/sw/lcg/app/releases/ROOT/5.26.00e_python2.6/x86_64-slc5-gcc43-dbg/root/lib/libTree.so(_ZN6TLeafI10SetAddressEPv+0x1da)[0x2b2888527d44]

Is there any one know the reason?

PS:
When I run my code on more than two root files, this error will happen on the last events of last root files.
But if I only run one root file which the error happened, this will not happen.
I am puzzled so much.

The root I use is:
source /afs/cern.ch/sw/lcg/contrib/gcc/4.3/x86_64-slc5-gcc43-opt/setup.sh
export ROOTSYS=/afs/cern.ch/sw/lcg/app/releases/ROOT/5.26.00e_python2.6/x86_64-slc5-gcc43-dbg/root
export PATH=/afs/cern.ch/sw/lcg/external/Python/2.5.4p2/x86_64-slc5-gcc43-opt/bin:ROOTSYS/bin:{PATH}
export LD_LIBRARY_PATH=ROOTSYS/lib:/afs/cern.ch/sw/lcg/external/Python/2.5.4p2/x86_64-slc5-gcc43-opt/lib:{LD_LIBRARY_PATH}
export PYTHONPATH=$PYTHONPATH:$ROOTSYS/lib

Thank you very much for you to pay attention.
RootError.txt (19 KB)

[quote]Is there any one know the reason?[/quote]This type of errors can have many causes, it is likely an access to a previously deleted area of memory but this error message does not (can not) tell us which one.

I recommend that you try again with a newer version of ROOT (in case it was a deficiency in this old version of ROOT) or run your example with valgrind which should be able to pin-point the memory error.

Cheers,
Philippe.

Hi Philippe,

I have got the reason.
When I run my code in the local place of lxplus with the same root files and order, I can run it successfully.

So I guess, [color=#FF0000]this caused by the access of the EOS/color.
In order to make sure, I ask my friend to do this also. And he found that if he read files from EOS, this error also happened.

So thanks for your hint. :smiley:

Cheers,
Liming

[quote=“pcanal”][quote]Is there any one know the reason?[/quote]This type of errors can have many causes, it is likely an access to a previously deleted area of memory but this error message does not (can not) tell us which one.

I recommend that you try again with a newer version of ROOT (in case it was a deficiency in this old version of ROOT) or run your example with valgrind which should be able to pin-point the memory error.

Cheers,
Philippe.[/quote]