| От | Tom Lane |
|---|---|
| Тема | Re: REINDEX CONCURRENTLY causes ALTER TABLE to fail |
| Дата | |
| Msg-id | 7779.1563679152@sss.pgh.pa.us обсуждение исходный текст |
| Ответ на | REINDEX CONCURRENTLY causes ALTER TABLE to fail (Manuel Rigger <rigger.manuel@gmail.com>) |
| Список | pgsql-bugs |
Manuel Rigger <rigger.manuel@gmail.com> writes:
> Consider the following statement sequence:
> CREATE TABLE t0(c0 INTEGER , c1 BOOLEAN);
> INSERT INTO t0(c0, c1) VALUES(1369652450, FALSE), (414515746, TRUE),
> (897778963, FALSE);
> CREATE UNIQUE INDEX i0 ON t0((1 / t0.c0)) WHERE ('-H') >=
> (t0.c1::TEXT) COLLATE "C";
> REINDEX TABLE CONCURRENTLY t0;
> ALTER TABLE t0 ALTER c1 TYPE TEXT; -- could not create unique index
> "i0" DETAIL: Key ((1 / c0))=(0) is duplicated.
> The REINDEX TABLE CONCURRENTLY causes the ALTER TABLE to fail, which
> is unexpected.
BTW, a note for anybody trying to follow along at home --- this example
does not reproduce if the database's default collation is "C".
regards, tom lane
В списке pgsql-bugs по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера