På onsdag 09. november 2016 kl. 15:54:13, skrev Adrian Klaver < adrian.kla...@aklaver.com <mailto:adrian.kla...@aklaver.com>>: On 11/08/2016 06:45 PM, Andreas Joseph Krogh wrote: > På onsdag 09. november 2016 kl. 03:02:54, skrev John R Pierce > <pie...@hogranch.com <mailto:pie...@hogranch.com>>: > > On 11/8/2016 2:34 PM, Hector Yuen wrote: > > 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? > > > > https://www.postgresql.org/docs/current/static/runtime-config-resource.html > > > maintenance_work_mem is used by vacuum and create index operations > (including implicit index creation such as add foreign key). > > > There is no such thing in PG.
Can you be more specific as; https://www.postgresql.org/docs/9.5/static/runtime-config-resource.html#GUC-MAINTENANCE-WORK-MEM "implicit index creation such as add foreign key" No implicit index will be created. -- Andreas Joseph Krogh CTO / Partner - Visena AS Mobile: +47 909 56 963 andr...@visena.com <mailto:andr...@visena.com> www.visena.com <https://www.visena.com> <https://www.visena.com>