Date: prev next · Thread: first prev next last
2019 Archives by date, by thread · List index


Hi,

the migration of a (single-user) database from one RDBMS to another copes with 3 main families of issues:

(1) the SQLs are not compatible: each has its own dialect, the list of builtin functions is different, etc. This is visible each time "Direct SQL" is used in LO, i.e. when making a view or building the SQL statement programmatically or as soon as the query you need is a bit complex.

(2) the datatypes are not compatible: e.g. TIMESTAMP has a time zone in Hsqldb, has none in Firebird, ...

(3) the limits are different: e.g. VARCHAR max. length is < 2Gb in Hsqldb and  < 32K in Firebird, the max. length of a table row is < 2Gb in Firebird and <64K in Firebird, the max. length of a column name is 128B in Hsqldb and 31B in Firebird.

NB: the figures above are for Hsqldb 2.x, but, AFAIK they are also valid for version 1.8. Source = https://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems

All this means that a 100% correct and automatic migration of 98+% of the worldwide LO + embedded Hsqldb files in use IS A DREAM.

My recommendations are:

- Forget forever the idea to firmly invite for a data migration at each database opening. - Replace this by a specific menu item by which the user DECIDES to (try to ... ?) migrate. - End the migration process with a "Save As ..." type of dialog to store the result of the migration into a new file. - If the migration was partial because of incompatibilities, an error report should list them.

Other valid questions are: should we drop the migration functionality ? Should we ever drop Hsqldb ? Should we propose Hsqldb 2.x (migration of database is done by RDBMS itself ... :) ? Are there enough devs ? And, finally, what are the real benefits of running Firebird i.o. Hsqldb for our users when designing/running a NEW database ? And let's sell them, if they exist !

My 2 cents.

Jean-Pierre


Le 20/08/19 à 10:28, Julien a écrit :
Hello,

Considering the number of bugs about Firebird migration (see 
https://bugs.documentfoundation.org/show_bug.cgi?id=116968) and the fact that these bugs may not be 
trivial to fix (see 
https://wastack.wordpress.com/2018/07/25/database-migration-in-libreoffice-bug-fixes-and-more/), 
thought it could be relevant to put Firebird back to experimental or at least stop to propose 
Firebird migration when opening an odb file with hsqldb embedded.

Remark: don't misunderstand me, I'd enjoy to replace HSQLDB to help to remove Java dependency. 
Also, I know that HSQLDB upgrade has been delayed/cancelled because we had plan to replace it by 
Firebird but let's face it, I don't think we're ready to propose Firebird widely.
Let's not forget there are too few dev experts working on Base part (Lionel + Tamás + Jean-Pierre 
Ledure for specific Access part).
(I'm trying sometimes to work on Base part but most of bugs are too difficult for me and require a 
good understanding of Base mechanisms).

Now perhaps I'm too pessimistic here, so would like your opinion.

Any thoughts?

Regards,

Julien
_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.