Follow-up to Issue #173 in gluex_root_analysis: double free or corruption

19 views
Skip to first unread message

Edmundo Barriga

unread,
Jul 25, 2024, 2:07:46 PM7/25/24
to GlueX Software Help
Hello,

I am posting this on behalf of Daniel who just posted the steps to reproduce the error when creating a flat tree from a DSelector: issue

Here are the steps he took:

When unboxing a DSelector to produce flat trees I receive this error:
'double free or corruption'

Changes made the new, unchanged, DSelector created from 2018-08 version 23 root file:
Remove entry for 'dOutputFilename'
Assign name to 'dFlatTreeFileName'
Assign name to 'dFlatTreeName'
Uncommented 'Fill_FlatTree()'

Is there anything else he or Rick could provide to help debugging this error?

Richard Jones

unread,
Jul 27, 2024, 2:41:17 PM7/27/24
to Edmundo Barriga, GlueX Software Help
Edmundo,

Based on this description, I have no clue how to reproduce the error. Here is what I need:
  • a directory somewhere on the work disk at the lab
  • all of the files present in that directory needed to reproduce the error
  • instructions for commands to type to reproduce the error and what I should look for
-Richard Jones

--
You received this message because you are subscribed to the Google Groups "GlueX Software Help" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gluex-softwar...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gluex-software/91a1a627-2a6c-4b95-91bd-90ac63cd3879n%40googlegroups.com.

Daniel Barton

unread,
Jul 29, 2024, 4:41:57 PM7/29/24
to GlueX Software Help
Hello Richard,

I've created a test directory and put the necessary files inside.  Follow these steps to recreate the error:

Navigate to:
/work/halld/home/dbarton/gluex/dselectors/forRichardJones/

While in that directory run these commands:
1. gxclean
2. gxenv
3. source runDSelectorINTERACTIVE.csh

Normally this process outputs an file: pi0kplamb_flat_2018_08_TEST.root

However, currently it crashes with this error: double free or corruption (!prev)

The error can be found here:
/work/halld/home/dbarton/gluex/dselectors/forRichardJones/tmp/w-halld-scshelf2101-gluex-dselectors-forRichardJones/last-lite-session/worker-0.0-ifarm2402.jlab.org-1722282557-2077878.log

NOTE: If you get "command not found" after running "gxclean" or "gxenv" above, try sourcing this first:

source /group/halld/Software/build_scripts/gluex_env_boot_jlab.csh

Then run steps 1, 2, 3 again.

____________________________________________________________________________________________________________

If you'd like to see the "normal" behavior here is our current workaround:

Source a previous GlueX environment with these commands:
1. gxclean 2. gxenv /group/halld/www/halldweb/html/halld_versions/version_5.18.3.xml
3. source runDSelectorINTERACTIVE.csh

This correctly produces the output file (in the same directory): pi0kplamb_flat_2018_08_TEST.root

Let me know if all this works.  I'm free to hop on a Zoom if there's any trouble.

Cheers,  Daniel

Richard Jones

unread,
Jul 30, 2024, 12:29:05 PM7/30/24
to Daniel Barton, GlueX Software Help
Hello Edmundo, Daniel, and all,

A new PR has been posted to gluex_root_analysis on github that fixes a double-free in DTreeInterface.h header source.Thanks to Edmundo who originally reported this bug, and Daniel who create a simple demo showing the bug. The bug was introduced in my earlier fix to this same header, in a part of the code that was not tested by Alexander's original example (see issue 156). The conclusion is, any parts of the code that are not covered by the tests should be assumed to be unreliable. Edmundo and Daniel, please verify that this fix does it for you.

-Richard Jones

Reply all
Reply to author
Forward
0 new messages