Bug 465515 - openoffice.org2 uno cache corruption causing crashes trying to open MS Word 8 docs, etc.
openoffice.org2 uno cache corruption causing crashes trying to open MS Word 8...
Product: Fedora
Classification: Fedora
Component: openoffice.org (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Caolan McNamara
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2008-10-03 13:45 EDT by Sami Farin
Modified: 2008-10-20 03:57 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2008-10-20 03:57:05 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
java segfault report (19.55 KB, text/plain)
2008-10-03 14:25 EDT, Sami Farin
no flags Details
uno log (10.70 KB, text/plain)
2008-10-04 08:38 EDT, Sami Farin
no flags Details

External Trackers
Tracker ID Priority Status Summary Last Updated
OpenOffice.org 94938 None None None Never

  None (edit)
Description Sami Farin 2008-10-03 13:45:20 EDT
Description of problem:
openoffice 3 can not open MS Word 8 docs, openoffice 2.4 worked OK

I know this because I have a html file I converted from a MS Word 8 doc (date is 2008-05-25 and it has GENERATOR "OpenOffice.org 2.4  (Unix)".

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. ooffice some.doc
Actual results:
nothing much happens when I do step 1: ooffice exits silently, no kernel messages (e.g., segfaults).
however, if I press CTRL-O in office and load the same doc, I get these:

(I)    x.org loaded video driver of...
(III)  Desktop is: not GNOME
(IV)   openoffice.org-kde version is: package openoffice.org-kde is not installed
(V)    libgcj version is: libgcj-4.3.2-4-x86_64
(VI)   kernel is: Linux #20 SMP Mon Sep 8 16:21:17 EEST 2008 x86_64 x86_64 x86_64
(VII)  OpenOffice.org core rpm version is: openoffice.org-core-3.0.0-9.1.fc10-x86_64
(VIII) accessibility is: true
(IX)   redhat release is: release 5.0 (Hurricane)
(X)    LANG is: fi_FI.UTF-8
...start free space details ...
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda6             29288224  26939680   2348544  92% /
/dev/sda7             19532800  14199692   5333108  73% /var
...end free space details ...
...start (default) java details ...
java version "1.6.0_0"
OpenJDK  Runtime Environment (build 1.6.0_0-b11)
OpenJDK 64-Bit Server VM (build 1.6.0_0-b11, mixed mode)
...end (default) java details ...
...start sestatus details ...
SELinux status:                 disabled
...end sestatus details ...
...start stackreport details ...
0x639bbb: 0x1eb828: /usr/lib64/openoffice.org3/program/../basis-link/ure-link/lib/libuno_sal.so.3 + 0x37bbb
0x63a7d3: 0x1eb828: /usr/lib64/openoffice.org3/program/../basis-link/ure-link/lib/libuno_sal.so.3 + 0x387d3
0x300780ed30: 0x15da8: /lib64/libpthread.so.0 + 0xed30
0x3000c32215: 0x165b40: /lib64/libc.so.6 + 0x32215 (gsignal + 0x35)
0x3000c33d83: 0x165b40: /lib64/libc.so.6 + 0x33d83 (abort + 0x183)
0x30110c5904: 0xf4398: /usr/lib64/libstdc++.so.6 + 0xc5904 (__gnu_cxx::__verbose_terminate_handler() + 0x114)
0x30110c3d06: 0xf4398: /usr/lib64/libstdc++.so.6 + 0xc3d06
0x30110c3d33: 0xf4398: /usr/lib64/libstdc++.so.6 + 0xc3d33
0x30110c3e1a: 0xf4398: /usr/lib64/libstdc++.so.6 + 0xc3e1a
0x7f3872207d7e: 0x3a9b8: /usr/lib64/openoffice.org3/program/../basis-link/program/libfwilx.so + 0x18d7e (framework::TransactionManager::impl_throwExceptions(framework::EExceptionMode, framework::ERejectReason) const + 0x11e)
0x7f3872207e4e: 0x3a9b8: /usr/lib64/openoffice.org3/program/../basis-link/program/libfwilx.so + 0x18e4e (framework::TransactionManager::registerTransaction(framework::EExceptionMode, framework::ERejectReason&) + 0x9e)
0x7f386754c7da: 0x305a88: /usr/lib64/openoffice.org3/program/../basis-link/program/libfwklx.so + 0xe67da
0x14c886a: 0x401988: /usr/lib64/openoffice.org3/program/../basis-link/program/libsfxlx.so + 0x2a586a
0x14a68bd: 0x401988: /usr/lib64/openoffice.org3/program/../basis-link/program/libsfxlx.so + 0x2838bd
0x14a76b0: 0x401988: /usr/lib64/openoffice.org3/program/../basis-link/program/libsfxlx.so + 0x2846b0
0x7f3874324ea3: 0x3f0dc8: /usr/lib64/openoffice.org3/program/../basis-link/program/libvcllx.so + 0xf4ea3 (Timer::ImplTimerCallbackProc() + 0x83)
0x7f386c4aa43e: 0x554c8: /usr/lib64/openoffice.org/basis3.0/program/libvclplug_gtklx.so + 0x1943e
0x300d43832d: 0xe1200: /lib64/libglib-2.0.so.0 + 0x3832d
0x300d437b43: 0xe1200: /lib64/libglib-2.0.so.0 + 0x37b43 (g_main_context_dispatch + 0x243)
0x300d43b37d: 0xe1200: /lib64/libglib-2.0.so.0 + 0x3b37d
0x300d43b52c: 0xe1200: /lib64/libglib-2.0.so.0 + 0x3b52c (g_main_context_iteration + 0x6c)
0x7f386c4aa295: 0x554c8: /usr/lib64/openoffice.org/basis3.0/program/libvclplug_gtklx.so + 0x19295
0x7f387432006e: 0x3f0dc8: /usr/lib64/openoffice.org3/program/../basis-link/program/libvcllx.so + 0xf006e (Application::Yield(bool) + 0x3e)
0x7f38743200e7: 0x3f0dc8: /usr/lib64/openoffice.org3/program/../basis-link/program/libvcllx.so + 0xf00e7 (Application::Execute() + 0x27)
0x139035: 0x73f58: /usr/lib64/openoffice.org3/program/../basis-link/program/libsofficeapp.so + 0x29035
0x7f3874324684: 0x3f0dc8: /usr/lib64/openoffice.org3/program/../basis-link/program/libvcllx.so + 0xf4684
0x7f3874324725: 0x3f0dc8: /usr/lib64/openoffice.org3/program/../basis-link/program/libvcllx.so + 0xf4725 (SVMain() + 0x25)
0x16bc4c: 0x73f58: /usr/lib64/openoffice.org3/program/../basis-link/program/libsofficeapp.so + 0x5bc4c (soffice_main + 0x9c)
0x400f8b: 0x1928: /usr/lib64/openoffice.org3/program/soffice.bin + 0xf8b (main + 0xb)
0x3000c1e32a: 0x165b40: /lib64/libc.so.6 + 0x1e32a (__libc_start_main + 0xfa)
0x400eb9: 0x1928: /usr/lib64/openoffice.org3/program/soffice.bin + 0xeb9
...end stackreport details ...
...start sample ldd details ...
	linux-vdso.so.1 =>  (0x00007fff24d27000)
	libgtk-x11-2.0.so.0 => /usr/lib64/libgtk-x11-2.0.so.0 (0x000000000036c000)
	libgdk-x11-2.0.so.0 => /usr/lib64/libgdk-x11-2.0.so.0 (0x000000000094c000)
	libatk-1.0.so.0 => /usr/lib64/libatk-1.0.so.0 (0x0000000000bea000)
	libgio-2.0.so.0 => /lib64/libgio-2.0.so.0 (0x0000000000e0b000)
	libpangoft2-1.0.so.0 => /usr/lib64/libpangoft2-1.0.so.0 (0x00000000b13e1000)
	libgdk_pixbuf-2.0.so.0 => /usr/lib64/libgdk_pixbuf-2.0.so.0 (0x0000000078c5a000)
	libpangocairo-1.0.so.0 => /usr/lib64/libpangocairo-1.0.so.0 (0x00000000eebf4000)
	libcairo.so.2 => /usr/lib64/libcairo.so.2 (0x0000000084f9c000)
	libpango-1.0.so.0 => /usr/lib64/libpango-1.0.so.0 (0x00000000976ee000)
	libfreetype.so.6 => /usr/lib64/libfreetype.so.6 (0x000000006dbf2000)
	libfontconfig.so.1 => /usr/lib64/libfontconfig.so.1 (0x000000005e512000)
	libgmodule-2.0.so.0 => /lib64/libgmodule-2.0.so.0 (0x000000000430c000)
	libgthread-2.0.so.0 => /lib64/libgthread-2.0.so.0 (0x00000000ef252000)
	librt.so.1 => /lib64/librt.so.1 (0x00000000fbb74000)
	libdbus-glib-1.so.2 => /usr/lib64/libdbus-glib-1.so.2 (0x000000005f78f000)
	libdbus-1.so.3 => /lib64/libdbus-1.so.3 (0x0000000004ceb000)
	libgobject-2.0.so.0 => /lib64/libgobject-2.0.so.0 (0x000000006ed14000)
	libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00000000b8aca000)
	libvclplug_genlx.so => /usr/lib64/openoffice.org/basis3.0/program/libvclplug_genlx.so (0x000000003cb51000)
	libvcllx.so => /usr/lib64/openoffice.org/basis3.0/program/libvcllx.so (0x0000000047ca0000)
	libpsplx.so => /usr/lib64/openoffice.org/basis3.0/program/libpsplx.so (0x0000000079d21000)
	libsotlx.so => /usr/lib64/openoffice.org/basis3.0/program/libsotlx.so (0x000000004be3b000)
	libutllx.so => /usr/lib64/openoffice.org/basis3.0/program/libutllx.so (0x000000001c96a000)
	libtllx.so => /usr/lib64/openoffice.org/basis3.0/program/libtllx.so (0x00000000baa06000)
	libcomphelp4gcc3.so => /usr/lib64/openoffice.org/basis3.0/program/libcomphelp4gcc3.so (0x00000000af0d1000)
	libucbhelper4gcc3.so => /usr/lib64/openoffice.org/basis3.0/program/libucbhelper4gcc3.so (0x00000000d8842000)
	libuno_cppuhelpergcc3.so.3 => /usr/lib64/openoffice.org/basis3.0/program/../ure-link/lib/libuno_cppuhelpergcc3.so.3 (0x000000002420c000)
	libuno_cppu.so.3 => /usr/lib64/openoffice.org/basis3.0/program/../ure-link/lib/libuno_cppu.so.3 (0x000000007b994000)
	libvos3gcc3.so => /usr/lib64/openoffice.org/basis3.0/program/libvos3gcc3.so (0x000000007a527000)
	libuno_sal.so.3 => /usr/lib64/openoffice.org/basis3.0/program/../ure-link/lib/libuno_sal.so.3 (0x00000000f9258000)
	libXrandr.so.2 => /usr/lib64/libXrandr.so.2 (0x000000004de5d000)
	libX11.so.6 => /usr/lib64/libX11.so.6 (0x000000000d76b000)
	libXext.so.6 => /usr/lib64/libXext.so.6 (0x00000000e0838000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00000000cdbfa000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00000000c55f3000)
	libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x0000000026fb5000)
	libm.so.6 => /lib64/libm.so.6 (0x00000000eaa1c000)
	libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000000044ad6000)
	libc.so.6 => /lib64/libc.so.6 (0x00000000c5d15000)
	libXcomposite.so.1 => /usr/lib64/libXcomposite.so.1 (0x0000000092f7e000)
	libXdamage.so.1 => /usr/lib64/libXdamage.so.1 (0x0000000001080000)
	libXfixes.so.3 => /usr/lib64/libXfixes.so.3 (0x000000006efe6000)
	libpng12.so.0 => /usr/lib64/libpng12.so.0 (0x000000005440b000)
	libXrender.so.1 => /usr/lib64/libXrender.so.1 (0x000000007fc8f000)
	libXinerama.so.1 => /usr/lib64/libXinerama.so.1 (0x00000000b43da000)
	libXi.so.6 => /usr/lib64/libXi.so.6 (0x0000000021b86000)
	libXcursor.so.1 => /usr/lib64/libXcursor.so.1 (0x00000000d2493000)
	libselinux.so.1 => /lib64/libselinux.so.1 (0x000000008dbab000)
	libpixman-1.so.0 => /usr/lib64/libpixman-1.so.0 (0x00000000b3b3d000)
	libz.so.1 => /lib64/libz.so.1 (0x00000000d0096000)
	libexpat.so.1 => /lib64/libexpat.so.1 (0x0000000020d75000)
	/lib64/ld-linux-x86-64.so.2 (0x0000003000000000)
	libcap.so.2 => /lib64/libcap.so.2 (0x00000000599b4000)
	libSM.so.6 => /usr/lib64/libSM.so.6 (0x00000000f366f000)
	libICE.so.6 => /usr/lib64/libICE.so.6 (0x0000000001282000)
	libi18nisolang1gcc3.so => /usr/lib64/openoffice.org/basis3.0/program/libi18nisolang1gcc3.so (0x00000000e8851000)
	libbasegfxlx.so => /usr/lib64/openoffice.org/basis3.0/program/libbasegfxlx.so (0x000000007490a000)
	libicuuc.so.40 => /usr/lib64/libicuuc.so.40 (0x000000002d544000)
	libicule.so.40 => /usr/lib64/libicule.so.40 (0x00000000e3885000)
	libjvmaccessgcc3.so.3 => /usr/lib64/openoffice.org/basis3.0/program/../ure-link/lib/libjvmaccessgcc3.so.3 (0x00000000a6df1000)
	libuno_salhelpergcc3.so.3 => /usr/lib64/openoffice.org/basis3.0/program/../ure-link/lib/libuno_salhelpergcc3.so.3 (0x000000003dff7000)
	libcrypt.so.1 => /lib64/libcrypt.so.1 (0x000000003a865000)
	libxcb-xlib.so.0 => /usr/lib64/libxcb-xlib.so.0 (0x00000000c32fc000)
	libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x0000000097b0c000)
	libXau.so.6 => /usr/lib64/libXau.so.6 (0x0000000061a43000)
	libuuid.so.1 => /lib64/libuuid.so.1 (0x000000000149e000)
	libicudata.so.40 => /usr/lib64/libicudata.so.40 (0x00007fc05001b000)
	libXdmcp.so.6 => /usr/lib64/libXdmcp.so.6 (0x00000000dc30c000)
...end sample ldd details ...

Expected results:
loading the doc like openoffice 2.4 did

Additional info:
I have tried "rm -rf ~/.openoffice.org"
Comment 1 Sami Farin 2008-10-03 14:21:34 EDT
Ohh, java had created hs_err_pid*.log

00000000  2441              and al,0x41
00000002  894220            mov [rdx+0x20],eax
00000005  EB04              jmp short 0xb
00000007  33C0              xor eax,eax
00000009  EBF2              jmp short 0xfffffffffffffffd
0000000B  4883C450          add rsp,byte +0x50
0000000F  5D                pop rbp

segfault here --->
00000010  85051EA486E6      test [rel 0xffffffffe686a434],eax
00000016  C3                ret
00000017  418BEB            mov ebp,r11d
0000001A  FFC5              inc ebp
0000001C  BE                db 0xBE
0000001D  E4FF              in al,0xff
0000001F  FF                db 0xFF
Comment 2 Sami Farin 2008-10-03 14:25:08 EDT
Created attachment 319402 [details]
java segfault report
Comment 3 Caolan McNamara 2008-10-03 18:25:15 EDT
a) Can you attach the original document that causes the crash when you attempt to load it ?

b) is this KDE, or something else ?

c) I note that your locale is Finnish, which is slightly unusual in that the spellchecker for Finnish is voikko-extension-based rather than hunspell-based, so it *may* be possible that this is related to a specific language/OOo extension. So it may matter what locale OOo is launched under, or what language the document uses as the document language.

