FS#18373 - [openoffice-base] 3.2.0-1 breaks existing database files

Attached to Project: Arch Linux
Opened by Ross Melin (rdmelin) - Wednesday, 17 February 2010, 16:20 GMT
Last edited by Andreas Radke (AndyRTR) - Saturday, 12 June 2010, 08:52 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Andreas Radke (AndyRTR)
Architecture i686
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 12
Private No

Details

Description:If I open an existing openoffice "base" database file created with an earlier version of openoffice, and then close it, when I open it a second time I get this error message:

SQL Status: HY000

The connection could not be established. The database was created by a newer version of OpenOffice.org.



Additional info:
* package version(s)
openoffice-base 3.2.0-1
go-openoffice 3.2.0.5-1 also affected
hsqldb-java 1.8.1.1-1
* config and/or log files etc.
removing existing user configs does not resolve this issue


Steps to reproduce:
Open an existing .odb file. DO NOT USE A FILE YOU WILL NEED TO ACCESS IN THE FUTURE. An example file used in a tutorial on the oooforums can be downloaded for testing from this url:
http://www.paintedfrogceramics.com/OpenOffice/employees/employees.odb
It is not necessary to edit or save the file, simply close it and reopen it. Then try to view a table, run a query, open a form or any action that requires reading the data. The above error message will be displayed.
THIS BUG WILL EAT YOUR DATA FOR BREAKFAST AND YOUR BACKUPS FOR LUNCH!
This task depends upon

Closed by  Andreas Radke (AndyRTR)
Saturday, 12 June 2010, 08:52 GMT
Reason for closing:  Fixed
Comment by Gerardo Exequiel Pozzi (djgera) - Wednesday, 17 February 2010, 20:15 GMT
  • Field changed: Status (Unconfirmed → Waiting on Response)
  • Field changed: Category (Packages: Extra → Upstream Bugs)
  • Field changed: Severity (Critical → High)
  • Task assigned to Andreas Radke (AndyRTR)
I guess, please post this bug information in upstream bugtracker.
Comment by Ross Melin (rdmelin) - Wednesday, 17 February 2010, 23:02 GMT
Regarding the change to "Upstream Bugs" please note that the openoffice-base-bin AUR package is not affected by this bug. A post on oooforum.org with this information has not drawn any response. A Google search with the error message quoted returns only links back to ArchLinux related posts.
Regarding the Severity change to High, I'm not sure that a bug which prevents your system from booting or allows an intruder is more severe than one which damages every file it touches. I would gladly reinstall from scratch and still have my database intact, thank you.
Comment by Gerardo Exequiel Pozzi (djgera) - Wednesday, 17 February 2010, 23:31 GMT
  • Field changed: Status (Waiting on Response → Assigned)
  • Field changed: Category (Upstream Bugs → Packages: Extra)
In your original bug report there is no mention about that works with AUR package.

I can also reproduce this bug in go-openoffice-3.2.0.5-1 and hsqldb-java-1.8.1.1-1

The problem is that the file "database/properties" (inside employees.odb) is writed with incorrect version number:

...
version=1.8.1 <<<<<< bad, should be 1.8.0 >>>>>>

hsqldb.cache_version=1.7.0
hsqldb.original_version=1.8.0
hsqldb.compatible_version=1.8.0

changing this fixed the document ;)
Comment by Ross Melin (rdmelin) - Thursday, 18 February 2010, 01:14 GMT
@djgera
Thank you for posting the fix for affected files!
Comment by Askhat Bakarov (sirocco) - Thursday, 18 February 2010, 03:07 GMT
version=1.8.1 <<<<<< bad, should be 1.8.0 >>>>>>

Yes, this hack helps.
Comment by Gerardo Exequiel Pozzi (djgera) - Thursday, 18 February 2010, 05:34 GMT
Note that downgrading to hsqldb-java-1.8.0.10-1 solves the issue.

* Maybe openoffice and go-openoffice should be recompiled.
* Maybe something is wrong in new hsqldb-java.

