Bug report #2475

Segmentation Fault in 1.4, opensuse 11.2

Added by jtornero - over 14 years ago. Updated over 14 years ago.

Status:Closed
Priority:Low
Assignee:nobody -
Category:Python plugins
Affected QGIS version: Regression?:No
Operating System:SuSE Easy fix?:No
Pull Request or Patch supplied: Resolution:invalid
Crashes QGIS or corrupts data: Copied to github as #:12535

Description

When Qgis starts, it crashes whith this message:


rewrewqr@ewrqwerqw:~/.config/QuantumGIS> qgis
Python support ENABLED :-)
Loaded : fTools (package: fTools)
Warning: QHttp: empty path requested is invalid -- using '/'
Loaded : Plugin Installer (package: plugin_installer)
Violación de segmento (Segmentation fault)


I've been looking around and I've found that the problem itself occurs when plugin_installer is loaded (maybe that's why if you run qgis as root it works until you try to use the plugin installer, because I guess different users have different QGIS.conf files and in root maybe the plugin is not activated by default, so it's not loaded at start)

If you modify your QGIS.conf and set the string under [PythonPlugins] plugin_installer to false, it starts (but at soon as you select the plugin in the plugin manager and accept it crashes). Also is posible to start if you set the string under [QGis] plugin-installer\\checkOnStart to false, in this case even if you have selected the plugin Qgis will start.

I don't know much about debugging and stuff but I've make a dbg qgis with this result (I ommit a lot of lines before):

Try: zypper install C "debuginfo(build-id)=5a01875b572dc7f1dc3bd2aa0317bd5c16b36d05"
Python support ENABLED :
)
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/math.so
Try: zypper install C "debuginfo(build-id)=4458c4c5053a5061dddb6f6d1db7782cb6b3fb86"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/itertools.so
Try: zypper install -C "debuginfo(build-id)=2810e6a3e22bae059e320128defb02d1a1fca7ce"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/_struct.so
Try: zypper install -C "debuginfo(build-id)=31f94a0ad84e920fda6bc15abe62f8d40f9f3b7a"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/datetime.so
Try: zypper install -C "debuginfo(build-id)=a178f24bded8eac318be7706ff526d0cfa452413"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/_collections.so
Try: zypper install -C "debuginfo(build-id)=afbc1f0256196518930ca48c6eb74accf09a4552"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/operator.so
Try: zypper install -C "debuginfo(build-id)=79427d04efb7e8747c51993246f46d1282e91a7d"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/_functools.so
Try: zypper install -C "debuginfo(build-id)=4fba3d2da44cc7f455ffc883bd2a6b0de4a8fe94"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/time.so
Try: zypper install -C "debuginfo(build-id)=527a1a43efd2e9702a4affc34a805e9824e08d7c"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/_csv.so
Try: zypper install -C "debuginfo(build-id)=e6ef1eb7a75617f5535ef8fba19fcc2587a87f1e"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/cStringIO.so
Try: zypper install -C "debuginfo(build-id)=5d672746cbefe392a78aecb1135800d4806d4fb5"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/binascii.so
Try: zypper install -C "debuginfo(build-id)=61fdb37e66a9cb9486056e404f49921cbea1e14b"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/_random.so
Try: zypper install -C "debuginfo(build-id)=532d0115b896c0bd8b1a3fd6fa5adb3d963f7835"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/select.so
Try: zypper install -C "debuginfo(build-id)=ba1b9d92293aeb23ca132eb2e7212783cd290d31"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/fcntl.so
Try: zypper install -C "debuginfo(build-id)=2e11381f39a2393fac77cbf169571de9bd7404b8"
Loaded : fTools (package: fTools)
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/_sqlite3.so
Try: zypper install -C "debuginfo(build-id)=acb37beabc55aeaadab58b029e813c5c511a4d3d"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/unicodedata.so
Try: zypper install -C "debuginfo(build-id)=1a99a0e33642f5971b234bcc58918ea807a2998e"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/zlib.so
Try: zypper install -C "debuginfo(build-id)=353df9fab19918b521114dcccd53ce55bcd724e3"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/strop.so
Try: zypper install -C "debuginfo(build-id)=abe44c078b1362972447ce77e7d0f9c58f12ed90"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/_locale.so
Try: zypper install -C "debuginfo(build-id)=8033610963dbeef57d4995df6f33bcfe42c94216"
Detaching after fork from child process 10333.
Loaded : Plugin Installer (package: plugin_installer)
Warning: QObject::connect: Incompatible sender/receiver arguments
QgsProject::writeProject(QDomDocument&) --> QgisApp::projectChanged(QDomDocument)
Warning: QHttp: empty path requested is invalid -
using '/'

Program received signal SIGSEGV, Segmentation fault.
0xb61493d8 in strcmp () from /lib/libc.so.6

I also attach a file from strace. Hope it helps. I am newbie reporting things like this.

Best Regards

Jorge Tornero

traza.txt.tar.gz - strace output (153 KB) jtornero -, 2010-02-26 02:18 AM

History

#1 Updated by Paolo Cavallini over 14 years ago

Which SIP do you have?

#2 Updated by jtornero - over 14 years ago

Replying to [comment:1 pcav]:

Which SIP do you have?

Well, I have installed python-sip 4.9.1-1.1.1.

By the way, yesterday I've done a DIY debbugging (adding print sentences before and after loops and if-elses, etc) and I think the segfault occurs (at least) when the plugin isntaller scripts goes into line #153 in file installer_plugin.py, when calling self.fetchDlg.exec_().

Moreover, I think I've sent an useless trace made with strace, maybe is more interesting the bt from gdb. Please tell me if all this is useless or junk for future reports.

Thank you very much for your help

Cheers,

Jorge Tornero

Program received signal SIGSEGV, Segmentation fault.
0xb61493d8 in strcmp () from /lib/libc.so.6
(gdb) bt
#0 0xb61493d8 in strcmp () from /lib/libc.so.6
#3905 0x076e3f5d in ?? () from /opt/PostgresPlus/8.4SS/psqlODBC/lib/libcrypto.so.4
#3906 0x076e03ff in ?? () from /opt/PostgresPlus/8.4SS/psqlODBC/lib/libcrypto.so.4
#3907 0x076e06cf in lh_insert () from /opt/PostgresPlus/8.4SS/psqlODBC/lib/libcrypto.so.4
#3908 0x076e4135 in OBJ_NAME_add () from /opt/PostgresPlus/8.4SS/psqlODBC/lib/libcrypto.so.4
#3909 0x076e84c5 in EVP_add_cipher () from /opt/PostgresPlus/8.4SS/psqlODBC/lib/libcrypto.so.4
#3910 0xb56ca23e in SSL_library_init () from /usr/lib/libssl.so.0.9.8
#3911 0xb6dd9eeb in ?? () from /usr/lib/libQtNetwork.so.4
#3912 0xb6dd665d in ?? () from /usr/lib/libQtNetwork.so.4
#3913 0xb6dcdeb4 in QSslSocket::supportsSsl() () from /usr/lib/libQtNetwork.so.4
#10 0xb6d46665 in ?? () from /usr/lib/libQtNetwork.so.4
#3914 0xb6d4eb88 in ?? () from /usr/lib/libQtNetwork.so.4
#3915 0xb6d4f5f2 in ?? () from /usr/lib/libQtNetwork.so.4
#3916 0xb6d51130 in ?? () from /usr/lib/libQtNetwork.so.4
#3917 0xb6d516a5 in QHttp::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib/libQtNetwork.so.4
#3918 0xb2629ea2 in ?? () from /usr/lib/python2.6/site-packages/PyQt4/QtNetwork.so
#3919 0xb791c04a in QMetaCallEvent::placeMetaCall(QObject*) () from /usr/lib/libQtCore.so.4
#3920 0xb791d796 in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4
#3921 0xb2629dbc in ?? () from /usr/lib/python2.6/site-packages/PyQt4/QtNetwork.so
#3922 0xb6f538fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#3923 0xb6f5b34e in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#3924 0xb7c7d9af in QgsApplication::notify(QObject*, QEvent*) () from /usr/lib/libqgis_core.so.1.4.0
#3925 0xb790d32e in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#3926 0xb790dfdc in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQtCore.so.4
#3927 0xb790e19c in QCoreApplication::sendPostedEvents(QObject*, int) () from /usr/lib/libQtCore.so.4
#3928 0xb79394dd in ?? () from /usr/lib/libQtCore.so.4
#3929 0xb5f334c2 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#3930 0xb5f36d98 in ?? () from /usr/lib/libglib-2.0.so.0
#3931 0xb5f36ebe in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3932 0xb7939011 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#3933 0xb6ff529a in ?? () from /usr/lib/libQtGui.so.4
#3934 0xb790b98d in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#3935 0xb790bdd9 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#3936 0xb7433081 in QDialog::exec() () from /usr/lib/libQtGui.so.4
#3937 0xb2fe2ff4 in ?? () from /usr/lib/python2.6/site-packages/PyQt4/QtGui.so
#3938 0xb348b651 in PyCFunction_Call () from /usr/lib/libpython2.6.so.1.0
#36 0xb34d927d in PyEval_EvalFrameEx () from /usr/lib/libpython2.6.so.1.0
#37 0xb34dedca in PyEval_EvalCodeEx () from /usr/lib/libpython2.6.so.1.0
#38 0xb3479617 in ?? () from /usr/lib/libpython2.6.so.1.0
#39 0xb3456c70 in PyObject_Call () from /usr/lib/libpython2.6.so.1.0
#40 0xb3463f61 in ?? () from /usr/lib/libpython2.6.so.1.0
#41 0xb3456c70 in PyObject_Call () from /usr/lib/libpython2.6.so.1.0
#42 0xb34d73b6 in PyEval_CallObjectWithKeywords () from /usr/lib/libpython2.6.so.1.0
#43 0xb35b27af in ?? () from /usr/lib/python2.6/site-packages/sip.so
#44 0xb333cae5 in ?? () from /usr/lib/python2.6/site-packages/PyQt4/QtCore.so
#45 0xb333cbeb in ?? () from /usr/lib/python2.6/site-packages/PyQt4/QtCore.so
#46 0xb333cccb in ?? () from /usr/lib/python2.6/site-packages/PyQt4/QtCore.so
#47 0xb7923864 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQtCore.so.4
#48 0xb7923d41 in QMetaObject::activate(QObject*, QMetaObject const*, int, int, void**) () from /usr/lib/libQtCore.so.4
#49 0xb6f4d0c5 in QAction::triggered(bool) () from /usr/lib/libQtGui.so.4
#50 0xb6f4e6f2 in QAction::activate(QAction::ActionEvent) () from /usr/lib/libQtGui.so.4
#51 0xb738ca37 in ?? () from /usr/lib/libQtGui.so.4
#52 0xb7393378 in ?? () from /usr/lib/libQtGui.so.4
#53 0xb7393f18 in QMenu::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/libQtGui.so.4
#54 0xb6faabac in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4
#55 0xb73961b4 in QMenu::event(QEvent*) () from /usr/lib/libQtGui.so.4
#56 0xb6f538fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#57 0xb6f5bbbb in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#58 0xb7c7d9af in QgsApplication::notify(QObject*, QEvent*) () from /usr/lib/libqgis_core.so.1.4.0
#59 0xb790d32e in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#60 0xb6f5abdc in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&) () from /usr/lib/libQtGui.so.4
#61 0xb6fcbc86 in ?? () from /usr/lib/libQtGui.so.4
#62 0xb6fcad7e in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/libQtGui.so.4
#63 0xb6ff5b68 in ?? () from /usr/lib/libQtGui.so.4
---Type <return> to continue---

#3 Updated by Paolo Cavallini over 14 years ago

Is this still valid?

#4 Updated by jtornero - over 14 years ago

Yes, it is still valid.

#5 Updated by Alex Mandel over 14 years ago

I think the question from pcav, is does this problem still exist if you recompile QGIS from the latest trunk?

#6 Updated by Paolo Cavallini over 14 years ago

  • Resolution set to invalid
  • Status changed from Open to Closed

Closing i beacause of lack of user feedback. Please reopen it if appropriate.

#7 Updated by jtornero - over 14 years ago

  • Status changed from Closed to Feedback
  • Resolution deleted (invalid)

I'm so sorry I haven't answered yet, among other things a new little human being has come and qgis stuff has been left apart for a while. Thank you for your patience, I absolutely forgot about this and I have remembered when I received your message this morning.

I have to say that the problem occurs in at least three machines with opensuse 11.2, and I haven't been able to compile the sources (as I said, I am not a very, very advanced user). I did the DIY debugging and I have been sniffing around in the sources of plugin manager but no results. I also have tried to upgrade my qt libraries and all but no success.

By the way, I've realized that maybe is better to assign component property of this ticket to "Python plugins and bindings"

If you think it is worth, please tell me what I have to do (roughly) to give you the appropiate feedback on all this.

Thank you very much for your attention and, once again, my apologies.

Jorge Tornero

#8 Updated by vinhussey - over 14 years ago

Replying to [comment:7 jtornero]:

I'm so sorry I haven't answered yet, among other things a new little human being has come and qgis stuff has been left apart for a while. Thank you for your patience, I absolutely forgot about this and I have remembered when I received your message this morning.

I have to say that the problem occurs in at least three machines with opensuse 11.2, and I haven't been able to compile the sources (as I said, I am not a very, very advanced user). I did the DIY debugging and I have been sniffing around in the sources of plugin manager but no results. I also have tried to upgrade my qt libraries and all but no success.

By the way, I've realized that maybe is better to assign component property of this ticket to "Python plugins and bindings"

If you think it is worth, please tell me what I have to do (roughly) to give you the appropiate feedback on all this.

Thank you very much for your attention and, once again, my apologies.

Jorge Tornero

Had a similar issue on opensuse. It appeared to be due to incompatibility with Qt, and was solved by upgrading to KDE 4.4. For a while, I was able to get by downgrading Qt, but this left a number of other apps (e.g. Digikam) not working.

Vincent Hussey

#9 Updated by jtornero - over 14 years ago

Replying to [comment:8 vinhussey]:

Replying to [comment:7 jtornero]:

I'm so sorry I haven't answered yet, among other things a new little human being has come and qgis stuff has been left apart for a while. Thank you for your patience, I absolutely forgot about this and I have remembered when I received your message this morning.

I have to say that the problem occurs in at least three machines with opensuse 11.2, and I haven't been able to compile the sources (as I said, I am not a very, very advanced user). I did the DIY debugging and I have been sniffing around in the sources of plugin manager but no results. I also have tried to upgrade my qt libraries and all but no success.

By the way, I've realized that maybe is better to assign component property of this ticket to "Python plugins and bindings"

If you think it is worth, please tell me what I have to do (roughly) to give you the appropiate feedback on all this.

Thank you very much for your attention and, once again, my apologies.

Jorge Tornero

Had a similar issue on opensuse. It appeared to be due to incompatibility with Qt, and was solved by upgrading to KDE 4.4. For a while, I was able to get by downgrading Qt, but this left a number of other apps (e.g. Digikam) not working.

Vincent Hussey

Well, I've upgraded to KDE 4.4 but I still have the problem. I don't know where to "touch" or look now, any suggestions would be appreciated.

Best regards,

Jorge Tornero

#10 Updated by Jürgen Fischer over 14 years ago

Replying to [comment:9 jtornero]:

Well, I've upgraded to KDE 4.4 but I still have the problem. I don't know where to "touch" or look now, any suggestions would be appreciated.


Do you have any (possibly postgres related) third party plugins installed?  If so, please check if the problem also appears without them and if it doesn't try to figure out which plugin is causing this.

#11 Updated by jtornero - over 14 years ago

Replying to [comment:10 jef]:

Replying to [comment:9 jtornero]:

Well, I've upgraded to KDE 4.4 but I still have the problem. I don't know where to "touch" or look now, any suggestions would be appreciated.

> 
> Do you have any (possibly postgres related) third party plugins installed?  If so, please check if the problem also appears without them and if it doesn't try to figure out which plugin is causing this.

Hello,

I've installed [[PostgreSQL]] plus standard server 8.4 from enterpriseDB repository instead of the one provided by openSUSE mostly because it really works fine from zero. I'll try to check in a computer without this distribution and also with standard postgresql installation if the bug occurs as well.

Best regards

Jorge Tornero

#12 Updated by jtornero - over 14 years ago

Replying to [comment:11 jtornero]:

Replying to [comment:10 jef]:

Replying to [comment:9 jtornero]:

Well, I've upgraded to KDE 4.4 but I still have the problem. I don't know where to "touch" or look now, any suggestions would be appreciated.

> > 
> > Do you have any (possibly postgres related) third party plugins installed?  If so, please check if the problem also appears without them and if it doesn't try to figure out which plugin is causing this.
> 
> Hello,
> 
> I've installed [[PostgreSQL]] plus standard server 8.4 from enterpriseDB repository instead of the one provided by openSUSE mostly because it really works fine from zero. I'll try to check in a computer without this distribution and also with standard postgresql installation if the bug occurs as well.
> 
> Best regards
> 
> Jorge Tornero

Hi all,

well, after reading Jef's post about the "translation" of gdb backtrace, I made a test with a fella's computer. He has the same [[OpenSuse]] as me, but instead of having installed [[PostgreSQL]] from [[EnterpriseDB]], he installed the packages provided by openSuse through [[YaST]] (say so, an 'standard' installation)... and it worked perfectliy, so I realized that the problem could be where Jef pointed.

Because of my lack of deep knowledge about linux internals, I've done a 'brute force approach' to try to solve the problem, and... It worked!!!!

I've done the following

1) First I've located all the libcrypto related files:

<pre>
/opt/lampp/lib/libcrypto.so
/opt/lampp/lib/libcrypto.so.0.9.8
/opt/lampp/lib/pkgconfig/libcrypto.pc
/opt/PostgreSQL/8.4/lib/libcrypto.so.4
/opt/PostgreSQL/psqlODBC/lib/libcrypto.so.4
/usr/lib/libcrypto.a
/usr/lib/libcrypto.so
/usr/lib/libcrypto.so.0.9.7
/usr/lib/libcrypto.so.0.9.8
/usr/lib/libcryptopp.a
/usr/lib/pkgconfig/libcrypto.pc
</pre>

2) Then I've moved away (to a subfolder in /opt/PostgreSQL/8.4/lib/libcrypto.so.4) the file libcrypto.so.4 for safety reasons

3) then I've created a symlink to /usr/lib/libcrypto.so in /opt/PostgreSQL/8.4/lib/ with the name libcrypto.so.4

And voilà, QGis works again.

So I have to apologize for thinking that thas was a bug in QGis, and I have to appreciate all the help received from you.

I hope that someone of you could explain what I did for future reference, and also, please tell if the bug could be marked as solved, I don't know if what I've done is enough. 

Thank you very much again

jorge Tornero

#13 Updated by Jürgen Fischer over 14 years ago

  • Resolution set to invalid
  • Status changed from Feedback to Closed

Replying to [comment:12 jtornero]:

2) Then I've moved away (to a subfolder in
/opt/PostgreSQL/8.4/lib/libcrypto.so.4) the file libcrypto.so.4 for safety
reasons

It's probably better to use PostgreSQL with the libraries it was built with.
But you should take care that the PostgreSQL install doesn't interfere with the
rest of the system.

Your PostgreSQL install probably "infected" the system by adding a path to

Therefore libraries are also looked up in the [[PostgreSQL]] directory although the
libraries there are incompatible with the rest of the system.

Removing pathes should also cure the problem.  But you might find that
[[PostgreSQL]] doesn't work anymore.   In that case you can probably setj those
pathes in LD_LIBRARY_PATH in [[PostgreSQL]] startup script, so that only [[PostgreSQL]]
uses it's own versions of libraries.

> I hope that someone of you could explain what I did for future reference, and
> also, please tell if the bug could be marked as solved, I don't know if what
> I've done is enough. 

Sure thing.  I'll close the bug.

> Thank you very much again

You're welcome.

Also available in: Atom PDF