-
Notifications
You must be signed in to change notification settings - Fork 22
Open
Labels
DefectA bug in an existing feature that should workA bug in an existing feature that should work
Description
Dear all,
I tried to compile the 1.5.0 version of Cymetric on Ubuntu 16.04. I get "Segmentation fault (core dumped)" when trying to run it. Running "nosetests -w tests/" gives me "src/tcmalloc.cc:278] Attempt to free invalid pointer 0x3331e80 Aborted (core dumped)".
~/.local/lib/python2.7/site-packages/cymetric contains:
brightlite_root_metrics.py execution.py main.py schemas.py
brightlite_root_metrics.pyc execution.pyc main.pyc schemas.pyc
cycamore_root_metrics.py fco_metrics.py metrics.py tools.py
cycamore_root_metrics.pyc fco_metrics.pyc metrics.pyc tools.pyc
evaluator.py __init__.py root_metrics.py
evaluator.pyc __init__.pyc root_metrics.pyc
Any ideas how to fix this? I had previously tried to install Cymetric without success. Could the issue also be related to me not having cleaned up the previous installation attempt properly?
I also include the log from the Cymetric installations below.
Thanks,
Malte
install.log:
running install running build running build_py creating build creating build/lib.linux-x86_64-2.7 creating build/lib.linux-x86_64-2.7/cymetric copying cymetric/fco_metrics.py -> build/lib.linux-x86_64-2.7/cymetric copying cymetric/root_metrics.py -> build/lib.linux-x86_64-2.7/cymetric copying cymetric/schemas.py -> build/lib.linux-x86_64-2.7/cymetric copying cymetric/brightlite_root_metrics.py -> build/lib.linux-x86_64-2.7/cymetric copying cymetric/__init__.py -> build/lib.linux-x86_64-2.7/cymetric copying cymetric/cycamore_root_metrics.py -> build/lib.linux-x86_64-2.7/cymetric copying cymetric/metrics.py -> build/lib.linux-x86_64-2.7/cymetric copying cymetric/execution.py -> build/lib.linux-x86_64-2.7/cymetric copying cymetric/evaluator.py -> build/lib.linux-x86_64-2.7/cymetric copying cymetric/main.py -> build/lib.linux-x86_64-2.7/cymetric copying cymetric/tools.py -> build/lib.linux-x86_64-2.7/cymetric running build_scripts creating build/scripts-2.7 copying and adjusting scripts/cymetric -> build/scripts-2.7 changing mode of build/scripts-2.7/cymetric from 664 to 775 running install_lib creating /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric copying build/lib.linux-x86_64-2.7/cymetric/fco_metrics.py -> /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric copying build/lib.linux-x86_64-2.7/cymetric/root_metrics.py -> /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric copying build/lib.linux-x86_64-2.7/cymetric/schemas.py -> /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric copying build/lib.linux-x86_64-2.7/cymetric/brightlite_root_metrics.py -> /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric copying build/lib.linux-x86_64-2.7/cymetric/__init__.py -> /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric copying build/lib.linux-x86_64-2.7/cymetric/cycamore_root_metrics.py -> /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric copying build/lib.linux-x86_64-2.7/cymetric/metrics.py -> /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric copying build/lib.linux-x86_64-2.7/cymetric/execution.py -> /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric copying build/lib.linux-x86_64-2.7/cymetric/evaluator.py -> /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric copying build/lib.linux-x86_64-2.7/cymetric/main.py -> /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric copying build/lib.linux-x86_64-2.7/cymetric/tools.py -> /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric byte-compiling /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric/fco_metrics.py to fco_metrics.pyc byte-compiling /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric/root_metrics.py to root_metrics.pyc byte-compiling /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric/schemas.py to schemas.pyc byte-compiling /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric/brightlite_root_metrics.py to brightlite_root_metrics.pyc byte-compiling /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric/__init__.py to __init__.pyc byte-compiling /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric/cycamore_root_metrics.py to cycamore_root_metrics.pyc byte-compiling /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric/metrics.py to metrics.pyc byte-compiling /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric/execution.py to execution.pyc byte-compiling /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric/evaluator.py to evaluator.pyc byte-compiling /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric/main.py to main.pyc byte-compiling /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric/tools.py to tools.pyc running install_scripts copying build/scripts-2.7/cymetric -> /home/maltefgoettsche/.local/bin changing mode of /home/maltefgoettsche/.local/bin/cymetric to 775 running install_egg_info Removing /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric-1.5.0-py2.7.egg-info Writing /home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric-1.5.0-py2.7.egg-info
Metadata
Metadata
Assignees
Labels
DefectA bug in an existing feature that should workA bug in an existing feature that should work
Type
Projects
Milestone
Relationships
Development
Select code repository
Activity
bam241 commentedon Jan 11, 2017
Hi,
could you explain more about "trying to run it ?
did you just try to load it in Python? Do you have a script ?
Could you also the full segmentation fault you got ? (If there is anything else)
maltefgoettsche commentedon Jan 11, 2017
Yes, I tried to load it in Python (import cymetric), or I try to run it from the terminal (e.g. cymetric cyclus.sqlite -l).
It only says Segmentation fault (core dumped).
scopatz commentedon Jan 11, 2017
Thanks for reporting @maltefgoettsche
Yes, it could. Also,
cymetric -hrun successfully?maltefgoettsche commentedon Jan 11, 2017
Thanks for the response!
1.5
I'm not sure what the Python bindings are. I installed Cyclus from source (with Baptiste's help, actually, as there were several issues), using "python install.py."
No, same error.
Not yet. Can I install Cymetric from conda if I installed Cyclus from source? If somehow possible, I would like to keep my Cyclus installation from source, as I may need to make changes to the source code at some point in the future.
I hope I'm doing this right. I followed the instruction from here to get the backtrace. The output is:
/home/maltefgoettsche/.local/bin/seg_wrapper.sh: line 3: 4566 Segmentation fault (core dumped) "$@" "/home/maltefgoettsche/.local/bin/./cymetric": not in executable format: File format not recognized [New LWP 4566] [New LWP 4576] [New LWP 4575] [New LWP 4577] [New LWP 4578] Core was generated by /usr/bin/python ./cymetric'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x00007fbb343e8982 in ?? () [Current thread is 1 (LWP 4566)] #0 0x00007fbb343e8982 in ?? () #1 0x00000000026833e0 in ?? () #2 0x0000000000000000 in ?? ()scopatz commentedon Jan 11, 2017
Can you share the stdout of installing cyclus, please? It prints a bunch of diagnostic information at the top that can help us debug.
That is bad
Because cymetric is in Python you need to do something like the following to run through gdb:
maltefgoettsche commentedon Jan 11, 2017
I (successfully) re-compiled CYCLUS to get the log, which I attach:
install.log.txt
Interestingly, importing Cymetric into Python now gives
Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/maltefgoettsche/.local/lib/python2.7/site-packages/cymetric/__init__.py", line 4, in <module> from cyclus.typesystem import * # only grabs code generated defintiions ImportError: No module named typesystemRunning cymetric from the terminal, I still get Segmentation fault (core dumped).
(gdb) run /home/maltefgoettsche/.local/bin/cymetric -h gives me
(gdb) bt gives me
scopatz commentedon Jan 11, 2017
OK, great. It looks like the segfault it coming from PyNE, not cymetric or cyclus, which you seem to have compiled correctly with Python bindings. Try uninstalling PyNE or recompiling PyNE or eremoving PyNE from the cymetric imports.
maltefgoettsche commentedon Jan 11, 2017
Recompiling PyNE did not change anything. Uninstalling PyNE does the job, thanks a lot!!
Now, I'm wondering, though, how I could get both to run properly. PyNE by itself seemed to be working fine. I installed the develop version, as I could not get the master version to run. Could the problem be that Cymetric is not compatible with the Pyne develop version. I attach my install log from the re-compilation just now: pyne_install.log.txt
Thanks so much,
Malte
scopatz commentedon Jan 11, 2017
Yeah I think this is a PyNE issue on some level. Cyclus duplicates PyNE's C++ API. So it is possible that, due to link optimization, the Cyclus version of some of the data management is getting read in instead of the current version. I have been able to have both PyNE and Cyclus installed at the same time for a while now so this is a new one on me. I am not sure what the strategy should be going forward.
maltefgoettsche commentedon Jan 13, 2017
No problem, thanks a lot for your help.
Apart from PyNE, I have one last issue: While cymetric works fine using it with ipython from the terminal, it doesn't work with jupyter notebook: import cymetric makes the kernel crash and give me the error "src/tcmalloc.cc:278] Attempt to free invalid pointer 0x2d18890." If this seems like a easily fixable problem, I would be glad about any ideas. If it's complicated, I could live with running Cymetric in ipython.
Malte
scopatz commentedon Jan 13, 2017
I might try to uninstall tcmalloc and recompile cyclus. It is optional anyway.
scopatz commentedon Jan 13, 2017
FWIW I have had an incredibly hard time getting tcmalloc working in the past. I have abandoned it personally.
maltefgoettsche commentedon Jan 17, 2017
Great - this resolved that issue. So everything works now, except for not being able to use both Pyne and Cymetric. But this should be ok. Thanks for your help!
scopatz commentedon Jan 17, 2017
Yeah, PyNE needs some love these days.
bam241 commentedon Jul 24, 2017
@maltefgoettsche do you still experience those issue
if not any idea how you fixed it ?
maltefgoettsche commentedon Jul 24, 2017
I haven't installed PyNE since then (as I haven't needed it so far).