d) Though, if I recall correctly, the voikko extension is C++, not java. So a hotspot crash seems very strange. Do you have any java OOo extensions installed ? i.e. the output of

unopkg list --shared

(for system extensions)


unopkg list

(for user extensions, though rm ~/.openoffice.org* should rule that out)
Comment 4 Sami Farin 2008-10-03 18:58:51 EDT
a) actually, now that I tried, it does not matter what I open, I can just do
"ooffice /dev/null" , and get the same effect.

b) openbox


"LANG=C LC_CTYPE=C LC_MESSAGES=C ooffice some.doc" does not help.
starting with "env - /usr/bin/ooffice some.doc" results into infinite loop, maybe if I cared I would file another bug report

#0  0x000000300d461c12 in g_once_init_enter_impl ()
#1  0x0000003009d788cc in gtk_recent_manager_get_type ()
#2  0x0000003009d79546 in gtk_recent_manager_add_item ()
#3  0x0000000003f279c6 in SystemShell::AddToRecentDocumentList ()
#4  0x0000000003d856d2 in SfxObjectShell::DoLoad ()
#5  0x0000000003dd2812 in SfxBaseModel::load ()
#6  0x0000000003e209c7 in ?? ()
#7  0x00007fcc14e22ce1 in FontList::~FontList ()
#8  0x00007fcc14e234a8 in FontList::~FontList ()
#9  0x00007fcc14e1763b in FontList::~FontList ()
#10 0x00007fcc14e17b68 in FontList::~FontList ()
#11 0x0000000000ac91d1 in comphelper::SynchronousDispatch::dispatch ()
#12 0x000000000014eba7 in Config::SetGroup ()
#13 0x0000000000162515 in Config::SetGroup ()
#14 0x000000000013cc71 in Config::SetGroup ()
#15 0x000000000013e1cc in Config::SetGroup ()
#16 0x00000000014fbcc9 in ?? ()
#17 0x00007fcc190795b7 in SvpSalInstance::Yield ()
#18 0x000000000131306e in Application::Yield ()
#19 0x00000000013130e7 in Application::Execute ()
#20 0x0000000000139035 in Config::SetGroup ()
#21 0x0000000001317684 in ?? ()
#22 0x0000000001317725 in SVMain ()
#23 0x000000000016bc4c in soffice_main ()
#24 0x0000000000400f8b in main ()

$ unopkg list --shared

ERROR: Error binding package: vnd.sun.star.expand:$UNO_SHARED_PACKAGES_CACHE/uno_packages/YcPH1R_/sun-presentation-minimizer.oxt
       Cause: an error occured during file opening

unopkg failed.

I have only these:
-rw-r--r-- 1 root xuser  0 2008-10-03 20:11:59.083455883 +0300 /usr/lib64/openoffice.org3/share/uno_packages/cache/uno_packages/JnkS7e
drwxr-xr-x 2 root xuser 26 2008-10-03 20:11:59.086456155 +0300 /usr/lib64/openoffice.org3/share/uno_packages/cache/uno_packages/JnkS7e_
-rw-r--r-- 1 root xuser  0 2008-10-03 20:15:47.681456643 +0300 /usr/lib64/openoffice.org3/share/uno_packages/cache/uno_packages/PEIjDV
drwxr-xr-x 2 root xuser 29 2008-10-03 20:15:47.688455132 +0300 /usr/lib64/openoffice.org3/share/uno_packages/cache/uno_packages/PEIjDV_
-rw-r--r-- 1 root xuser  0 2008-10-03 20:12:08.175455249 +0300 /usr/lib64/openoffice.org3/share/uno_packages/cache/uno_packages/y9B18j
drwxr-xr-x 2 root xuser 29 2008-10-03 20:12:08.182455247 +0300 /usr/lib64/openoffice.org3/share/uno_packages/cache/uno_packages/y9B18j_

