Bug Hunting Session
Bug 48775 - CRASH when opening biblio.odb via tools menu without Base module installed
Summary: CRASH when opening biblio.odb via tools menu without Base module installed
Status: RESOLVED WORKSFORME
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
3.4.4 release
Hardware: All Windows (All)
: highest critical
Assignee: Not Assigned
URL:
Whiteboard: target:4.1.0
Keywords: haveBacktrace
: 57196 (view as bug list)
Depends on:
Blocks: mab4.0
  Show dependency treegraph
 
Reported: 2012-04-16 09:58 UTC by tillmann.bake
Modified: 2014-01-17 19:33 UTC (History)
12 users (show)

See Also:
Crash report or crash signature:


Attachments
Bug 48775 - WinDbg session with FAILED_SOURCE_CODE (19.45 KB, text/plain)
2013-02-11 10:04 UTC, bfoman (inactive)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description tillmann.bake 2012-04-16 09:58:32 UTC
when i open in writer [extras]=>[literaturdatenbank] (i think in english its something like literature-database?!) writer is crashing without any alert.
i did the same from terminal and got this output:
terminate called after throwing an instance of 'com::sun::star::loader::CannotActivateFactoryException'
Comment 1 Julien Nabet 2012-04-17 14:50:34 UTC
Do you talk about "Bibliography database" in "Tools" Menu ?
If yes, I don't reproduce it with 3.5 branch on pc Debian x86-64.

You may try with 3.4.6 (last version of 3.4) or better, you should give a try to 3.5.2 version.

Could you also give more information about your Linux distribution (which one, which version) ?
Comment 2 tillmann.bake 2012-04-17 23:54:16 UTC
(In reply to comment #1)
> Do you talk about "Bibliography database" in "Tools" Menu ?
> If yes, I don't reproduce it with 3.5 branch on pc Debian x86-64.
> 
> You may try with 3.4.6 (last version of 3.4) or better, you should give a try
> to 3.5.2 version.
> 
> Could you also give more information about your Linux distribution (which one,
> which version) ?

yes i think bibliography database is the right one.
i'm using ubuntu 11.10
i will take a try to get newer version of libreoffice and will give you a feedback about this.
Comment 3 tillmann.bake 2012-04-19 09:23:23 UTC
well, i tried to open tools => bibliography database in writer 3.5.1.2 (build id: 350m1 (build: 102)) running on ubuntu precise beta i386 (in vmware) and i had the same problem: crashing writer.
ubuntu opened the report-a-bug-dialog and told me it is already reported, but i couldn't find it in launchpad...

(In reply to comment #1)
> Do you talk about "Bibliography database" in "Tools" Menu ?
> If yes, I don't reproduce it with 3.5 branch on pc Debian x86-64.
> 
> You may try with 3.4.6 (last version of 3.4) or better, you should give a try
> to 3.5.2 version.
> 
> Could you also give more information about your Linux distribution (which one,
> which version) ?
Comment 4 Jean-Baptiste Faure 2012-04-21 12:41:06 UTC
It seems that Ubuntu does not install base module by default. You should check if this module is installed for you.

Best regards. JBF
Comment 5 clemty 2012-09-03 20:59:52 UTC
This is set to NEEDINFO, which additional information is needed?

I can reproduce a crash (no error message though); my version is:
Version 3.6.1.2 (Build ID: e29a214) (running on Windows 7)

I installed only Writer, Calc and Impress (no Base).

I assume the best way to fix this is check if Base is installed, and pop up an error that base is needed for the bibliography database if it is not installed.
Comment 6 Julien Nabet 2012-09-03 21:38:49 UTC
On Debian, if I try to uninstall LibreOffice-base, apt indicates it'll remove all the other LO packages.

I took a look to http://www.libreoffice.org/get-help/installation/windows/ and obviously with a custom install you can unselect Base

Rainer: I'm a bit stuck here, any idea?
Comment 7 Rainer Bielefeld Retired 2012-09-04 05:32:24 UTC
[Reproducible] with LibO 3.5.5.2 Build ID 350m1 (Build:202) on Ubuntu 12.04 64 bit (VirtualBox).

I submitted "Bug 54479 - CONFIGURATION: UBUNTU offers menu 'Tools - (open) Bibliography Database', although Base not installed by default", and my suspect also is that missing Base Module causes the crash.

I am tending to close this one as NOTOURBUG (until proof of the opposite) because i am pretty sure that this bug is Ubuntu only, caused by the particular way of packaging. But of course it would be interesting to see what happens with other Linux Distributions and other OS if Base is not installed. I will try with a Master build.
Comment 8 Rainer Bielefeld Retired 2012-09-04 12:18:22 UTC
[Reproducible] with parallel installation of Master "LOdev  3.7.0.0.alpha0+   -  ENGLISH UI / German Locale  [Build ID: 6cad15d]"  {tinderbox: @6, pull time 2012-09-03 23:08:07} on German WIN7 Home Premium (64bit)

I installed without DB module and now can reproduce the bug, also on Ubuntu 64Bit (VirtualBox) with 3.5.2.

Together with "Bug 54479 - CONFIGURATION: Menu 'Tools - (open) Bibliography Database', although Base not installed" this one is really annoying. I do not know whether we will have to fix both bugs separately, I can not provoke a crash by simply trying to open an arbitrary .odb
Comment 9 Ivan Timofeev (retired) 2012-09-04 19:06:39 UTC
(In reply to comment #8)
> Together with "Bug 54479 - CONFIGURATION: Menu 'Tools - (open) Bibliography
> Database', although Base not installed" this one is really annoying. I do not
> know whether we will have to fix both bugs separately

While hiding that menu item is IMHO good idea, I think it is not a solution here. Because one can for example write a macro to launch Bibliography Database, something like

  frame = ThisComponent.CurrentController.Frame
  serv = createUnoService("com.sun.star.frame.DispatchHelper")
  serv.executeDispatch(frame,".uno:BibliographyComponent", "", 0, Array())

and it will crash as well.
Comment 10 Ivan Timofeev (retired) 2012-09-07 11:42:57 UTC
It turns out the problem was fixed (see Bug 33266) but for some reason it is reproducible now. I reproduce it with 3.5.4 from Ubuntu 12.04.

Bjoern, could you have a look again? Thanks!

P.S. I manually removed the files provided by the "libreoffice-base" package and lcl_isBaseAvailable returns true. I have no idea of that, but there is another way to check for Base installed:
 SvtModuleOptions().IsModuleInstalled(SvtModuleOptions::E_SDATABASE)
Comment 11 Markus Grob 2012-11-12 10:13:37 UTC
Still reproducible with Version 3.6.3.2 (Build ID: 58f22d5). I have written a document which has a few includes and one without something in it.
I think, first you have to test, if the module exists. If not, give the user a hint, he has to install the database module. If you only hide the button, users will be searching for it, if the have written documents using this and after the upgrade, this button can't be found.

The case with scripting will be the same. With a clean errormessage, the user will found out, how the problem could be fixed.

Greetings from Switzerland, Markus
Comment 12 clemty 2012-12-20 12:23:07 UTC
Still happens in 4.0.0.0.beta1 (Build ID: 87906242e87d3ddb2ba9827818f2d1416d80cc7)

(Win7 x64, lodev base not installed)
Comment 13 Samuel Mehrbrodt (CIB) 2013-01-09 21:21:35 UTC
I also reproduced this on Windows with a Master build.
Comment 14 Lionel Elie Mamane 2013-01-14 09:59:50 UTC
Version field is *oldest* (not newest) version where reproduced.

Please put "reproduced in newer version" in a comment, saying exactly which version (for nightly/private builds, give build ID and approx date of last commit/pull).
Comment 15 Josh 2013-02-03 09:33:09 UTC
I can reproduce this with 3.6.5.2 on Windows 8. Is it being worked on?
Comment 16 Michael Meeks 2013-02-07 20:09:26 UTC
Can we get a trace of this ? It is quite possible that we need to get a breakpoint in _exit to see where it is called from; it is entirely possible that we need to run the app then insert a breakpoint into: __cxa_throw, continue and then dump traces for all exceptions until the one that causes the exit - but it'd be good to know where in the code that is coming from.

Thanks !
Comment 17 Julien Nabet 2013-02-07 22:15:09 UTC
(In reply to comment #16)
> Can we get a trace of this ?

I'd like to but after building master sources + "make dev-install", how to disable temporarely Base?
Comment 18 Rainer Bielefeld Retired 2013-02-08 05:31:45 UTC
I can only contribute my experience with WIN: The only way to get rid of the Bas module (or an other one) is to install LibO with Custom installation and to disable Base during installation. I am pretty sure that that also works for parallel installation. I am also able to disable Base from WIN System Control (Uninstall-Repair-Modify). But I never found a way to do that for a Server installaiton. Theory is that the .msi in the folder with the server installation should be able to do that, but I failed. 

What ever that might mean for Linux.
Comment 19 Julien Nabet 2013-02-08 21:19:20 UTC
bfoman: would you have some time to give a try to this bug to retrieve an useful bt?
Comment 20 bfoman (inactive) 2013-02-08 22:20:04 UTC
Will check.
Comment 21 bfoman (inactive) 2013-02-11 10:04:37 UTC
Created attachment 74595 [details]
Bug 48775 - WinDbg session with FAILED_SOURCE_CODE

Confirmed with:
LO 4.0.0.3
Build ID: own W7 debug build
Windows 7 Professional SP1 64 bit

Uninstall Base component (if installed). Go to Tools>Bibliography Database - instant crash. Attached full WinDbg session with FAILED_SOURCE_CODE.
Comment 22 Joel Madero 2013-02-12 21:55:09 UTC
Personally I don't see this as a MAB as it only happens under very specific situations that only affect a very small number of users (custom install + try to do biblio stuff) but I'll defer to Rainer's judgment....moving to 3.6 MAB so that we can close the 3.5 meta tracker (as 3.5 is no longer being supported).

Also marking as NEW as bfoman did his magic and got us a bt :)
Comment 23 bfoman (inactive) 2013-02-23 19:03:51 UTC
*** Bug 57196 has been marked as a duplicate of this bug. ***
Comment 24 Michael Meeks 2013-05-20 11:49:25 UTC
In master, Bjoern added this nice packagekit hook to allow people to install the 'base' module - which (I guess) mostly fixes the user experience here for Ubuntu.

I added a check for an exception on load there; we should silently fail in the case that the database is not installed - better than a crash for sure. Since I can't reproduce, testing is much appreciated ! :-)

Thanks for the trace bfoman - very helpful ...
Comment 25 Commit Notification 2013-05-20 11:51:04 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=e58b0ce9ccb531b01298bfb18cbeb042892efc92

fdo#48775 - presumed fix for missing bibliography database exception crash.



The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 26 clemty 2013-09-09 19:38:36 UTC
Version: 4.1.1.2
Build ID: 7e4286b58adc75a14f6d83f53a03b6c11fa2903
(Windows 7 64bit)
(installed: writer, calc, impress; no base)

just tried this again (started writer with new document, Tools->Bibliography database, instant crash)

reopening since fdo#48775 is supposedly fixed in 4.1.0: https://wiki.documentfoundation.org/Releases/4.1.0/Beta1
Comment 27 Michael Meeks 2013-09-09 20:06:16 UTC
clemty: we need a new trace - this is one of those wonderful bugs that gives and gives I guess :-) it'd be great if whomever distributes LibreOffice in this mode fixes it (or distributes base too ;-).
Comment 28 clemty 2013-09-09 20:39:52 UTC
Michael, that's the official installer from https://www.libreoffice.org/download - the setup lets me choose which components to install and since I only use writer, calc and impress it makes no sense for me to install base if setup offers me a choice
Comment 29 Björn Michaelsen 2013-09-09 22:41:51 UTC
@Michael: So that snipe goes back to TDF builds as its Windows version allows for this brokeness. Note that the Ubuntu version (which you are aiming at) actually pops up a session installer dialog and asks for base to be installed.

So: Not a Linux bug (as Debian/Ubuntu handle it properly AFIAC and TDF Linux builds have an empty "base" package anyway).
Comment 30 Lionel Elie Mamane 2013-09-10 04:29:20 UTC
(In reply to comment #29)
> Note that the Ubuntu version (which you are aiming at)
> actually pops up a session installer dialog and asks
> for base to be installed.

Could we have a look at the patch that does that, please?
Link (assuming Ubuntu has something like
http://patch-tracker.debian.org/) or attach it here.

> (... TDF Linux builds have an empty "base" package anyway).

Quid? TDF GNU/Linux builds don't ship base?
Comment 31 Björn Michaelsen 2013-09-10 08:34:26 UTC
Code is upstream and around here:

 http://opengrok.libreoffice.org/xref/core/sfx2/source/appl/appserv.cxx#140

(except that the restart doesnt work and needs to be done manually, but thats not mission critical)

> Quid? TDF GNU/Linux builds don't ship base?

It seems TDF build ships everything in core and the base package is a fake empty package.
Comment 32 clemty 2014-01-04 20:01:44 UTC
I just tried to reproduce this with Version: 4.2.0.1 / Build ID: 7bf567613a536ded11709b952950c9e8f7181a4a (on Windows 7)

This bug should be now avoided since windows installation was changed to automatically install all parts of LibreOffice (including the Base module, which is needed for the bibliography database) (see https://wiki.documentfoundation.org/ReleaseNotes/4.2#Installer )

I installed 4.2.0.1 over the older version (I think it was 4.1.2.3) and the base module was not installed (no File->New->Database menu entry, crash was reproducible). The bug was however resolved after I deinstalled the older LibreOffice, then reinstalled 4.2.0.1 instead of merely upgrading (Base is then installed).

For this reason I'm changing the status from NEEDINFO to NEW since imo either during upgrade setup needs to make sure base is installed even when it wasn't before or to make this explicit in the documentation.

OTOH, feel free to close this bug if you feel this bug is now resolved for Windows or you can't reproduce.
Comment 33 Björn Michaelsen 2014-01-17 09:58:35 UTC
(This is an automated message.)

Setting priority to highest as this is a 4.0 MAB. This is part of an effort to make the importance of MAB reflected in priority too.
Comment 34 Björn Michaelsen 2014-01-17 19:33:33 UTC
(In reply to comment #32)
> I installed 4.2.0.1 over the older version (I think it was 4.1.2.3) and the
> base module was not installed (no File->New->Database menu entry, crash was
> reproducible). The bug was however resolved after I deinstalled the older
> LibreOffice, then reinstalled 4.2.0.1 instead of merely upgrading (Base is
> then installed).

Closing this one as WORKSFORME then. Forcing to always install all components even on update is an different issue IMHO and should get a new bug then.