Ticket #433 (closed defeito: fixed)
Os horario das mensagens na caixa de entrada aparecem errados
Reported by: | diorgenes | Owned by: | alguem |
---|---|---|---|
Priority: | média | Milestone: | |
Component: | ExpressoMail | Version: | trunk |
Severity: | Keywords: | ||
Cc: | WorkGroup: |
Description
Estou utilizando a versão SVN do Expresso, fiz uma atualização hoje (18/02/2009) e apareceu o seguinte problema:
Na caixa de entrada do ExpressoMail as mensagens recebidas hoje aparecem com suas datas (horário) errados, a diferença de horário é de três horas a menos. Acredito que seja algum erro de javascript, pois quando a caixa de entrada está aberta e novas mensagens são recebidas a sua data (horário) aparecem corretamente, mas quando é acessado um outro módulo como a Agenda por exemplo, ao retornar para o ExpressoMail na caixa de entrada os horários das mensagens recebidas hoje aparecem errados.
Obs: Verifiquei as configurações de horário de verão e a data tanto no servidor quanto no PHP.
Attachments
Change History
comment:2 in reply to: ↑ 1 ; follow-up: ↓ 3 Changed 15 years ago by diorgenes
Replying to rodsouza:
Meu ambiente de desenvolvimento possui o horário de Brasília.
Não consegui simular o ocorrido!
Os serviços do ExpressoLivre estão todos na mesma máquina ou estão em máquinas diferentes?
-- Sem mais para o momento, Rodrigo Souza
Boa tarde,
no meu ambiente os serviços do expresso estão em máquinas separadas. Qual revisão você está usando?
Esse problema ocorreu em duas instalações diferentes do expresso, porém as duas do SVN.
Diorgenes F. Grzesiuk
comment:3 in reply to: ↑ 2 ; follow-up: ↓ 4 Changed 15 years ago by rodsouza
Replying to diorgenes:
Replying to rodsouza:
Meu ambiente de desenvolvimento possui o horário de Brasília.
Não consegui simular o ocorrido!
Os serviços do ExpressoLivre estão todos na mesma máquina ou estão em máquinas diferentes?
-- Sem mais para o momento, Rodrigo Souza
Boa tarde,
no meu ambiente os serviços do expresso estão em máquinas separadas. Qual revisão você está usando?
Esse problema ocorreu em duas instalações diferentes do expresso, porém as duas do SVN.
Diorgenes F. Grzesiuk
Verifique os timezone de todos os serviços. Deve existir diferenças entre eles.
Utilizo a revisão de desenvolvimento localmente, todavia temos a mesma revisão em um ambiente de homologação que possui uma arquitetura distribuidas dos serviços. Ambas estão com o horário correto assim como o ambiente de produção.
Ainda se deve levar em consideração que o horário de verão terminou no último fim de semana (14/02) e mesmo com essa alteração não foi verificado fato como o descrito como problema nesse ticket.
comment:4 in reply to: ↑ 3 Changed 15 years ago by diorgenes
Replying to rodsouza:
Replying to diorgenes:
Replying to rodsouza:
Meu ambiente de desenvolvimento possui o horário de Brasília.
Não consegui simular o ocorrido!
Os serviços do ExpressoLivre estão todos na mesma máquina ou estão em máquinas diferentes?
-- Sem mais para o momento, Rodrigo Souza
Boa tarde,
no meu ambiente os serviços do expresso estão em máquinas separadas. Qual revisão você está usando?
Esse problema ocorreu em duas instalações diferentes do expresso, porém as duas do SVN.
Diorgenes F. Grzesiuk
Verifique os timezone de todos os serviços. Deve existir diferenças entre eles.
Utilizo a revisão de desenvolvimento localmente, todavia temos a mesma revisão em um ambiente de homologação que possui uma arquitetura distribuidas dos serviços. Ambas estão com o horário correto assim como o ambiente de produção.
Ainda se deve levar em consideração que o horário de verão terminou no último fim de semana (14/02) e mesmo com essa alteração não foi verificado fato como o descrito como problema nesse ticket.
Como informei no ticket, já verifiquei os timezones da máquina e do PHP, estão corretos, existe mais algum timezone que devo verificar? Fiz teste no firefox e no opera, nos dois apresentaram o mesmo erro.
comment:5 follow-up: ↓ 6 Changed 15 years ago by wmerlotto
Replying to rodsouza:
Verifique os timezone de todos os serviços. Deve existir diferenças entre eles.
A estrutura é basicamente a seguinte:
Internet --> mail gateway (postfix e anti-spam) -> mail server (http e postfix) -> mail dada (cyrus, ldap, postgres)
Todos são Debian Etch atualizados com o repositório oficial, inclusive o tzdate, responsável pelo fuso horário. Tanto que após o dia 14/02 todos servidores estavam com o horário correto. Hoje atualizei o timezonedb, do PHP, para a versão 2009.1. Reiniciei alguns serviços, como postfix, cyrus e apache, mas sem sucesso.
O mais estranho é que se vc abrir o e-mail e verificar o cabeçalho, a data está correta. Mas na lista das mensagens está com três horas a menos, conforme os screenshots em anexo.
Changed 15 years ago by wmerlotto
-
attachment
lista-emails.png
added
Hora recebida da mensagem na lista de e-mails
comment:6 in reply to: ↑ 5 ; follow-up: ↓ 7 Changed 15 years ago by rodsouza
Uma dúvida, quando foi a última vez que você realizou a sincronização com o SVN?
comment:7 in reply to: ↑ 6 Changed 15 years ago by wmerlotto
Replying to rodsouza:
Uma dúvida, quando foi a última vez que você realizou a sincronização com o SVN?
kenobi:/var/www/expresso# svn info Caminho: . URL: http://www.expressolivre.org/svn/expresso/trunk Raiz do Repositório: http://www.expressolivre.org/svn/expresso UUID do repositório: ae9f2744-c043-0410-bd94-d3e00378db3e Revisão: 690 Tipo de Nó: diretório Agendado: normal Autor da Última Mudança: eduardoalex Revisão da Última Mudança: 690 Data da Última Mudança: 2009-02-16 16:20:04 -0300 (Seg, 16 Fev 2009)
comment:8 Changed 15 years ago by rodsouza
Qual é a saída de:
<?php echo 'date("d/m/Y") : ', date("d/m/Y"), "\n\n"; echo 'gmdate("d/m/Y") : ', gmdate("d/m/Y"), "\n\n"; ?>
comment:9 follow-up: ↓ 11 Changed 15 years ago by rodsouza
ah, esquci...
<?php
echo 'date_default_timezone_set : ', date_default_timezone_get(), "\n\n";
echo 'date("d/m/Y") : ', date("d/m/Y"), "\n\n";
echo 'gmdate("d/m/Y") : ', gmdate("d/m/Y"), "\n\n";
?>
comment:10 Changed 15 years ago by rodsouza
Mais um detalhe execute o código com o horário de 15 horas, após altere o horário para 22 horas e execute novamente.
comment:11 in reply to: ↑ 9 Changed 15 years ago by wmerlotto
Replying to rodsouza:
ah, esquci...
<?php
echo 'date_default_timezone_set : ', date_default_timezone_get(), "\n\n";
echo 'date("d/m/Y") : ', date("d/m/Y"), "\n\n";
echo 'gmdate("d/m/Y") : ', gmdate("d/m/Y"), "\n\n";
?>
date_default_timezone_set : America/Sao_Paulo date("d/m/Y") : 20/02/2009 gmdate("d/m/Y") : 20/02/2009
comment:12 follow-up: ↓ 16 Changed 15 years ago by rodsouza
E quando o horário é alterado para 21 horas?
comment:13 Changed 15 years ago by rodsouza
Para ter certeza utilize 22 horas!
comment:14 follow-up: ↓ 15 Changed 15 years ago by wmerlotto
O ticket #448 também reporta o mesmo problema.
comment:15 in reply to: ↑ 14 Changed 15 years ago by rodsouza
comment:16 in reply to: ↑ 12 ; follow-up: ↓ 17 Changed 15 years ago by wmerlotto
Replying to rodsouza:
E quando o horário é alterado para 21 horas?
Tinha me esquecido...
date_default_timezone_set : America/Sao_Paulo date("d/m/Y") : 01/03/2009 gmdate("d/m/Y") : 02/03/2009
comment:17 in reply to: ↑ 16 ; follow-up: ↓ 18 Changed 15 years ago by niltonneto
comment:18 in reply to: ↑ 17 Changed 15 years ago by wmerlotto
Replying to niltonneto:
E aí, conseguiram resolver o problema? Podemos fechar esse ticket?
Não, este problema não está resolvido até a revisão [692]. Acabei atualizar o código aqui e o problema ainda persiste.
Então, resolvi fazer um teste revertendo meu código para a última alteração realizada antes do Eduardo fazer seu commit ([689]). Reverti para a revisão [688]:
kenobi:/var/www/expresso/expressoMail1_2# svn up -r 688 kenobi:/var/www/expresso/expressoMail1_2# svn info Caminho: . URL: http://www.expressolivre.org/svn/expresso/trunk/expressoMail1_2 Raiz do Repositório: http://www.expressolivre.org/svn/expresso UUID do repositório: ae9f2744-c043-0410-bd94-d3e00378db3e Revisão: 688 Tipo de Nó: diretório Agendado: normal Autor da Última Mudança: niltonneto Revisão da Última Mudança: 676 Data da Última Mudança: 2009-02-06 17:57:50 -0200 (Sex, 06 Fev 2009)
Quando verifiquei as datas novamente, percebi que o problema não ocorreu, os horários estavam sendo exibidos corretamente. Inclusive o problema reportado em #435 não ocorre nesta revisão.
O que me leva a crer que as últimas alterações, realizadas pelo Eduardo, trouxeram estes problemas. Mas não faço idéia onde exatamente está o problema...
comment:19 follow-up: ↓ 20 Changed 15 years ago by diogenesduarte
Senhores...
Tentamos de muitas formas reproduzir esse erro aqui, mas não tivemos sucesso. Porém, na busca por diferenças no código, notamos que em um dos métodos que recupera e-mails do servidor houve uma confusão no merge, e acabou indo para o repositório uma parte de código antigo que utilizava date ao invés de gmdate. Assim, corrigimos isso na revisão #693.
Testem essa revisão para vermos se era esse o motivo da diferença de comportamento das duas revisões no ambiente de vocês.
Entretanto, essa correção no ambiente da PRODEB não provocou mudança alguma.
comment:20 in reply to: ↑ 19 Changed 15 years ago by wmerlotto
Replying to diogenesduarte:
Senhores...
Tentamos de muitas formas reproduzir esse erro aqui, mas não tivemos sucesso.
Bom, estou utilizando o código nú e crú do SVN do ExpressoLivre.org em duas instalações (em produção) completamente diferentes e o problema ocorre.
..antigo que utilizava date ao invés de gmdate. Assim, corrigimos isso na revisão [693].
Já fizemos este teste, conforme recomendado pelo Rodrigo no ticket 448 e não houve melhoria alguma.
Recomendo vcs fazerem um checkout do SVN, exatamente da maneira como está, do ExpressoLivre e testá-lo.
comment:21 follow-up: ↓ 22 Changed 15 years ago by diogenesduarte
Então... Olha só o que fizemos em ambiente de desenvolvimento:
1-Temos uma versão do expresso instalada há pouco mais de 2 meses. 2-Na pasta /var/www/expresso, fizemos checkout da revisão 688 e enviamos diversos e-mails para o mesmo usuário. TODOS se mostraram com o horário exato apontado no servidor de IMAP. Efetuamos logoff, limpamos cookies, fechamos navegador, etc. O horário permaneceu inalterado. 3-Renomeamos a pasta expresso e fizemos novamente checkout dentro da pasta /var/www/expresso, porém da ultima revisão existente no svn(693). 4-Reiniciamos o navegador, limpamos todos os cookies, acessamos novamente o expresso e os horários continuam iguais ao do código da revisão 688, equivalentes ao horário do servidor de IMAP no momento do recebimento do email(A velha discussão do udate). 5-Enviamos novos e-mails, saímos do módulo, voltamos novamente, efetuamos logoff, fechamos o browser, e ao logar novamente os horários permaneciam corretos, de acordo com o horário do servidor de imap. 6-Voltamos ao código da revisão 688, e tudo ocorreu como nos outros testes. 7-Para finalizar, criamos outros usuários para fazer tudo que fizemos nas outras etapas, enviamos inúmeros e-mails entre eles mudamos novamente as revisões e tudo aponta para o horário correto enviado no imap.
Como havia dito, tentamos exaustivamente simular esse erro, sem sucesso algum. Partimos agora para uma nova estratégia, que é a de verificar as possíveis modificações que enviamos na revisão 689, que combinadas com alguma configuração de ambiente possa resultar em comportamento diferente em relação a horário. O grande problema é que, salvo engano, as rotinas em javascript não se metem na questão de traduções de horário do email, mesmo porque ninguém sabe o horário que pode estar no pc cliente. Por isso partimos direto para analisar as modificações que fizemos nos arquivos .php. Ainda não encontramos um motivo para isso acontecer, mas vamos continuar pesquisando.
Alguém fora a Prognus está passando pelo mesmo problema na revisão #693?
comment:22 in reply to: ↑ 21 ; follow-up: ↓ 23 Changed 15 years ago by niltonneto
Replying to diogenesduarte:
Então... Olha só o que fizemos em ambiente de desenvolvimento:
1-Temos uma versão do expresso instalada há pouco mais de 2 meses. 2-Na pasta /var/www/expresso, fizemos checkout da revisão 688 e enviamos diversos e-mails para o mesmo usuário. TODOS se mostraram com o horário exato apontado no servidor de IMAP. Efetuamos logoff, limpamos cookies, fechamos navegador, etc. O horário permaneceu inalterado. 3-Renomeamos a pasta expresso e fizemos novamente checkout dentro da pasta /var/www/expresso, porém da ultima revisão existente no svn(693). 4-Reiniciamos o navegador, limpamos todos os cookies, acessamos novamente o expresso e os horários continuam iguais ao do código da revisão 688, equivalentes ao horário do servidor de IMAP no momento do recebimento do email(A velha discussão do udate). 5-Enviamos novos e-mails, saímos do módulo, voltamos novamente, efetuamos logoff, fechamos o browser, e ao logar novamente os horários permaneciam corretos, de acordo com o horário do servidor de imap. 6-Voltamos ao código da revisão 688, e tudo ocorreu como nos outros testes. 7-Para finalizar, criamos outros usuários para fazer tudo que fizemos nas outras etapas, enviamos inúmeros e-mails entre eles mudamos novamente as revisões e tudo aponta para o horário correto enviado no imap.
Como havia dito, tentamos exaustivamente simular esse erro, sem sucesso algum. Partimos agora para uma nova estratégia, que é a de verificar as possíveis modificações que enviamos na revisão 689, que combinadas com alguma configuração de ambiente possa resultar em comportamento diferente em relação a horário. O grande problema é que, salvo engano, as rotinas em javascript não se metem na questão de traduções de horário do email, mesmo porque ninguém sabe o horário que pode estar no pc cliente. Por isso partimos direto para analisar as modificações que fizemos nos arquivos .php. Ainda não encontramos um motivo para isso acontecer, mas vamos continuar pesquisando.
Alguém fora a Prognus está passando pelo mesmo problema na revisão #693?
Olá, Fiz um svn-update (trunk do expressolivre.org) e enviei um email para mim mesmo. Tanto na lista quanto no cabeçalho as mensagens apareceram corretamente. William, ainda está acontecendo por aí? Vc usa a configuração de TimeZone? no php.ini?
comment:23 in reply to: ↑ 22 ; follow-up: ↓ 24 Changed 15 years ago by wmerlotto
Replying to niltonneto:
Alguém fora a Prognus está passando pelo mesmo problema na revisão #693?
Realmente não sei... Mas seria bom.
Olá, Fiz um svn-update (trunk do expressolivre.org) e enviei um email para mim mesmo. Tanto na lista quanto no cabeçalho as mensagens apareceram corretamente. William, ainda está acontecendo por aí? Vc usa a configuração de TimeZone? no php.ini?
Então, não temos nada configurado no php.ini e mais estranho é que com o código antigo (revisão [677], por exemplo) este problema não ocorre.
Qual a versão do firefox e php5 vcs estão utilizando?
Nilton, sabe pq não estávamos utilizando a versão oficial antes? Então, o no firefox 3.0.4 a pesquisa de e-mail (na revisão [677]) não funciona. Atualizando para 3.0.6 funciona blz. Mas o com o código novo (revisão [693]) a pesquisa funciona normalmente no firefox antigo e no novo... Estranho...
comment:24 in reply to: ↑ 23 Changed 15 years ago by niltonneto
Replying to wmerlotto:
Replying to niltonneto:
Alguém fora a Prognus está passando pelo mesmo problema na revisão #693?
Realmente não sei... Mas seria bom.
Olá, Fiz um svn-update (trunk do expressolivre.org) e enviei um email para mim mesmo. Tanto na lista quanto no cabeçalho as mensagens apareceram corretamente. William, ainda está acontecendo por aí? Vc usa a configuração de TimeZone? no php.ini?
Então, não temos nada configurado no php.ini e mais estranho é que com o código antigo (revisão [677], por exemplo) este problema não ocorre.
Qual a versão do firefox e php5 vcs estão utilizando?
Nilton, sabe pq não estávamos utilizando a versão oficial antes? Então, o no firefox 3.0.4 a pesquisa de e-mail (na revisão [677]) não funciona. Atualizando para 3.0.6 funciona blz. Mas o com o código novo (revisão [693]) a pesquisa funciona normalmente no firefox antigo e no novo... Estranho...
Bota estranho nisso. Eu estou usando FF 3.0.5 e PHP 5.2.6
comment:25 follow-up: ↓ 26 Changed 15 years ago by wmerlotto
Após as ultimas alterações no código, acho que esta [694], não houve mais problemas com o horário. Creio que este ticket pode ser fechado.
comment:26 in reply to: ↑ 25 Changed 15 years ago by niltonneto
- Status changed from new to closed
- Resolution set to fixed
- Milestone set to Expresso Mail 1.234
comment:28 Changed 13 years ago by niltonneto
- Milestone Expresso Mail 1.234 deleted
Milestone Expresso Mail 1.234 deleted
Meu ambiente de desenvolvimento possui o horário de Brasília.
Não consegui simular o ocorrido!
Os serviços do ExpressoLivre? estão todos na mesma máquina ou estão em máquinas diferentes?
-- Sem mais para o momento, Rodrigo Souza