Bug#617596: libreoffice-base mangles data on trivial .odb database

March 09th, 2011 - 03:50 pm ET by Daniel Kahn Gillmor | Report spam
This is a multi-part MIME message sent by reportbug.


MIME-Version: 1.0

Package: libreoffice-base
Version: 1:3.3.1-1
Severity: grave
Justification: causes non-serious data loss

The data loss here is "non-serious" only because this is a trival
database. If i had this happen to a database that i cared about, i
would be unhappy.

To reproduce:

0) run "libreoffice"

1) click "Database"

2) choose "Create a new database", click "Next"

3) "Yes, register the database for me" (it's not clear what this
means), and "Open the database for editing"; click "Finish"

4) choose a file name ("test.odb") and click "Save"

5) "Create Table in Design View..."

6) (in design view) add 4 columns:
* id (Integer [INTEGER])
* testa (Text [VARCHAR])
* testb (Date [DATE])
* testc (Number [NUMERIC])

7) click "Save" on toolbar, accept default name "Test1"

8) on "No primary key: Should a primary key be created now" prompt,
choose "Yes" (i observe that it creates a column named "ID" in
addition to the "id" column that already exists. maybe this is
the root of the problem?)

9) (back in main window) right-click new Table1, choose "Open", enter
some example rows.

10) for testb, i entered "2011-02-03", and when i hit tab, it turned
into "40577". in testc, i put "123", and it gave me "40577"

Thanks for maintaining libreoffice in debian! I hope this can get
sorted out.


PS i'm attaching the generated .odb file (i saved it) if it will help
with debugging.

Debian Release: wheezy/sid
APT prefers testing
APT policy: (500, 'testing'), (200, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 2.6.37-2-686 (SMP w/1 CPU core)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages libreoffice-base depends on:
ii gcj-4.4-jre [java5-run 4.4.5-9 Java runtime environment using GIJ
ii libc6 2.11.2-11 Embedded GNU C Library: Shared lib
ii libgcc1 1:4.5.2-4 GCC support library
ii libhsqldb-java 1.8.0.10-9 Java SQL database engine
ii libreoffice-base-core 1:3.3.1-1 office productivity suite -- share
ii libreoffice-core 1:3.3.1-1 office productivity suite -- arch-
ii libreoffice-java-commo 1:3.3.1-1 office productivity suite -- arch-
ii libstdc++6 4.5.2-4 The GNU Standard C++ Library v3
ii libstlport4.6ldbl 4.6.2-7 STLport C++ class library
ii ure 1.7.0+LibO3.3.1-1 LibreOffice UNO runtime environmen

libreoffice-base recommends no packages.

Versions of packages libreoffice-base suggests:
pn libmysql-java | libpg-java | <none> (no description available)
pn libreoffice-gcj <none> (no description available)
pn libreoffice-report-builder <none> (no description available)
ii libsqliteodbc 0.88-1 ODBC driver for SQLite embedded da
ii unixodbc 2.2.14p2-2 ODBC tools libraries

Versions of packages libreoffice-core depends on:
ii fontconfig 2.8.0-2.1 generic font configuration library
ii libatk1.0-0 1.30.0-1 The ATK accessibility toolkit
ii libc6 2.11.2-11 Embedded GNU C Library: Shared lib
ii libcairo2 1.8.10-6 The Cairo 2D vector graphics libra
ii libcurl3-gnutls 7.21.3-1 Multi-protocol file transfer libra
ii libdb4.8 4.8.30-4 Berkeley v4.8 Database Libraries [
ii libexpat1 2.0.1-7 XML parsing C library - runtime li
ii libfontconfig1 2.8.0-2.1 generic font configuration library
ii libfreetype6 2.4.4-1 FreeType 2 font engine, shared lib
ii libgcc1 1:4.5.2-4 GCC support library
ii libglib2.0-0 2.28.1-1+b1 The GLib library of C routines
ii libgraphite3 1:2.3.1-0.2 SILGraphite - a "smart font" rende
ii libgstreamer-plugins 0.10.30-1 GStreamer libraries from the "base
ii libgstreamer0.10-0 0.10.30-1 Core GStreamer libraries and eleme
ii libgtk2.0-0 2.20.1-2 The GTK+ graphical user interface
ii libhunspell-1.2-0 1.2.14-4 spell checker and morphological an
ii libhyphen0 2.7.1-3 ALTLinux hyphenation library - sha
ii libice6 2:1.0.7-1 X11 Inter-Client Exchange library
ii libicu44 4.4.2-2 International Components for Unico
ii libjpeg62 6b1-1 The Independent JPEG Group's JPEG
ii libmythes-1.2-0 2:1.2.1-1 simple thesaurus library
ii libneon27-gnutls 0.29.5-3 An HTTP and WebDAV client library
ii libnspr4-0d 4.8.7-2 NetScape Portable Runtime Library
ii libnss3-1d 3.12.8-2 Network Security Service libraries
ii libpango1.0-0 1.28.3-1+squeeze1 Layout and rendering of internatio
ii libpng12-0 1.2.44-1 PNG library - runtime
ii librdf0 1.0.13-2 Redland Resource Description Frame
ii libreoffice-common 1:3.3.1-1 office productivity suite -- arch-
ii libsm6 2:1.2.0-1 X11 Session Management library
ii libssl0.9.8 0.9.8o-5 SSL shared libraries
ii libstdc++6 4.5.2-4 The GNU Standard C++ Library v3
ii libstlport4.6ldbl 4.6.2-7 STLport C++ class library
ii libx11-6 2:1.4.1-5 X11 client-side library
ii libxaw7 2:1.0.9-2 X11 Athena Widget library
ii libxext6 2:1.2.0-2 X11 miscellaneous extension librar
ii libxinerama1 2:1.1.1-1 X11 Xinerama extension library
ii libxml2 2.7.8.dfsg-2 GNOME XML library
ii libxrandr2 2:1.3.1-1 X11 RandR extension library
ii libxrender1 1:0.9.6-1 X Rendering Extension client libra
ii libxslt1.1 1.1.26-6 XSLT 1.0 processing library - runt
ii libxt6 1:1.0.9-2 X11 toolkit intrinsics library
ii ttf-opensymbol 2:2.4.3+LibO3.3.1-1 OpenSymbol TrueType font
ii ure 1.7.0+LibO3.3.1-1 LibreOffice UNO runtime environmen
ii zlib1g 1:1.2.3.4.dfsg-3 compression library - runtime

Versions of packages libreoffice-base is related to:
pn libmyodbc <none> (no description available)
pn libmysql-java <none> (no description available)
pn libpg-java <none> (no description available)
pn libsapdbc-java <none> (no description available)
ii libsqliteodbc 0.88-1 ODBC driver for SQLite embedded da
pn mdbtools <none> (no description available)
pn odbc-postgresql <none> (no description available)
pn tdsodbc <none> (no description available)
ii unixodbc 2.2.14p2-2 ODBC tools libraries


MIME-Version: 1.0

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
AAA--==86883132==--



To UNSUBSCRIBE, email to debian-bugs-dist-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
email Follow the discussionReplies 4 repliesReplies Make a reply

Replies

#1 Rene Engelhard
March 09th, 2011 - 04:40 pm ET | Report spam
Hi,

On Wed, Mar 09, 2011 at 03:42:18PM -0500, Daniel Kahn Gillmor wrote:
Package: libreoffice-base
Version: 1:3.3.1-1
Severity: grave
Justification: causes non-serious data loss



Come on. You see this in the *first* entry you do in the table. Immediately.
And you get a report with *THAT* record, you have to fix it then anyways.

I'd more argue that this is important.

The data loss here is "non-serious" only because this is a trival
database. If i had this happen to a database that i cared about, i
would be unhappy.



If I had a database I would care about I'd not use Base. And Especially not
hsqldb.

Actually I am seriously surprised that you do :)

0) run "libreoffice"

1) click "Database"

