Bug Hunting Session
Bug 121477 - Firebird: Migration: Connection from form to subform impossible
Summary: Firebird: Migration: Connection from form to subform impossible
Status: RESOLVED DUPLICATE of bug 117589
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Base (show other bugs)
Version:
(earliest affected)
6.1.3.2 release
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: bibisected, bisected, regression
Depends on:
Blocks: Database-Firebird-Default Database-Firebird-Migration
  Show dependency treegraph
 
Reported: 2018-11-17 10:30 UTC by Robert Großkopf
Modified: 2018-12-24 16:25 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments
Open the form in this database - firebird-error apperars (37.38 KB, application/vnd.oasis.opendocument.database)
2018-11-17 10:30 UTC, Robert Großkopf
Details
bt from error message (9.57 KB, text/plain)
2018-11-17 12:19 UTC, Julien Nabet
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Robert Großkopf 2018-11-17 10:30:25 UTC
Created attachment 146702 [details]
Open the form in this database - firebird-error apperars

Open the attached database.
Open the form.
An error appears:
-----------
firebird_sdbc error:
*Dynamic SQL Error
*SQL error code = -206
*Column unknown
*LINK_FROM_ID
*At line 1, column 94
caused by
'isc_dsql_prepare'
------------
Connection to subform is impossible. Works well with LO 6.0.5.2, fails with LO 6.1.3.2 on OpenSUSE 64bit rpm Linux.
Comment 1 Julien Nabet 2018-11-17 12:19:28 UTC
Created attachment 146703 [details]
bt from error message
Comment 2 Julien Nabet 2018-11-17 12:20:12 UTC
Seeing the bt, it seems the pb concerns parameter substitution.
See https://bugs.documentfoundation.org/show_bug.cgi?id=117053#c15 to fix this.
Comment 3 MM 2018-11-17 12:57:05 UTC
Confirmed on ubuntu 16.04 x64 with Version: 6.2.0.0.alpha1+
Build ID: 726c18db3215ec74135f51365322a6b531f328af
CPU threads: 2; OS: Linux 4.4; UI render: default; VCL: gtk3; 
TinderBox: Linux-rpm_deb-x86_64@86-TDF, Branch:master, Time: 2018-11-03_19:38:55
Locale: en-US (en_US.UTF-8); Calc: threaded

Unconfirmed with Version: 6.0.0.0.alpha1+
Build ID: 637d96a25926e299fff5b4cf5a0055b1d171b23b
CPU threads: 2; OS: Linux 4.4; UI render: default; VCL: gtk2; 
TinderBox: Linux-rpm_deb-x86_64@70-TDF, Branch:master, Time: 2017-11-17_23:45:59
Locale: en-US (en_US.UTF-8); Calc: group

with 'experimental features' on
Comment 4 Robert Großkopf 2018-11-17 14:49:29 UTC
(In reply to Julien Nabet from comment #2)
> Seeing the bt, it seems the pb concerns parameter substitution.
> See https://bugs.documentfoundation.org/show_bug.cgi?id=117053#c15 to fix
> this.

It will be a problem for every person, which has created forms with subforms with Base before LO 6.1. This will be the normal behaviour for all forms with subforms in Firebird-databases created before LO 6.1. So every old form with subform will fail.

The database has been created with an older LO-version for Base-Handbuch. I have just migrated it with the migration-tool. Then I heard from other people forms with subforms doesn't work since LO 6.1 together with Firebird. So I tested this and could see the problem.

I also created a Firebird-database for an article for Linux magazine. There subforms will work well, because it has been created with Lo 6.1.2

This couldn't be a right fixing of a bug: Set old forms as buggy and let users create new *.odb-files for work around this "fix".
Comment 5 Robert Großkopf 2018-11-17 15:07:07 UTC
One hint to parameter:
<db:driver-settings db:parameter-name-substitution="true" />

This isn't set when creating a Firebird-file when migrating from an old HSQLDB. It will be set to "false" instead.

Tested with LO 6.1.3.2 and also LO 6.2.0.0.alpha1
Comment 6 Robert Großkopf 2018-12-21 18:42:12 UTC
(In reply to Robert Großkopf from comment #5)
> One hint to parameter:
> <db:driver-settings db:parameter-name-substitution="true" />
> 
> This isn't set when creating a Firebird-file when migrating from an old
> HSQLDB. It will be set to "false" instead.
> 
> Tested with LO 6.1.3.2 and also LO 6.2.0.0.alpha1

There must be wrong code created in the migration-tool. New created databases don't content any information for
db:parameter-name-substitution

I could delete 
db:parameter-name-substitution="false"
in wrong migrated databases and the subforms will work.
Comment 7 raal 2018-12-24 05:53:09 UTC
This seems to have begun at the below commit.
Adding Cc: to Lionel Elie Mamane ; Could you possibly take a look at this one?
Thanks

484b7c29140d62210c35713b2bb2a9502155f7f9 is the first bad commit
commit 484b7c29140d62210c35713b2bb2a9502155f7f9
Author: Jenkins Build User <tdf@pollux.tdf>
Date:   Thu Jan 4 12:04:35 2018 +0100

    source sha:a29d97e6ddab8ec002ba9827bd5fc874117712e0

author	Lionel Elie Mamane <lionel@mamane.lu>	2018-01-02 22:49:31 +0100
committer	Lionel Elie Mamane <lionel@mamane.lu>	2018-01-04 07:50:22 +0100
commit	a29d97e6ddab8ec002ba9827bd5fc874117712e0 (patch)
tree	cbedfb8885b7980a4ea6ebb1347e2170a969b01a
parent	1bbadad79d91005dc18a3c1e34de14d02660f6ab (diff)
tdf#104986 move named parameters substitution into generic layer
Comment 8 Lionel Elie Mamane 2018-12-24 16:25:44 UTC

*** This bug has been marked as a duplicate of bug 117589 ***