Olá Pessoal,

 

Estou com uma dúvida, por opção nossa resolvemos não deixar o autovacuum no
automático e sim no manual (cron nas madrugadas), porém percebemos que ainda
assim vemos com frequencia vários processos com o autovacuum, será que
fizemos algo em desacordo?

Estamos enfrentando uma dificuldade (antes não tinha) de quando estes
processos estarem “rodando” as tabelas envolvidas estarem “locadas” e assim
fica, até que um de nós “mata” o pid da operação (autovacuum).

 

NOSSO CENÁRIO

PostgreSQL 8.3.7 on x86_64-pc-linux-gnu, compiled by GCC gcc-4.3.real
(Ubuntu 4.3.2-1ubuntu11) 4.3.2

 

PS AUX|GREP POSTGRES

postgres  5262  0.0  0.0  72168  1368 ?        Ss   Aug16   1:08 postgres:
logger process

root     25377  0.0  0.0  70124  3136 ?        Ss   07:09   0:00 sshd:
postgres [priv]

postgres 25379  0.0  0.0  70124  1896 ?        S    07:09   0:00 sshd:
postg...@pts/0

postgres 25380  0.0  0.0  19480  2272 pts/0    Ss   07:09   0:00 -bash

root     25385  0.0  0.0  70124  3140 ?        Ss   07:09   0:00 sshd:
postgres [priv]

postgres 25387  0.0  0.0  70124  1900 ?        S    07:09   0:00 sshd:
postg...@pts/1

postgres 25388  0.0  0.0  19480  2288 pts/1    Ss   07:09   0:00 -bash

postgres 25407  0.0  0.0  21016  1804 pts/0    S+   07:10   0:00 vim
teste.py

postgres 25587  0.0  0.1 703176  7752 ?        Ss   07:25   0:00 postgres:
writer process

postgres 25588  0.0  0.0 703176  1568 ?        Ss   07:25   0:00 postgres:
wal writer process

postgres 25589  0.0  0.0 703176  1712 ?        Ss   07:25   0:00 postgres:
autovacuum launcher process

postgres 25590  0.0  0.0  72296  1300 ?        Ss   07:25   0:00 postgres:
archiver process

postgres 25591  0.0  0.0  72296  1432 ?        Ss   07:25   0:00 postgres:
stats collector process

postgres 25595  0.1  0.3 710820 15052 ?        Ss   07:27   0:02 postgres:
postgres apoiorh 10.4.1.42(3856) idle in transaction

postgres 25684  0.0  0.0  16152  1144 pts/1    R+   07:54   0:00 ps aux

postgres 25685  0.0  0.0   7500   816 pts/1    R+   07:54   0:00 grep
postgres

 

POSTGRESQL.CONF

#---------------------------------------------------------------------------
---

    383 # AUTOVACUUM PARAMETERS

    384
#---------------------------------------------------------------------------
---

    385

    386 #autovacuum = off     # Enable autovacuum subprocess?  'on'

    387           # requires track_counts to also be on.

    388 #log_autovacuum_min_duration = -1 # -1 disables, 0 logs all actions
and

    389           # their durations, > 0 logs only

    390           # actions running at least that time.

    391 #autovacuum_max_workers = 3   # max number of autovacuum
subprocesses

    392 #autovacuum_naptime = 1min    # time between autovacuum runs

    393 #autovacuum_vacuum_threshold = 500  # min number of row updates
before

    394           # vacuum

    395 #autovacuum_analyze_threshold = 500 # min number of row updates
before

    396           # analyze

    397 #autovacuum_vacuum_scale_factor = 0.2 # fraction of table size
before vacuum

    398 #autovacuum_analyze_scale_factor = 0.1  # fraction of table size
before analyze

    399 #autovacuum_freeze_max_age = 200000000  # maximum XID age before
forced vacuum

    400           # (change requires restart)

    401 #autovacuum_vacuum_cost_delay = 20  # default vacuum cost delay for

    402           # autovacuum, -1 means use

    403           # vacuum_cost_delay

    404 #autovacuum_vacuum_cost_limit = -1  # default vacuum cost limit for

    405           # autovacuum, -1 means use

    406           # vacuum_cost_limit

    407

    408

    409
#---------------------------------------------------------------------------
---

 

 

Att.

----------------------------------------------------------------------------

Rubens José Rodrigues

" Falta de tempo é desculpa daqueles que perdem tempo por falta de métodos"

 

_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a