$ unopkg list
all deployed user packages:

$ man unopkg
No manual entry for unopkg

$ unopkg add /usr/lib64/openoffice.org/extensions/*         

ERROR: unknown error!

unopkg failed.

# unopkg reinstall --shared /usr/lib64/openoffice.org/extensions/*

ERROR: Error binding package: vnd.sun.star.expand:$UNO_SHARED_PACKAGES_CACHE/uno_packages/YcPH1R_/sun-presentation-minimizer.oxt
       Cause: an error occured during file opening

unopkg failed.

I give up.
Comment 5 Sami Farin 2008-10-03 19:27:57 EDT
OK, I drank three cups of coffee.  Next round:
rm -rf /usr/lib64/openoffice.org3/share/uno_packages/cache/uno_packages*
unopkg add --shared /usr/lib64/openoffice.org/extensions/*
(then fix permissions because unopkg is too stupid to make them world-readable even when using --shared)

Then I can open my .doc book!
Comment 6 Caolan McNamara 2008-10-04 05:20:13 EDT
So the cache somehow became corrupt, which is a serious pain. I wonder though, *how* that cache got busted.

rpm --erase on the OOo components, and then manually removing any remains left over and re installing the rpms is another route to getting things "the way they are meant to be"

Was this a recent fresh install of F-10/rawhide, or a recent upgrade from F-9 to rawhide. Or is this a rawhide box that has been incrementally upgraded various times during the rawhide period ? i.e. I wonder if this corruption might have happened in a previous bad revision of OOo, or if the current one has some corruption possibility.

Either way, a mechanism to detect cache corruption and attempt to auto-fix it looks called for.
Comment 7 Sami Farin 2008-10-04 07:07:36 EDT
Well so far I have done only rpm -U , no manual rm -rf's (IIRC).

The system is based on release 5.0 (Hurricane), upgraded from release 4.2 ;-)
Last year I started the process of upgrading to 64bit versions.

Yes, it would certainly be useful if ooffice was able to say something clever about cache corruption, now that error by java and backtraces did not provide useful information.

Do you want to see the log.txt at /usr/lib64/openoffice.org/share/uno_packages/cache ?  First entry in it is 20080120 and there are some errors reported.
Comment 8 Caolan McNamara 2008-10-04 08:33:39 EDT
Yeah, that might help figure it out
Comment 9 Sami Farin 2008-10-04 08:38:35 EDT
Created attachment 319459 [details]
uno log
Comment 10 Caolan McNamara 2008-10-06 11:08:53 EDT
I think we would have gotten out of jail if we were using --force, so updates the extensions packaging spec to state that and bumped OOo and voikko and writer2latex to use --force.
Comment 11 Caolan McNamara 2008-10-20 03:57:05 EDT
Hopefully that'll avoid us getting into this situation again

Note You need to log in before you can comment on or make changes to this bug.