Skip to content
This repository has been archived by the owner on Sep 1, 2021. It is now read-only.

Crash when playing around with the forcefields. #181

Closed
cryos opened this issue Mar 10, 2008 · 5 comments
Closed

Crash when playing around with the forcefields. #181

cryos opened this issue Mar 10, 2008 · 5 comments

Comments

@cryos
Copy link
Owner

cryos commented Mar 10, 2008

Latest OB and Avogadro (trunk). Qt 4.4beta1.

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb67e5b90 (LWP 15168)]
0xb6e731f7 in memset () from /lib/libc.so.6
(gdb) bt
#0 0xb6e731f7 in memset () from /lib/libc.so.6
#1 0xb7f26eb8 in OpenBabel::OBForceField::ClearGradients (this=0xb7fc9920) at ../../include/openbabel/forcefield.h:473
#2 0xb7f1d53a in OpenBabel::OBForceFieldGhemical::Energy (this=0xb7fc9920, gradients=true) at forcefieldghemical.cpp:901
#3 0xb7e8d40c in OpenBabel::OBForceField::SteepestDescentInitialize (this=0xb7fc9920, steps=25, econv=0.0001, method=2) at forcefield.cpp:2223
#4 0xb7e8d55a in OpenBabel::OBForceField::SteepestDescent (this=0xb7fc9920, steps=25, econv=0.0001, method=2) at forcefield.cpp:2291
#5 0xb6bfa25d in Avogadro::AutoOptThread::update () from /home/kde-devel/kde/build/avo-git/libavogadro/src/tools/libautoopttool.so
#6 0xb6bfa37d in Avogadro::AutoOptThread::run () from /home/kde-devel/kde/build/avo-git/libavogadro/src/tools/libautoopttool.so
#7 0xb723bcc7 in QThreadPrivate::start () from /usr/lib/libQtCore.so.4
#8 0xb71b7192 in start_thread () from /lib/libpthread.so.0
#9 0xb6ec802e in clone () from /lib/libc.so.6

Reported by: @cniehaus

@cryos
Copy link
Owner Author

cryos commented Mar 10, 2008

Logged In: YES
user_id=684210
Originator: YES

Second crash by playing with forcefields. The backtrace doesn't look related though...

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb675db90 (LWP 16227)]
0xb6deb1f7 in memset () from /lib/libc.so.6
(gdb) bt
#0 0xb6deb1f7 in memset () from /lib/libc.so.6
#1 0xb7e9eeb8 in OpenBabel::OBForceField::ClearGradients (this=0xb7f41920) at ../../include/openbabel/forcefield.h:473
#2 0xb7e9553a in OpenBabel::OBForceFieldGhemical::Energy (this=0xb7f41920, gradients=true) at forcefieldghemical.cpp:901
#3 0xb7e0540c in OpenBabel::OBForceField::SteepestDescentInitialize (this=0xb7f41920, steps=25, econv=0.0001, method=2) at forcefield.cpp:2223
#4 0xb7e0555a in OpenBabel::OBForceField::SteepestDescent (this=0xb7f41920, steps=25, econv=0.0001, method=2) at forcefield.cpp:2291
#5 0xb6b7225d in Avogadro::AutoOptThread::update () from /home/kde-devel/kde/build/avo-git/libavogadro/src/tools/libautoopttool.so
#6 0xb6b7237d in Avogadro::AutoOptThread::run () from /home/kde-devel/kde/build/avo-git/libavogadro/src/tools/libautoopttool.so
#7 0xb71b3cc7 in QThreadPrivate::start () from /usr/lib/libQtCore.so.4
#8 0xb712f192 in start_thread () from /lib/libpthread.so.0
#9 0xb6e4002e in clone () from /lib/libc.so.6

Original comment by: @cniehaus

@cryos
Copy link
Owner Author

cryos commented Mar 11, 2008

Logged In: YES
user_id=684210
Originator: YES

Third backtrace related to forcefields. This time on a different computer but same settings. Latest OpenBabel and Avogadro. I was again simple adding many many atoms to the canvas, connecting them at random and from time to time activated the forcefield feature.

#0 0xb7eb3a1a in OpenBabel::OBForceFieldGhemical::E_VDW (this=0xb7f5e920,
gradients=true) at forcefieldghemical.cpp:262
#1 0xb7eb2485 in OpenBabel::OBForceFieldGhemical::Energy (this=0xb7f5e920,
gradients=true) at forcefieldghemical.cpp:906
#2 0xb7e2240c in OpenBabel::OBForceField::SteepestDescentInitialize (
this=0xb7f5e920, steps=25, econv=0.0001, method=2) at forcefield.cpp:2223
#3 0xb7e2255a in OpenBabel::OBForceField::SteepestDescent (this=0xb7f5e920,
steps=25, econv=0.0001, method=2) at forcefield.cpp:2291
#4 0xb61e225d in Avogadro::AutoOptThread::update ()
from /home/kde4/kde/build/avogadro/libavogadro/src/tools/libautoopttool.so
#5 0xb61e259f in Avogadro::AutoOptTool::timerEvent ()
from /home/kde4/kde/build/avogadro/libavogadro/src/tools/libautoopttool.so
#6 0xb72b8864 in QObject::event () from /usr/lib/libQtCore.so.4
#7 0xb7703bec in QApplicationPrivate::notify_helper ()
from /usr/lib/libQtGui.so.4
#8 0xb770abc9 in QApplication::notify () from /usr/lib/libQtGui.so.4
#9 0xb72a9429 in QCoreApplication::notifyInternal ()
from /usr/lib/libQtCore.so.4
#10 0xb72d0dd1 in QTimerInfoList::activateTimers ()
from /usr/lib/libQtCore.so.4
#11 0xb72d0ec5 in QEventDispatcherUNIX::activateTimers ()
from /usr/lib/libQtCore.so.4
#12 0xb72d1f0b in QEventDispatcherUNIX::processEvents ()
---Type to continue, or q to quit---
from /usr/lib/libQtCore.so.4
#13 0xb77895b1 in QEventDispatcherX11::processEvents ()
from /usr/lib/libQtGui.so.4
#14 0xb72a86bd in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#15 0xb72a8851 in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#16 0xb72aa99a in QCoreApplication::exec () from /usr/lib/libQtCore.so.4
#17 0xb77032e7 in QApplication::exec () from /usr/lib/libQtGui.so.4
#18 0x08084946 in main ()

Original comment by: @cniehaus

@cryos
Copy link
Owner Author

cryos commented Mar 11, 2008

Logged In: YES
user_id=1682851
Originator: NO

I'll put if (_gradientPtr) before the memset. In non-threaded applications this can't happen, but the OB force field code is not thread safe by itself.

Original comment by: @timvdm

@cryos
Copy link
Owner Author

cryos commented May 12, 2008

Logged In: YES
user_id=21420
Originator: NO

Is this bug still in SVN trunk Tim? If not, let's close it.

Thanks!

Original comment by: @ghutchis

@cryos
Copy link
Owner Author

cryos commented May 28, 2008

Logged In: YES
user_id=1312539
Originator: NO

This Tracker item was closed automatically by the system. It was
previously set to a Pending status, and the original submitter
did not respond within 14 days (the time period specified by
the administrator of this Tracker).

Original comment by: sf-robot

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants