Bug 69406 - CRASH - clicking on Tables icon of any loaded ODB file causes sigabrt
Summary: CRASH - clicking on Tables icon of any loaded ODB file causes sigabrt
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Base (show other bugs)
Version:
(earliest affected)
4.2.0.0.alpha0+ Master
Hardware: x86-64 (AMD64) All
: highest blocker
Assignee: Stephan Bergmann
URL:
Whiteboard:
Keywords: regression
: 69458 (view as bug list)
Depends on:
Blocks: mab4.2
  Show dependency treegraph
 
Reported: 2013-09-16 09:09 UTC by Alex Thurgood
Modified: 2013-10-05 04:14 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:
Regression By:


Attachments
warnings and full bt (26.92 KB, text/plain)
2013-09-17 08:16 UTC, Alex Thurgood
Details
full bt after clicking on Table button in Mac addressbook odb (42.76 KB, text/plain)
2013-10-02 07:49 UTC, Alex Thurgood
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alex Thurgood 2013-09-16 09:09:07 UTC
How to reproduce :

1) Open an ODB file that connects to a Mac Addressbook.
2) Click on Tables
3) Crash.

GDB says :
warning: Tried to remove a non-existent library: /Applications/LibreOfficeDev.app/Contents/MacOS/libfirebird_sdbclo.dylib
warn:cppuhelper:29471:1:cppuhelper/source/shlib.cxx:503: loading component library failed: file:///Applications/LibreOfficeDev.app/Contents/MacOS/../MacOS/libfirebird_sdbclo.dylib
libc++abi.dylib: terminate called throwing an exception

Program received signal SIGABRT, Aborted.
0x00007fff918ae212 in __pthread_kill ()
Comment 1 Alex Thurgood 2013-09-16 09:26:56 UTC
Adding Lionel, Julien, Andrzej to CC
Comment 2 Alex Thurgood 2013-09-16 09:35:26 UTC
Regression over 4.1.1.2
Comment 3 Lionel Elie Mamane 2013-09-16 18:12:25 UTC
@ahunt: this seems related to issues of the firebird sdbc driver on Mac? It complains about not being able to load libfirebird_sdbclo.dylib, I guess this leads to a crash before the MacAB driver is even tried?
Comment 4 Alex Thurgood 2013-09-17 08:15:33 UTC
When the ODB is loaded, I see this in gdb :

warn:xmloff.core:10469:1:xmloff/source/core/xmlimp.cxx:848: exception caught
warn:legacy.osl:10469:1:xmloff/source/core/xmlimp.cxx:849: caught an exception!
in function:virtual void SvXMLImport::setTargetDocument(const uno::Reference<lang::XComponent> &)
type: com.sun.star.lang.NotInitializedException
context: N8dbaccess17ODatabaseDocumentE

warn:xmloff.core:10469:1:xmloff/source/core/xmlimp.cxx:848: exception caught
warn:legacy.osl:10469:1:xmloff/source/core/xmlimp.cxx:849: caught an exception!
in function:virtual void SvXMLImport::setTargetDocument(const uno::Reference<lang::XComponent> &)
type: com.sun.star.lang.NotInitializedException
context: N8dbaccess17ODatabaseDocumentE

warn:xmloff.core:10469:1:xmloff/source/core/xmlimp.cxx:848: exception caught
warn:legacy.osl:10469:1:xmloff/source/core/xmlimp.cxx:849: caught an exception!
in function:virtual void SvXMLImport::setTargetDocument(const uno::Reference<lang::XComponent> &)
type: com.sun.star.lang.NotInitializedException
context: N8dbaccess17ODatabaseDocumentE

Then when I click on the Tables button, I see the following :

warning: Tried to remove a non-existent library: /Users/Shared/Repos/LO/core/instdir/unxmacxx/LibreOfficeDev.app/Contents/MacOS/libfirebird_sdbclo.dylib
warn:cppuhelper:10469:1:cppuhelper/source/shlib.cxx:503: loading component library failed: file:///Users/Shared/Repos/LO/core/instdir/unxmacxx/LibreOfficeDev.app/Contents/MacOS/../MacOS/libfirebird_sdbclo.dylib
libc++abi.dylib: terminate called throwing an exception


Pulled a full bt on the stack, and enclosed it.
Comment 5 Alex Thurgood 2013-09-17 08:16:45 UTC
Created attachment 85947 [details]
warnings and full bt
Comment 6 Lionel Elie Mamane 2013-09-17 08:26:58 UTC
(In reply to comment #4)
> When the ODB is loaded, I see this in gdb :
> 
> warn:xmloff.core:10469:1:xmloff/source/core/xmlimp.cxx:848: exception caught
> warn:legacy.osl:10469:1:xmloff/source/core/xmlimp.cxx:849: caught an
> exception!
> in function:virtual void SvXMLImport::setTargetDocument(const
> uno::Reference<lang::XComponent> &)
> type: com.sun.star.lang.NotInitializedException
> context: N8dbaccess17ODatabaseDocumentE

This is usual / unrelated.

> Then when I click on the Tables button, I see the following :
 
> warning: Tried to remove a non-existent library:
> /Users/Shared/Repos/LO/core/instdir/unxmacxx/LibreOfficeDev.app/Contents/
> MacOS/libfirebird_sdbclo.dylib
> warn:cppuhelper:10469:1:cppuhelper/source/shlib.cxx:503: loading component
> library failed:
> file:///Users/Shared/Repos/LO/core/instdir/unxmacxx/LibreOfficeDev.app/
> Contents/MacOS/../MacOS/libfirebird_sdbclo.dylib
> libc++abi.dylib: terminate called throwing an exception

When trying to open a sdbc: URL, LibreOffice asks each driver in turn whether it can handle this URL. My guess is that the firebird driver is asked before the macab driver and the firebird-sdbc driver on Mac has problem that makes it abort the whole LibreOffice before macab is tried.
Comment 7 Lionel Elie Mamane 2013-09-17 10:41:20 UTC
*** Bug 69458 has been marked as a duplicate of this bug. ***
Comment 8 Andrzej Hunt 2013-09-20 06:13:17 UTC
I haven't done anything to do with library naming/loading recently -- when is this build from? There's a vague possibility that this was a temporary breakage to do with the instdir changes (but they were apparently wrapped up by Thursday 12th/Friday 13th.

The bt in the related bug suggests that multiple drivers are affected which would support this -- if this persists in more recent builds I guess this would be an accidental breakage related to packaging from instdir builds (unit-tests are running fine on the mac tb's afaict, so the fault would seem to be creeping in later).
Comment 9 Alex Thurgood 2013-10-02 07:47:14 UTC
Version: 4.2.0.0.alpha0+
Build ID: 0618b35ebda29b911058254cd34620e8b24ab8f7

from 23/09/2013

The problem is still there :

warn:cppuhelper:30055:1:cppuhelper/source/shlib.cxx:503: loading component library failed: libfile:///Applications/LibreOfficeDev.app/Contents/MacOS/../MacOS/libhsqldb.jnilib.dylib
libc++abi.dylib: terminate called throwing an exception


full bt attached
Comment 10 Alex Thurgood 2013-10-02 07:49:02 UTC
Created attachment 86946 [details]
full bt after clicking on Table button in Mac addressbook odb
Comment 11 Alex Thurgood 2013-10-02 08:29:40 UTC
Further testing reveals that the crash occurs with any ODB file, as soon as the Tables button is pressed. Corrected title accordingly.
Comment 12 Stephan Bergmann 2013-10-02 15:44:29 UTC
(In reply to comment #9)
> Version: 4.2.0.0.alpha0+
> Build ID: 0618b35ebda29b911058254cd34620e8b24ab8f7
> 
> from 23/09/2013
> 
> The problem is still there :
> 
> warn:cppuhelper:30055:1:cppuhelper/source/shlib.cxx:503: loading component
> library failed:
> libfile:///Applications/LibreOfficeDev.app/Contents/MacOS/../MacOS/libhsqldb.
> jnilib.dylib
> libc++abi.dylib: terminate called throwing an exception

That "libhsqldb.jnilib.dylib" problem is fixed since <http://cgit.freedesktop.org/libreoffice/core/commit/?id=43c47af0181ada27b558a30b02c51dc665169b99> "Special-case Mac OS X .jnilib" (but I cannot currently verify whether that fixes the root problem of this issue).
Comment 13 Stephan Bergmann 2013-10-02 20:58:49 UTC
(In reply to comment #12)
> That "libhsqldb.jnilib.dylib" problem is fixed since
> <http://cgit.freedesktop.org/libreoffice/core/commit/
> ?id=43c47af0181ada27b558a30b02c51dc665169b99> "Special-case Mac OS X
> .jnilib" (but I cannot currently verify whether that fixes the root problem
> of this issue).

Yes, it does.