Ao inserir dados com os atributos calendar, java.util.Date e timestamp em um ObjectGrid, você deve garantir que esses atributos de data e hora sejam criados com base no mesmo fuso horário, principalmente quando implementados em vários servidores em vários fusos horários. Usar o mesmo objeto de data e hora baseado em fuso horário pode garantir que o aplicativo esteja protegido por fuso horário e que os dados possam ser consultados pelos predicados calendar, java.util.Date e timestamp.
Sem especificar explicitamente um fuso horário ao criar objetos de data e hora, o Java usa o fuso horário local e pode causar valores de data e hora inconsistentes nos clientes e servidores.
Considere um exemplo em uma implementação distribuída na qual o client1 está no fuso horário [GMT-0] e o client2 está no [GMT-6], e ambos querem criar um objeto java.util.Date com o valor '1999-12-31 06:00:00'. Então, o client1 criará o objeto java.util.Date com o valor '1999-12-31 06:00:00 [GMT-0]' e o client2 criará o objeto java.util.Date com o valor '1999-12-31 06:00:00 [GMT-6]'. Os objetos java.util.Date não são iguais porque o fuso horário é diferente. Um problema semelhante ocorre quando você pré-carrega os dados nas partições que residem em servidores em fusos horários diferentes se o fuso horário local for utilizado para criar objetos de data e hora.
Para evitar o problema descrito, o aplicativo pode escolher um fuso horário como [GMT-0] como fuso horário base para criar objetos calendar, java.util.Date e timestamp.