Обсуждение: [COMMITTERS] pgsql: Fix incorrect error reporting for duplicate data in\crosstabvie

Поиск
Список
Период
Сортировка

[COMMITTERS] pgsql: Fix incorrect error reporting for duplicate data in\crosstabvie

От
Tom Lane
Дата:
Fix incorrect error reporting for duplicate data in \crosstabview.

\crosstabview's complaint about multiple entries for the same crosstab
cell quoted the wrong row and/or column values.  It would accidentally
appear to work if the data had been in strcmp() order to start with,
which probably explains how we missed noticing this during development.

This could be fixed in more than one way, but the way I chose was to
hang onto both result pointers from bsearch() and use those to get at
the value names.

In passing, avoid casting away const in the bsearch comparison functions.
No bug there, just poor style.

Per bug #14476 from Tomonari Katsumata.  Back-patch to 9.6 where
\crosstabview was introduced.

Report: https://postgr.es/m/20161225021519.10139.45460@wrigleys.postgresql.org

Branch
------
REL9_6_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/6a8c67f5070161c721f1a8e2189836d3a73d8ef5

Modified Files
--------------
src/bin/psql/crosstabview.c                 | 48 ++++++++++++++---------------
src/test/regress/expected/psql_crosstab.out | 13 ++++++++
src/test/regress/sql/psql_crosstab.sql      | 11 +++++++
3 files changed, 48 insertions(+), 24 deletions(-)