[Libreoffice-bugs] [Bug 52027] New: ODBC, opening one table calls SQLTables for many tables
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Fri Jul 13 03:42:37 CEST 2012
https://bugs.freedesktop.org/show_bug.cgi?id=52027
Bug #: 52027
Summary: ODBC, opening one table calls SQLTables for many
tables
Classification: Unclassified
Product: LibreOffice
Version: unspecified
Platform: Other
OS/Version: Linux (All)
Status: UNCONFIRMED
Severity: normal
Priority: medium
Component: Database
AssignedTo: libreoffice-bugs at lists.freedesktop.org
ReportedBy: lo_bugs at iseries-guru.com
Created attachment 64149
--> https://bugs.freedesktop.org/attachment.cgi?id=64149
ODBC log file
When I open an ODBC connection, expand the list of tables in the schema, and
double-click on a table name, Base calls SQLTables for each base table in the
schema. I would guess that all but one of these calls is unnecessary at this
point. Can an expert confirm the necessity or otherwise of these calls?
I choose a connection to PostgreSQL for the ODBC log file and backtrace
because the driver source is available. Note for comparison ...
(*) A connection to DB2/i shows similar calls to SQLTables except that ...
- DB2/i does one more call SQLTables, this final call naming the table
that I actually double-clicked.
- Referencing a server with more base tables in the schema and which is,
moreover, on the other side of the Atlantic Ocean makes the delay
conspicuous.
(*) With a direct connection to PostgreSQL (using the SDBC driver), Base does
not execute the source line appearing in frame 2 of the backtrace.
Looking into the backtrace, I suspect that the iteration through tables is
happening in frame 7 (dbaccess/source/ui/browser/unodatbr.cxx:2187). The code
at line 2180 reads ...
Sequence< ::rtl::OUString > aNames = _xNameAccess->getElementNames();
const ::rtl::OUString* pIter = aNames.getConstArray();
const ::rtl::OUString* pEnd = pIter + aNames.getLength();
for (; pIter != pEnd; ++pIter)
{
if( !m_pTreeView->getListBox().GetEntryPosByName(*pIter,_pParent))
{
I have master commit id a3a0b81, pulled around 2012-10-10 17:45 UTC and built
with options
--enable-symbols
--enable-dbgutil
--enable-crashdump
--disable-build-mozilla
--without-system-postgresql
--enable-debug
--enable-werror
The platform for build and execution is
$ uname -a
Linux cougar-natty 2.6.38-15-generic #60-Ubuntu SMP Tue May 22 11:30:47 UTC
2012 i686 athlon i386 GNU/Linux
$ gcc --version
gcc (Ubuntu/Linaro 4.5.2-8ubuntu4) 4.5.2
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the Libreoffice-bugs
mailing list