office-gobmx/dbaccess
Stephan Bergmann 74f9830db4 Remove dead and broken EmbeddedDatabases configuration
As found out in 98c0b20864 "Make Firebird the
(unconditional) default for new databases":  "(Curiously,
ODsnTypeCollection::getEmbeddedDatabase would read a DefaultEmbeddedDatabase
value from the configuration before resorting to the hardcoded default, but
`git log -SDefaultEmbeddedDatabase` makes it look like there has never been any
code to actually write that setting.)"

Digging deeper, the story appears to be as follows:  First, "INTEGRATION: CWS
hsqldb" commits in 2004 had addded the EmbeddedDatabases group (and accompanying
templates) to officecfg/registry/schema/org/openoffice/Office/DataAccess.xcs
(ee11cb6373), corresponding values (for HSQLDB)
to officecfg/registry/data/org/openoffice/Office/DataAccess.xcu
(60c5f0af74), and code to read those values
(lcl_getEmbeddedDatabase in dbaccess/source/ui/misc/dsntypes.cxx;
ODsnTypeCollection::getEmbeddedDatabaseURL et al in
dbaccess/source/ui/misc/dsntypes.cxx; all
a68938bc90).  This looks like it actually worked.

Then, "INTEGRATION: CWS dba24b" commits in 2007 removed the EmbeddedDatabases
configuration data from
officecfg/registry/data/org/openoffice/Office/DataAccess.xcu
(473a3ccf63, "during #i80930#: The approach to
read the concrete type of the embedded DB from the configuration does not work,
there are enough places where we silently assume 'embedded == embedded HSQLDB'")
and removed the code reading it (79bbd382be), but
left the EmbeddedDatabases schema data in
officecfg/registry/schema/org/openoffice/Office/DataAccess.xcs untouched.

Then, b88a62cc97 "CWS-TOOLING: integrate CWS
dbaperf2" in 2009 reintroduced code that attempts to read the configuration data
as ODsnTypeCollection::getEmbeddedDatabase
(dbaccess/source/core/misc/dsntypes.cxx).  The reason for that may be
"2009-05-06 14:22:21 +0200 oj  r271589 : #i101587# use config for the drivers"
as listed in the commit message.  The code added as
ODsnTypeCollection::getEmbeddedDatabase back then remained effectively unchanged
until today, but looks fundamentally broken:  It starts out with trying to read
an /org.openoffice.Office.DataAccess/EmbeddedDatabases/DefaultEmbeddedDatabase/
Value property that can never be present per the schema (an
/org.openoffice.Office.DataAccess/EmbeddedDatabases/DefaultEmbeddedDatabase
property could be); so no data is ever actually read from the configuration by
ODsnTypeCollection::getEmbeddedDatabase.  (And the commit also didn't add back
any configuration data to
officecfg/registry/data/org/openoffice/Office/DataAccess.xcu that could have
been read in the first place, nor any code to generate such data
programmatically.)

So remove the broken code to read configuration data from
ODsnTypeCollection::getEmbeddedDatabase (which means it can be a static member
function now) and also remove the obviously unused EmbeddedDatabases group (and
accompanying templates) from
officecfg/registry/schema/org/openoffice/Office/DataAccess.xcs.

Change-Id: Icc9b34075b9b7e960df6c236d3595b7fabe71f9d
Reviewed-on: https://gerrit.libreoffice.org/67494
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-02-13 10:24:09 +01:00
..
inc
qa dbaccess: fix Tdf119625Test with read-only $SRCDIR 2019-01-29 12:19:26 +01:00
source Remove dead and broken EmbeddedDatabases configuration 2019-02-13 10:24:09 +01:00
uiconfig
util
win32/source/odbcconfig
AllLangMoTarget_dba.mk
CppunitTest_dbaccess_dialog_save.mk
CppunitTest_dbaccess_dialogs_test.mk
CppunitTest_dbaccess_embeddeddb_performancetest.mk
CppunitTest_dbaccess_empty_stdlib_save.mk
CppunitTest_dbaccess_firebird_regression_test.mk
CppunitTest_dbaccess_firebird_test.mk
CppunitTest_dbaccess_hsqlbinary_import.mk
CppunitTest_dbaccess_hsqldb_test.mk
CppunitTest_dbaccess_hsqlschema_import.mk
CppunitTest_dbaccess_macros_test.mk
CppunitTest_dbaccess_nolib_save.mk
CppunitTest_dbaccess_RowSetClones.mk
CppunitTest_dbaccess_tdf119625.mk
Executable_odbcconfig.mk
JunitTest_dbaccess_complex.mk
JunitTest_dbaccess_unoapi.mk
Library_dba.mk
Library_dbahsql.mk
Library_dbaxml.mk
Library_dbmm.mk
Library_dbu.mk
Library_sdbt.mk
Makefile
Module_dbaccess.mk
PythonTest_dbaccess_python.mk
README
UIConfig_dbaccess.mk
UIConfig_dbapp.mk
UIConfig_dbbrowser.mk
UIConfig_dbquery.mk
UIConfig_dbrelation.mk
UIConfig_dbtable.mk
UIConfig_dbtdata.mk

Database access tools, for "base" database application