Обсуждение: Port Bug Report: 1.backend crash when frontend do cluster (sometimes!?), 2.cluster does not work

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

Port Bug Report: 1.backend crash when frontend do cluster (sometimes!?), 2.cluster does not work

От
Unprivileged user
Дата:
============================================================================
                        POSTGRESQL BUG REPORT TEMPLATE
============================================================================


Your name               : Vladimir Dobrokhotov
Your email address      : dvs@rybvod.kamchatka.su

Category                : runtime: back-end
Severity                : critical

Summary: 1.backend crash when frontend do cluster (sometimes!?), 2.cluster does not work

System Configuration
--------------------
  Operating System   : FreeBSD 2.2.5-RELEASE

  PostgreSQL version : 6.5

  Compiler used      : gcc 2.7.2.1

Hardware:
---------
Pentium, 32 RAM

Versions of other tools:
------------------------
gmake 3.75, flex 2.5.4

--------------------------------------------------------------------------

Problem Description:
--------------------
This problem come from pg6.2.
cluster (unique index btree(4 filelds varchar(4))) not work - "cannot create unique index. Table contains non-unique
values."
In pg6.4.2 command "cluster ind_un.." destroy all indexes on the table but index "ind_un" detroy fields form 2...
In pg6.5 - random one from:
1) ERROR: cannot create unique index. Table contains non-unique values.
2) pgReadData() -- backend closed ... (need restart frontend)
3) pgReadData() -- backend closed ... (need restart backend, frontend)
4) pgReadData() -- backend closed ... (need restart backend, frontend, remove file "temp_1ddbc".)


--------------------------------------------------------------------------

Test Case:
----------
=>create table sns (n1 varchar(4), n2 varchar(4), n3 varchar(4), n4 varchar(4), name text);
CREATE
=>insert into sns values ('0','00','','','a');
INSERT 278624 1
=>insert into sns values ('0','01','','','b');
INSERT 278626 1
=>create unique index sn_b on sns using btree(n1,n2,n3,n4);
CREATE
=>cluster sn_b on sns;
ERROR: Cannot create unique index. Table contains non-unique values
=>cluster sn_b on sns;
pgReadData() -- backend closed the channel unexpectedly.
   This probably means the backend terminated abnormally
   before or while processing the request.
We have lost the connection to backend, so further processing is impossible.
 Terminating.
#psql dv14
Connection to database 'dv14' failed.
connectDB() -- ...
#su postgres
$~/rc.local
 postmaster.
^D#psql dv14
Welcome to the POSTGRES interactive sql monitor.
...
=>cluster sn_b on sns;
ERROR: cannot create temp_44050
(rm ~/data/base/dv14/temp_44050)
=>cluster sn_b on sns;
ERROR: Cannot create unique index. Table contains non-unique values
=>cluster sn_b on sns;
pgReadData() -- backend closed the channel unexpectedly.
   This probably means the backend terminated abnormally
   before or while processing the request.
We have lost the connection to backend, so further processing is impossible.
 Terminating.
#psql dv14
Welcome to the POSTGRES interactive sql monitor.
...
=>


--------------------------------------------------------------------------

Solution:
---------


--------------------------------------------------------------------------


Yea.  At least now, we have a repeatable CLUSTER bug.  Hope someone can
fix it soon.


>
> ============================================================================
>                         POSTGRESQL BUG REPORT TEMPLATE
> ============================================================================
>
>
> Your name               : Vladimir Dobrokhotov
> Your email address      : dvs@rybvod.kamchatka.su
>
> Category                : runtime: back-end
> Severity                : critical
>
> Summary: 1.backend crash when frontend do cluster (sometimes!?), 2.cluster does not work
>
> System Configuration
> --------------------
>   Operating System   : FreeBSD 2.2.5-RELEASE
>
>   PostgreSQL version : 6.5
>
>   Compiler used      : gcc 2.7.2.1
>
> Hardware:
> ---------
> Pentium, 32 RAM
>
> Versions of other tools:
> ------------------------
> gmake 3.75, flex 2.5.4
>
> --------------------------------------------------------------------------
>
> Problem Description:
> --------------------
> This problem come from pg6.2.
> cluster (unique index btree(4 filelds varchar(4))) not work - "cannot create unique index. Table contains non-unique
values."
> In pg6.4.2 command "cluster ind_un.." destroy all indexes on the table but index "ind_un" detroy fields form 2...
> In pg6.5 - random one from:
> 1) ERROR: cannot create unique index. Table contains non-unique values.
> 2) pgReadData() -- backend closed ... (need restart frontend)
> 3) pgReadData() -- backend closed ... (need restart backend, frontend)
> 4) pgReadData() -- backend closed ... (need restart backend, frontend, remove file "temp_1ddbc".)
>
>
> --------------------------------------------------------------------------
>
> Test Case:
> ----------
> =>create table sns (n1 varchar(4), n2 varchar(4), n3 varchar(4), n4 varchar(4), name text);
> CREATE
> =>insert into sns values ('0','00','','','a');
> INSERT 278624 1
> =>insert into sns values ('0','01','','','b');
> INSERT 278626 1
> =>create unique index sn_b on sns using btree(n1,n2,n3,n4);
> CREATE
> =>cluster sn_b on sns;
> ERROR: Cannot create unique index. Table contains non-unique values
> =>cluster sn_b on sns;
> pgReadData() -- backend closed the channel unexpectedly.
>    This probably means the backend terminated abnormally
>    before or while processing the request.
> We have lost the connection to backend, so further processing is impossible.
>  Terminating.
> #psql dv14
> Connection to database 'dv14' failed.
> connectDB() -- ...
> #su postgres
> $~/rc.local
>  postmaster.
> ^D#psql dv14
> Welcome to the POSTGRES interactive sql monitor.
> ...
> =>cluster sn_b on sns;
> ERROR: cannot create temp_44050
> (rm ~/data/base/dv14/temp_44050)
> =>cluster sn_b on sns;
> ERROR: Cannot create unique index. Table contains non-unique values
> =>cluster sn_b on sns;
> pgReadData() -- backend closed the channel unexpectedly.
>    This probably means the backend terminated abnormally
>    before or while processing the request.
> We have lost the connection to backend, so further processing is impossible.
>  Terminating.
> #psql dv14
> Welcome to the POSTGRES interactive sql monitor.
> ...
> =>
>
>
> --------------------------------------------------------------------------
>
> Solution:
> ---------
>
>
> --------------------------------------------------------------------------
>
>
>


--
  Bruce Momjian                        |  http://www.op.net/~candle
  maillist@candle.pha.pa.us            |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026