2) choose "Create a new database", click "Next"

3) "Yes, register the database for me" (it's not clear what this
means), and "Open the database for editing"; click "Finish"

4) choose a file name ("test.odb") and click "Save"



So it's hsqldb... If you had a database you cared about you probably
would use MySQL or PostgreSQL via the connectors ;-)

8) on "No primary key: Should a primary key be created now" prompt,
choose "Yes" (i observe that it creates a column named "ID" in
addition to the "id" column that already exists. maybe this is
the root of the problem?)



Well, there I question your actions. You have an "id" and then still leave
LibO to do your primary key? Why not cancel and fix to make id primary key?
It shouldn't break this way, admittedly, but I would have expected pepople
to fix it if they *added an 'id' themselves*.

Anyway, confirmed. OpenOffice.org 3.2.1 seems to give a "NumberFormatException"
in the same scenario.

This seems to be related to the folllowing I found at
http://rlogiacco.blogspot.com/2009/...ption.html:
"
Well the problem is HSQLDB converts all identifiers to upper case unless you use the double quote notation!!!! The query then should be issued as

select * from auth."property"

If you query the database meta data you can see the problem in the auth schema name: it's real name is AUTH, all uppercase letters!

The problem here is HSQLDB is case sensitive but implicitly converts all your table names and column names to upper case! Yes the problem occur on column names too, in fact the following query fails with a No such column exception:

select "id" from auth."property"

Thats because the id column was implicitly renamed to ID... sigh!
"

Grüße/Regards,

René
.''`. René Engelhard -- Debian GNU/Linux Developer
: :' : http://www.debian.org | http://people.debian.org/~rene/
`. `' | GnuPG-Key ID: D03E3E70
`- Fingerprint: E12D EA46 7506 70CF A960 801D 0AA0 4571 D03E 3E70



To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact

Similar topics