Force re-compression with lz4

From: Florents Tselai <florents(dot)tselai(at)gmail(dot)com>
To: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Force re-compression with lz4
Date: 2021-10-17 15:12:17
Message-ID: EDA6D3AC-7B66-46CB-821E-7F2E8FBBFAC0@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hello,

I have a table storing mostly text data (40M+ rows) that has pg_total_relation_size ~670GB.
I’ve just upgraded to postgres 14 and I’m now eager to try the new LZ4 compression.

I’ve altered the column to use the new lz4 compression, but that only applies to new rows.

What’s the recommended way of triggering the re-evaluation for pre-existing rows?

I tried wrapping a function like the following, but apparently each old record retains the compression applied.
text_corpus=(SELECT t.text from ...);

delete from t where id=;

insert into t(id, text) values (id, text_corpus);

Fttb, I resorted to preparing an external shell script to execute against the db but that’s too slow as it moves data in&out the db.

Is there a smarter way to do this ?

Thanks,
Flo

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Ron 2021-10-17 16:36:40 Re: Force re-compression with lz4
Previous Message Francisco Olarte 2021-10-17 09:50:45 Re: "two time periods with only an endpoint in common do not overlap" ???