I don't know much about these software.
Comment by Doug Penner (DarwinSurvivor) - Wednesday, 24 February 2010, 00:24 GMT
I am having the same problem. Unzipping, chaning 1.8.1 to 1.8.0 (both of them) and reziping allowed me to open and edit the file ... once...
It seems that every time the file is closed (and thus saved), it changes the values *back* to 1.8.1, which prevents it from being opened again.

Running unzip, grep, zip every time I need to open the file kind of defeats the purpose of using ooBase.

Any idea on a fix schedule (even a rough one)?
Comment by Ivan (zlord) - Thursday, 25 February 2010, 08:23 GMT
same problem.

>>The problem is that the file "database/properties" (inside employees.odb) is writed with incorrect version number

thnx! this is a bad way, but it works!
Comment by Stephen Weinberg (stephen) - Friday, 02 April 2010, 12:05 GMT
The issue appears to be that OpenOffice and Go Openoffice have not been compiled against the latest hsqldb-java. OpenOffice thinks that it can only read a file created by hsqldb-java-1.8.0 while the files it creates say it was made by hsqldb-java-1.8.1.

That means it is NOT a upstream bug. It probably just needs to be recompiled.

-- Stephen
Comment by Andre Herbst (moormaster) - Saturday, 03 April 2010, 06:15 GMT
The OpenOffice sources do include a hsqldb_1_8_0.zip file including some patches ... so its not just simply recompiling the package.
Comment by Andreas Radke (AndyRTR) - Saturday, 03 April 2010, 11:10 GMT Comment by Andreas Radke (AndyRTR) - Wednesday, 12 May 2010, 20:21 GMT
Is there anything left to do? Please test the new version 3.2.1 rc1 in openoffice-base-beta pkg.

Maybe this is just an issue of our rolling release system?
Comment by Andre Herbst (moormaster) - Wednesday, 12 May 2010, 23:50 GMT
running soffice-beta, creating a new database, saving and closing the app
-> reopen soffice-beta, loading the saved database -> same sql error

openoffice-base-beta 3.2.1_ooo320_m17-1

so: Yes, there seems to be something left to do :)
Comment by Andre Herbst (moormaster) - Thursday, 13 May 2010, 12:34 GMT
I have just checked out the svn developer snapshot: svn checkout http://svn.services.openoffice.org/ooo/tags/DEV300_m63

... and compiled it this way:

$ ./configure --prefix=/usr/local/ooo --with-package-format=native --with-mingwin=/usr/bin/i486-mingw32-g++ --with-system-mozilla --with-openldap
$ make -j

this seems to work fine with the hsqldb 1.8.1 package... it is using version 1.8.0 internally without screwing up the database files
Comment by Yavuz Onder (y-man) - Saturday, 15 May 2010, 21:45 GMT
Hi guys, how exactly you look into .odb file to find the line to edit?
It's not a directory, and my attempt to find info as to its format has failed.
Please help. Thanks in advance.
Comment by Yavuz Onder (y-man) - Saturday, 15 May 2010, 21:50 GMT
Oops, I found the info. Nevermind the request above.
Comment by Andreas Radke (AndyRTR) - Friday, 04 June 2010, 04:55 GMT
new stable OOo 3.2.1 is up. I guess the problem is still there. have you talked to upstream devs/ooo-build devs if this can be solved or is a "feature"? any issue report we can follow?
Comment by Krishnan (kgas) - Thursday, 10 June 2010, 13:23 GMT
In the open-office forum I found this thread http://user.services.openoffice.org/en/forum/viewtopic.php?f=13&p=143159 . One more information that new data base could not be created with jre 6u20-1 installed but with openjdk6 a database can be created and re-opening is not possible.[open office version 3.2.1 OOO320m19(build:9505)]
Comment by Andreas Radke (AndyRTR) - Friday, 11 June 2010, 18:31 GMT
I've downgraded hsqldb-java - please check if it's working again.
Comment by Krishnan (kgas) - Saturday, 12 June 2010, 06:35 GMT
Thanks, Andreas. Now database function is back to normal.

Loading...