Re: Unlogged tables cleanup - Mailing list pgsql-hackers

From Michael Paquier
Subject Re: Unlogged tables cleanup
Date
Msg-id CAB7nPqQpo98UazhL-Ywc_u3w+_+m4vpw1xYZ7xgfYcXGzz+HZA@mail.gmail.com
Whole thread Raw
In response to Re: Unlogged tables cleanup  (Robert Haas <robertmhaas@gmail.com>)
Responses Re: Unlogged tables cleanup  (konstantin knizhnik <k.knizhnik@postgrespro.ru>)
List pgsql-hackers
On Thu, Nov 10, 2016 at 3:29 AM, Robert Haas <robertmhaas@gmail.com> wrote:
> On Wed, Nov 9, 2016 at 11:56 AM, Konstantin Knizhnik
> <k.knizhnik@postgrespro.ru> wrote:
>> Now simulate server crash using using "pkill -9 postgres".
>>
>> knizhnik@knizhnik:~/dtm-data$ rm -f logfile ; pg_ctl -D pgsql.master -l
>> logfile start
>> pg_ctl: another server might be running; trying to start server anyway
>> server starting
>> knizhnik@knizhnik:~/dtm-data$ psql postgres
>> psql (10devel)
>> Type "help" for help.
>>
>> postgres=# select * from foo;
>> ERROR:  could not open file "pg_tblspc/16384/PG_10_201611041/12289/16385":
>> No such file or directory
>>
>> knizhnik@knizhnik:~/dtm-data$ ls fs
>> PG_10_201611041
>> knizhnik@knizhnik:~/dtm-data$ ls fs/PG_10_201611041/
>>
>> So all relation directory is removed!
>> It happens only for first table created in tablespace.
>> If you create table in Postgres data directory everything is ok: first
>> segment of relation is truncated but not deleted.
>
> Whoa.  There should be an _init fork that doesn't get removed, and
> without removing the _init fork you shouldn't be able to remove the
> directory that contains it.

Hm.. I cannot reproduce what you see on Linux or macos. Perhaps you
have locally a standby pointing as well to this tablespace?
-- 
Michael



pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: Bug in comparison of empty jsonb arrays to scalars
Next
From: konstantin knizhnik
Date:
Subject: Re: Unlogged tables cleanup