On 2014-03-04 01:10:50 -0300, Fabrízio de Royes Mello wrote: > Today I do something like that: > > 1) create unlogged table tmp_foo ... > 2) populate 'tmp_foo' table (ETL scripts or whatever) > 3) start transaction > 4) lock table tmp_foo in access exclusive mode > 5) update pg_class set relpersistence = 'p' where oid = 'tmp_foo':regclass > 6) drop table foo; -- the old foo table > 7) alter table tmp_foo rename to foo; > 8) end transaction > 9) run pg_repack in table 'foo' > > I know it's very ugly, but works... and works for standbys too... :-)
No, it doesn't work. It just may happen to not fail loudly/visibly in some cases. You're absolutely risking corruption of this *and* other relations when doing so. Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers