]> granicus.if.org Git - postgresql/commit
Fix lost persistence setting during REINDEX INDEX
authorAlvaro Herrera <alvherre@alvh.no-ip.org>
Mon, 30 Mar 2015 19:01:44 +0000 (16:01 -0300)
committerAlvaro Herrera <alvherre@alvh.no-ip.org>
Mon, 30 Mar 2015 19:01:44 +0000 (16:01 -0300)
commit0853630159944bb3652336602ff5f7f62cd27a5a
tree681c237f0aaf19c867cb61ad5861785a3c86a144
parent542320c2bd0b3796a8a9a4617cdb23fbad473390
Fix lost persistence setting during REINDEX INDEX

ReindexIndex() trusts a parser-built RangeVar with the persistence to
use for the new copy of the index; but the parser naturally does not
know what's the persistence of the original index.  To find out the
correct persistence, grab it from relcache.

This bug was introduced by commit 85b506bbfc2937c9, and therefore no
backpatch is necessary.

Bug reported by Thom Brown, analysis and patch by Michael Paquier; test
case provided by Fabrízio de Royes Mello.
src/backend/commands/indexcmds.c
src/test/regress/expected/create_table.out
src/test/regress/sql/create_table.sql