Segue abaixo a demonstração do parâmetro não-permitido na tabela que me
referi no primeiro e-mail.
xxx=# \d+ client.tb_hash_session
Table
"client.tb_hash_session"
Column | Type |
Modifiers | Storage | Stats target | Description
-----------------+-----------------------------+----------------------------------------------------------+----------+--------------+-------------
id_hash_session | integer | not null default
nextval('sq_tb_hash_session'::regclass) | plain | |
...
Has OIDs: no
Options: autovacuum_enabled=true, autovacuum_analyze_scale_factor=0.001,
autovacuum_analyze_threshold=1, autovacuum_vacuum_scale_factor=0.003,
autovacuum_vacuum_threshold=3, autovacuum_vacuum_cost_delay=3,
*toast.autovacuum_analyze_scale_factor*=0.001,
toast.autovacuum_analyze_threshold=1,
toast.autovacuum_vacuum_scale_factor=0.003,
toast.autovacuum_vacuum_threshold=3, toast.autovacuum_vacuum_cost_delay=3
--
Everton
2015-08-25 18:26 GMT-03:00 Everton Berz <[email protected]>:
> Fabrízio
>
> acredito que só aconteça quando as outras propriedades (não toast) estejam
> setadas. Veja se consegue reproduzir os comandos abaixo.
>
> Entretanto percebi agora que quando fiz na tabela zerada, apesar de não
> emitir erro, o parâmetro não é setado efetivamente.
> Fica a dúvida de como na nossa tabela antiga aquele parâmetro foi
> injetado. Pode ter acontecido durante algum pg_upgrate ou algo do tipo.
>
>
> [root@xxx04-bug-db ~]# psql -U postgres everton_destino
> psql (9.3.5)
> Digite "help" para ajuda.
>
> everton_destino=# select version();
> version
>
> --------------------------------------------------------------------------------------------------------------
> PostgreSQL 9.3.5 on x86_64-unknown-linux-gnu, compiled by gcc (GCC) 4.4.7
> 20120313 (Red Hat 4.4.7-4), 64-bit
> (1 registro)
>
> everton_destino=# CREATE TABLE tb_hash_session (
> everton_destino(# id_hash_session integer NOT NULL,
> everton_destino(# id_pessoa integer NOT NULL,
> everton_destino(# ds_hash character varying(40) NOT NULL,
> everton_destino(# dt_expiracao timestamp without time zone NOT NULL,
> everton_destino(# ds_ip character varying(40) NOT NULL
> everton_destino(# )
> everton_destino-# WITH (
> everton_destino(# autovacuum_enabled=true,
> autovacuum_analyze_scale_factor=0.001, autovacuum_analyze_threshold=1,
> everton_destino(# autovacuum_vacuum_scale_factor=0.003,
> autovacuum_vacuum_threshold=3, autovacuum_vacuum_cost_delay=3
> everton_destino(# );
> CREATE TABLE
>
> everton_destino=# alter table tb_hash_session set
> (toast.autovacuum_analyze_scale_factor=0.001);
> ALTER TABLE
>
> ( ^ deveria ter dado erro, certo? Talvez isso possa ser reportado como
> bug. )
>
> everton_destino=# \d+ tb_hash_session
> Tabela "public.tb_hash_session"
> Coluna | Tipo | Modificadores |
> Armazenamento | Estat¦sticas | Descri¦¦o
>
> -----------------+-----------------------------+---------------+---------------+--------------+-----------
> id_hash_session | integer | n¦o nulo | plain
> | |
> id_pessoa | integer | n¦o nulo | plain
> | |
> ds_hash | character varying(40) | n¦o nulo | extended
> | |
> dt_expiracao | timestamp without time zone | n¦o nulo | plain
> | |
> ds_ip | character varying(40) | n¦o nulo | extended
> | |
> T¦m OIDs: n¦o
> Op¦¦es: autovacuum_enabled=true, autovacuum_analyze_scale_factor=0.001,
> autovacuum_analyze_threshold=1, autovacuum_vacuum_scale_factor=0.003,
> autovacuum_vacuum_threshold=3, autovacuum_vacuum_cost_delay=3
>
> Entretanto o parâmetro não está aplicado, conferir na pg_class.reloptions
> e também não é exibido.
>
>
>
>
>
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral