which work memory parameter is used for what? - Mailing list pgsql-general

From Hector Yuen
Subject which work memory parameter is used for what?
Date
Msg-id CAKBegfXNN2JSFsgK0BTGtfaBev9r3UeU7rpzRAgNiT1DzBwv5Q@mail.gmail.com
Whole thread Raw
Responses Re: which work memory parameter is used for what?  (Melvin Davidson <melvin6925@gmail.com>)
List pgsql-general
Hello,

I am confused on which are the parameters for different queries. I am trying to run VACUUM on a big table, and it is easier for me to set the work memory for the specific session instead of tuning it in postgresql.conf.

I noticed that if I do:

set work_mem='1GB';

it doesn't help VACUUM, I have to do:

set maintenance_work_mem='1GB';

to accelerate the operation. I could notice that by running VACUUM VERBOSE and see that the table was scanned less times an the operation finished a lot faster.

My question is, for which operations does work_mem matter and for which ones does maintenance_work_mem do? I am specially interested in operations like ANALYZE and VACUUM, I believe ANALYZE depends on work_mem and VACUUM on maintenance_work_mem.

Can you confirm my understanding?

Thanks

--
-h

pgsql-general by date:

Previous
From: david.turon@linuxbox.cz
Date:
Subject: Re: ENABLE ROW LEVEL SECURITY cause huge produce of checkpoints
Next
From: "Gadamsetty, Kiran"
Date:
Subject: Re: Linux equivalent library for "postgres.lib" from Windows