On 02-03-2016 17:24, Fabrízio de Royes Mello wrote:
> 
> [...corte...]
> 
> Porque no final ele tem o ".54" que indica o segmento de 1GB que está
> sendo criado.
> 

Um detalhe, não verifiquei se essa informação acima é verdadeira... vou
dar uma olhada e em seguida confirmo 100%.


> Veja nos logs qual comando está produzindo esse arquivo temporário.
> Provável sim que vc precise aumentar o m_w_m.
> 

Só para demonstrar um caso de teste de geração de "temp files" pelo
"VACUUM FULL".

fabrizio=# CREATE TABLE foo(id SERIAL PRIMARY KEY, name VARCHAR(100));
CREATE TABLE
fabrizio=# INSERT INTO foo(name) SELECT 'Name '||id FROM
generate_series(1, 100000) AS id;
INSERT 0 100000
fabrizio=# INSERT INTO foo(name) SELECT 'Name '||id FROM
generate_series(1, 100000) AS id;
INSERT 0 100000
fabrizio=# INSERT INTO foo(name) SELECT 'Name '||id FROM
generate_series(1, 100000) AS id;
INSERT 0 100000
fabrizio=# \dt+ foo
                   List of relations
 Schema | Name | Type  |  Owner   | Size  | Description
--------+------+-------+----------+-------+-------------
 public | foo  | table | fabrizio | 13 MB |
(1 row)

fabrizio=# SET client_min_messages TO log;
SET
fabrizio=# SET log_temp_files TO 0;
SET
fabrizio=# SET maintenance_work_mem TO '1MB';
SET
fabrizio=# VACUUM FULL foo;
LOG:  temporary file: path "base/pgsql_tmp/pgsql_tmp13510.3", size 6004736
STATEMENT:  VACUUM FULL foo;
LOG:  temporary file: path "base/pgsql_tmp/pgsql_tmp13510.3", size 6004736
VACUUM


Se ajustar o maintenance_work_mem ele não precisa do disco.

fabrizio=# SET maintenance_work_mem TO '32MB';
SET
fabrizio=# VACUUM FULL foo;
VACUUM


Só para demonstrar a todos que não é "apenas" o "work_mem" que
influencia na geração de arquivos temporários no PostgreSQL.

Att,

-- 
   Fabrízio de Royes Mello         Timbira - http://www.timbira.com.br/
   PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a