BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 29 мар 2024, 10:45

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 13 ] 
Автор Сообщение
 Заголовок сообщения: Беда со временем!
СообщениеДобавлено: 30 мар 2016, 13:54 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Случилось страшное! Наши гос."деятели" ничего лучше выдумать не могли как отменить перевод на летнее время.
Я думал что готов к этому....

Сейчас:
1) на сервере время правильное. (обновлял пакетом tzdata)
2) в джаве время правильное. обновлял через tzupdater скормив ему свежий iana файл. Проверял в биллинге скриптом:
Код:
import bitel.billing.server.util.*;

public void main( setup, con, conSlave )
{
   Calendar calendar = new GregorianCalendar();
   calendar.set( Calendar.DATE, 1 );
   print( TimeUtils.convertCalendarToDate( calendar ) );
   Date november = new Date( calendar.getTimeInMillis() + (2678400000L) );
   print( november );
}

он на выходе показывает:
Код:
GENERATE_TIME: 30.03.16 11:02:48
EXECUTION_STOP_TIME: 30.03.16 11:02:48
PROCESS_TIME: 29

OUT:
Tue Mar 01 11:02:48 AZT 2016
Fri Apr 01 11:02:48 AZT 2016

время и дата и таймзона правильные. В своих логах биллинг также пишет правильное время для происходящих событий.

В mysql время тоже правильное:
Код:
+---------------------+
| now()               |
+---------------------+
| 2016-03-30 11:33:47 |
+---------------------+


Для activemq джавы тоже не забыл обновить таймзону.

Казалось что все хорошо. Ан нет. Сегодня выяснилось, что если абоненту посадить расход (к примеру) - он садится ВЧЕРАШНИМ днем, да и еще на 1 позже.

Вот табличка:
Код:
mysql> select * from contract_charge where cid=2420;
+------+------------+------+----+-----+-------+---------+---------------------+---------+
| id   | dt         | cid  | pt | uid | summa | comment | lm                  | payback |
+------+------------+------+----+-----+-------+---------+---------------------+---------+
| 4940 | 2016-03-29 | 2420 |  4 |   1 |  0.01 |         | 2016-03-30 11:26:29 |       0 |
+------+------------+------+----+-----+-------+---------+---------------------+---------+


Расход сажал сегодня, 2016-03-30 11:26 (именно это время и дата были в окне установки расхода сверху/слева и именно они в клиенте биллинга сверху/справа), а сел расход как за вчерашнее число. В табличке mysql нет времени для поля dt, только дата, но в клиенте биллинга показывается на час позже (см скриншот.)

Что это, как с этим бороться?

Код:
Информация о версии:

  Клиент: вер. 6.1.833 / 26.02.2015 20:50:59
    os: Mac OS X; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_66
    ВНИМАНИЕ: Спецификация версии 1.8 не рекомендуется
  Сервер: вер. 6.1.1047 / 04.03.2015 19:50:23
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.7.0_65

  card: вер. 6.1.204 / 04.03.2015 19:50:22
  inet: вер. 6.1.661 / 05.03.2015 19:12:18
  npay: вер. 6.1.184 / 11.02.2015 04:02:21
  reports: вер. 6.1.196 / 08.02.2015 20:45:22
  subscription: вер. 6.1.30 / 08.02.2015 20:45:31
  tv: вер. 6.1.229 / 15.01.2016 01:28:58

Окружение:

  Клиент:
    os: Mac OS X x86_64, 10.11.2
    java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_66
    jre home: /Library/Java/JavaVirtualMachines/jdk1.8.0_66.jdk/Contents/Home/jre
    default tz: 30.03.2016 11:52 AZST +0500 (Asia/Baku)
    user tz: 30.03.2016 11:52 AZST +0500 (Asia/Baku)
    locale: ru_RU
  Сервер:
    os: Linux amd64, 3.2.0-4-amd64
    java: Java HotSpot(TM) 64-Bit Server VM, v.1.7.0_65
    jre home: /opt/java/jdk1.7.0_65/jre
    default tz: 30.03.2016 11:52 AZT +0400 (Asia/Baku)
    locale: en_US


Вложения:
Screen Shot 2016-03-30 at 11.31.26.png
Screen Shot 2016-03-30 at 11.31.26.png [ 14.33 КБ | Просмотров: 6150 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Беда со временем!
СообщениеДобавлено: 30 мар 2016, 13:57 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
У меня есть еще один биллинг 4,6 для другого проекта, проверил в нем, а там все хорошо


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Беда со временем!
СообщениеДобавлено: 30 мар 2016, 13:59 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Еще обратил внимание - в информации о версии таймзона: default tz: 30.03.2016 11:52 AZT +0400 (Asia/Baku)
А если навести на текущее время в клиенте биллинга он показывает таймзону AZST +05 (скриншот.)


Вложения:
Screen Shot 2016-03-30 at 11.30.34.png
Screen Shot 2016-03-30 at 11.30.34.png [ 6.88 КБ | Просмотров: 6148 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Беда со временем!
СообщениеДобавлено: 30 мар 2016, 14:02 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
А вот access.log моей установки расхода:
[30/Mar/2016:11:26:29 +0400] 0.007 200 294 \"POST /executer HTTP/1.1\"UID=1 module=contract&BGBillingSecret=
Время и дата опять правильные! А в базу садится вчерашним днем и на час позже


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Беда со временем!
СообщениеДобавлено: 30 мар 2016, 15:10 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
survivor писал(а):
Еще обратил внимание - в информации о версии таймзона: default tz: 30.03.2016 11:52 AZT +0400 (Asia/Baku)
А если навести на текущее время в клиенте биллинга он показывает таймзону AZST +05 (скриншот.)

потому что у вас в сервере и клиенте разные java стоят и разные tzdata там
Код:
  Клиент:
    java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_66
    default tz: 30.03.2016 11:52 AZST +0500 (Asia/Baku)
    user tz: 30.03.2016 11:52 AZST +0500 (Asia/Baku)
  Сервер:
    java: Java HotSpot(TM) 64-Bit Server VM, v.1.7.0_65
    default tz: 30.03.2016 11:52 AZT +0400 (Asia/Baku)

то что показывается в клиенте - берётся из клиента, потому что клиент синхронизирует время по названию зоны (Asia/Baku) а не по смещению.

какая зона правильная то в итоге? +04 или +05
и вопрос ещё интересный - почему у вас в старых необновлённых жавах в одной AZST +0500 (Asia/Baku) а в другой AZT +0400 (Asia/Baku)

как правильнее: дождаться когда выйдет релиз включающий tzdata2016c, здесь информация об этом
http://www.oracle.com/technetwork/java/ ... 38805.html

что делать сейчас: имхо поставить в сервере нужную таймзону намертво из тех, которая вам походит и в которой нет перевода на летнее время

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Беда со временем!
СообщениеДобавлено: 30 мар 2016, 15:17 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
судя по:
user tz: 30.03.2016 11:52 AZST +0500 (Asia/Baku)

default tz: 30.03.2016 11:52 AZT +0400 (Asia/Baku)
сервер у вас на AZT (зимнее) а клиент на AZST (самер тайм), т.е. правильная зона у вас должна быть зимняя +0400
а теперь я понял почему сервер у вас не перевёл - я не заметил, вы же там обновили как говорите. вам и на клиентАХ надо сделать всё то же самое, чтобы рисовало там AZT +0400

предыдущие советы отменяются тогда, обновите просто tzdata как сделали на серваке. а в следующих релизах jre должны быть уже правильные

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Беда со временем!
СообщениеДобавлено: 30 мар 2016, 15:24 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Цитата:
обновите просто tzdata как сделали на серваке. а в следующих релизах jre должны быть уже правильные

обновить на клиенте?

а как объяснить вчерашний день в базе?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Беда со временем!
СообщениеДобавлено: 30 мар 2016, 15:44 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Клиент (web-сервис) обычно время передает с указанием таймзоны.
К сожалению на данный момент в веб-сервисах не очень удобно в аргументах метода передавать объект java.util.Date (который на самом деле дата+время) только как дату (точнее сложно указать что это только дата).
Получается от клиента идет 2016-03-30 00:00:00+05:00
А на сервере таймзона +04:00, а это будет уже 2016-03-29 23:00:00+04:00


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Беда со временем!
СообщениеДобавлено: 30 мар 2016, 16:16 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
survivor писал(а):
обновить на клиенте?


да


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Беда со временем!
СообщениеДобавлено: 30 мар 2016, 16:22 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Обновил джаву на клиенте tzupdater'ом, все нормализовалось, и дата и время...
Уфф, отлегло... Всем спасибо!

Хотя мне теперь обновлять джавы всем операторам, это жесть...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Беда со временем!
СообщениеДобавлено: 30 мар 2016, 17:24 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2676
Карма: 72
там авто обновление можно поставить :D


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Беда со временем!
СообщениеДобавлено: 30 мар 2016, 17:28 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
там нечего пока обновлять, в новых жавах неизвестно когда это будет, а проблема уже сейчас

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Беда со временем!
СообщениеДобавлено: 30 мар 2016, 19:02 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
Надо взять на заметку то, что tzupdater теперь не выкладывают вместе с timezone свежей, а нужно брать последний iana и ему скармливать.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 13 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.055s | 44 Queries | GZIP : On ]