..:: Rodrigo (-_-) Machado ::.. escreveu:
>
> >
> Não. Isto é a cache do disco que está "mentindo" para o SO que gravou os
> dados no disco. Experimente desabilitar a cache do disco.
>
>
> Deixa eu ver se entendi então,
> nos meus servidores linux está habilitado o cache do disco? E este está
> mentindo pra mim, quer dizer que o postgresql pensa que gravou o WAL mas
> o SO tentando administrar as E/S do disco mantem estes dados em cache?
>
Sim, o SO "mente" que os dados estão gravados no disco mas na verdade
eles estão na cache do disco (se você não tem discos com bateria pode
correr o risco de perder dados -- por isso a primeira coisa a fazer
quando se utiliza discos sem bateria é desabilitar a cache de disco para
garantir que os dados vão estar *realmente* no disco). Ele faz isso para
aumentar a performance de I/O diminuindo assim a confiabilidade do
processo de gravação no disco.
> Entendi bem?
>
> Se for assim, tens alguma pista por onde posso começar a investigar para
> desabilitar este cache pra fazer alguns testes ?
>
No Linux basta utilizar o hdparm.
foobar ~ # hdparm -W /dev/hda
/dev/hda:
write-caching = 1 (on)
foobar ~ # hdparm -W 0 /dev/hda
/dev/hda:
setting drive write-caching to 0 (off)
write-caching = 0 (off)
No Windows vá em Gerenciador de Dispositivos e clique com botão direito
no disco que quer desabilitar a cache e escolha Propriedades; na aba
Propriedades vai ter a opção para desabilitar a cache do disco. [1]
> E se for mesmo o cache, o que tem a ver o cache de disco no windows ele
> atualiza o arquivo quando eu fecho a conexão com o servidor.
Eu não sou guru em "Windows Internals" mas o ato de escrever os dados da
cache para o disco (aka flush) no Windows está associado com o tempo que
aqueles dados foram acessados [2]; dados acessados frequentemente como
os arquivos do WAL tem propensão de permanecer na cache.
> pois se fosse isto, mesmo eu fechando a conexão, o SO não saberia disto,
^^^^^^^^^^^^^^^^
Como não? É o SO que gerencia os processos!
[1] http://support.microsoft.com/kb/259716/en-us/
[2] http://msdn.microsoft.com/en-us/library/aa364218(VS.85).aspx
--
Euler Taveira de Oliveira
http://www.timbira.com/
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral