What's with update, 7.0.2?

Поиск
Список
Период
Сортировка
От mlw
Тема What's with update, 7.0.2?
Дата
Msg-id 3A66DEE5.BE92A5EF@mohawksoft.com
обсуждение исходный текст
Список pgsql-hackers
Welcome to psql, the PostgreSQL interactive terminal.
Type:  \copyright for distribution terms      \h for help with SQL commands      \? for help on internal slash commands
    \g or terminate with semicolon to execute query      \q to quit
 
stage=# alter table dartists add column darank integer ;
ALTER
stage=# update dartists set darank = 100 ;
UPDATE 56240
stage=# vacuum dartists ;
VACUUM
stage=# alter table zsong add column zsrank integer ;
ALTER
stage=# update zsong set zsrank = 100 ;
FATAL 1:  Memory exhausted in AllocSetAlloc()
pqReadData() -- backend closed the channel unexpectedly.       This probably means the backend terminated abnormally
  before or while processing the request.
 
The connection to the server was lost. Attempting reset: Succeeded.
stage=# \q   

There are 2273429 records in the table. 
Postgres as started as:
su -l $PGUSER -c "$POSTMASTER -i -S -B 8192 -D$PGDIR -o '-Ffs -S 8192'"
The Machine has 512M RAM. 
The block size is 32K.

A dump of zsong schema looks like:
          Table "zsong"Attribute |   Type    | Modifier
-----------+-----------+----------muzenbr   | integer   |disc      | integer   |trk       | integer   |song      |
varchar()|artistid  | integer   |acd       | varchar() |trackid   | integer   |zsrank    | integer   |
 
Indices: zsong_artistid_ndx,        zsong_lsong_ndx,        zsong_muzenbr_ndx,        zsong_song_ndx,       
zsong_trackid_ndx
                                                        
 

I have seen this behavior a couple times, in fact I normally write a
script that does multiple conditional updates, followed by a vacuum. I
just forgot this time. I can work around this, but I thought you might
be interested. It has also seemed to cause some database corruption:
NOTICE:  Rel zsong: TID 7389/275: OID IS INVALID. TUPGONE 1.  

P.S. This was a staging database, it was created as "pg_dump dbname |
psql stage" just prior to the alters.
                                        
-- 
http://www.mohawksoft.com


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

Предыдущее
От: Pete Forman
Дата:
Сообщение: Re: AW: AW: AW: Re: tinterval - operator problems on AIX
Следующее
От: "Martin A. Marques"
Дата:
Сообщение: compiling 7.1-beta1