pgsql: Improve pg_upgrade's report about failure to match up old and ne

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Improve pg_upgrade's report about failure to match up old and ne
Дата
Msg-id E1aykkm-00015g-CL@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Improve pg_upgrade's report about failure to match up old and new tables.

Ordinarily, pg_upgrade shouldn't have any difficulty in matching up all
the relations it sees in the old and new databases.  If it does, however,
it just goes belly-up with a pretty unhelpful error message.  That seemed
fine as long as we expected the case never to occur in the wild, but
Alvaro reported that it had been seen in a database whose pg_largeobject
table had somehow acquired a TOAST table.  That doesn't quite seem like
a case that pg_upgrade actually needs to handle, but it would be good if
the report were more diagnosable.  Hence, extend the logic to print out
as much information as we can about the mismatch(es) before we quit.

In passing, improve the readability of get_rel_infos()'s data collection
query, which had suffered seriously from lets-not-bother-to-update-comments
syndrome, and generally was unnecessarily disrespectful to readers.

It could be argued that this is a bug fix, but given that we have so few
reports, I don't feel a need to back-patch; at least not before this has
baked awhile in HEAD.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/73b9952e8278b9c9a6f5f8e2df196fea5abb61f0

Modified Files
--------------
src/bin/pg_upgrade/info.c       | 372 +++++++++++++++++++++++++---------------
src/bin/pg_upgrade/pg_upgrade.h |  13 +-
2 files changed, 244 insertions(+), 141 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Robert Haas
Дата:
Сообщение: pgsql: Use mul_size when multiplying by the number of parallel workers.
Следующее
От: Stephen Frost
Дата:
Сообщение: Re: pgsql: Add TAP tests for pg_dump