[PATCH] [REVIEW:3-5] PostgreSQL getColumns()
Radek Doulik
rodo at novell.com
Mon Feb 13 09:16:43 PST 2012
On Mon, 2012-02-13 at 18:08 +0100, Lionel Elie Mamane wrote:
> On Mon, Feb 13, 2012 at 05:39:51PM +0100, Radek Doulik wrote:
>
> > looks OK to me. I have cherry-picked it from master, because the
> > attached patch didn't apply.
>
> Oh, sorry, some difference between my work tree and pristine
> libreoffice-3-5 must have made a mess.
>
> The "sorted by concatenation" problem is commit
> 0adf5eed03d7a0f14d73c23bceb13b7a8cc693e4 in master, but was grouped in
> my patch. Could you please cherry-pick it, too? Thanks.
OK. Pushed. Thanks!
Cheers
Radek
> > On Thu, 2012-02-09 at 19:27 +0100, Lionel Elie Mamane wrote:
> >> getColumns() is a XDatabaseMetadata interface function to get the list
> >> of columns of a table and info on these columns.
>
> >> The PostgreSQL-SDBC implementation in 3.5.0 has a couple of bugs fixed
> >> by the attached patch.
>
> >> - If the table previously had a column that has since been dropped
> >> (removed), the numbering of the columns has a hole, and in some
> >> circumstances the dropped column is still shown by getColumns().
>
> >> - Entries were sorted by the concatenation (?) of schema name, table
> >> name, column name. In rare cases, this could lead to wrong order,
> >> and is slower anyway. Example:
>
> >> library, book, bookID
> >> library, bookShelf, bookShelfID
> >> library, book, XID
>
> >> is sorted in this order by "concatenation", but in this (correct) order
> >> when sorting by column:
>
> >> library, book, bookID
> >> library, book, XID
> >> library, bookShelf, bookShelfID
>
> >> "||" is the SQL string concatenation operator.
>
> >> I don't have a smoking gun fdo# of a "point and click user"-visible
> >> bug of this, partially because our internal code is suspicious about
> >> some of this data... See lcl_sanitizeColumnDescs in
> >> connectivity/source/commontools/TTableHelper.cxx.
>
> >> But I consider Base also as a programming platform,
> >> user code (scripts) is allowed to call any function in
> >> XDatabaseMetadata with any arguments, and giving a wrong result (data)
> >> back is a bug in itself.
>
>
More information about the LibreOffice
mailing list