Прошу ознакомиться с ниже описанной информацией по работе Супермаг Плюс:
Прошу донести информацию до всех наших клиентов. В двух словах, 26 октября 2014 года, ПО СМ+ прекратит свою работу в связи с ошибкой в работе программного модуля «Oracle RDBMS». Ниже представлено описание ошибки, и способ ее устранения.
Описание проблемы и ее решения.
1) Наши законотворцы решили «переиграть» решение о фиксации «летнего времени» в России. И с 26.10.2014 вернуть «зимнее время» и таким его и оставить – т.е. перевести стрелки часов на 1 час назад.
2) Помимо отмены «летнего времени» изменились временные зоны на территории России (названия, смещение в часах от Гринвича, привязка регионов к зонам).
3) Для учета этих изменений Microsoft выпустила патч KB2998527. Его желательно установить (как – описано в множестве источников в интернете), так как иначе придется вручную переводить часы на 1 час назад 26.10.2014 на всех компьютерах, очень внимательно следить за всем программным обеспечением, зависимым от настроек временных зон и т.д.
4) Но выяснилось, что установка данного патча на Windows приводит к системному сбою в работе Oracle RDBMS. Компания Oracle по этому случаю выпустила патч «Patch 19396455: DST-23: DST UPDATE SEPTEMBER 2014 - TZDATA2014F», доступный для следующих версий БД и Windows-платформ:
a. Windows x32
Oracle DB 10.1.0.5
Oracle DB 11.2.0.3
Oracle DB 11.2.0.4
Oracle DB 12.1.0.1
b. Windows x64
Oracle DB 11.2.0.3
Oracle DB 11.2.0.4
Oracle DB 12.1.0.1
5) Так как поддержка Oracle RDBMS версий 10g и ниже прекращена компанией Oracle, то и патчи на них не выходят. Но множество наших клиентов используют именно Oracle DB 10g в составе ПО «Супермаг+».
6) При этом можно выполнить вручную изменения, реализованные в патче, на версии Oracle DB 10g:
a. Открыть каталог %ORACLE_HOME%\oracore\zoneinfo
b. Сделать резервную копию файлов timezlrg.dat и timezone.dat
c. Заменить файлы timezlrg.dat и timezone.dat на аналогичные из патча p19396455_10105_WINNT (files\oracore\zoneinfo\..)
7) Следует понимать, что ставить этот «патч» базы данных необязательно для БД с одним лишь «Супермагом»:
a. Патч содержит корректные имена временных зон и их смещения от GMT/UTC, что необходимо если вы используете типы данных с временными зонами (TIMESTAMP WITH TIMEZONE ,TIMESTAMP WITH LOCAL TIMEZONE).
b. Но в «Супермаге» эти типы данных не применяются.
8) Патч нужен лишь для того, чтобы работала БД после установки патча на Windows - KB2998527.
9) Поэтому у наших клиентов 2 варианта действий:
a. Установить патч на Windows KB2998527. И установить патч на БД (либо используя один из доступных официальных патчей, либо вручную заменой .dat файлов).
b. Не устанавливать патч на Windows и на БД. При этом в ручном режиме осуществить перевод часов на 1 час назад 26.10.2014.
Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 21 сообщение(ий)):
У вас нет прав чтобы видеть скрытый текст, содержащийся здесь.
Сейчас проанализировал таймзоны, которые прилетают с виндовыми обновлениями, и пришел к выводу, что прилетит ещё одно обновление, после 26го числа, которое отключит автоматический переход на летнее/зимнее время. Либо ручками/политикой админу придется отключить на машинах переход, иначе 07.01.2015 время переведется на час вперед, так что будьте бдительны :)
Решил посмотреть утилиту TZEDIT, ссылку на которую отправили выше, и увидел особенность виндовой системы перевода времени, которая заключается в том, что в таймзоне задается день и время перехода на зимнее/летнее время, без привязки к году и т.д.
Обновление KB2998527, изменяет таймзоны следующим образом: -1 час в последнее воскресенье октября, и +1 час в первую среду января. Проиграв эту ситуацию на 2х виртуальных машинах, я убедился в том что прав.
В линуксе например, немного по другому реализовано. Для каждого перевода времени задается точная дата.
Цитата:
/etc/localtime Sat Mar 26 15:59:59 2011 UTC = Sun Mar 27 01:59:59 2011 VLAT isdst=0 gmtoff=36000
/etc/localtime Sat Mar 26 16:00:00 2011 UTC = Sun Mar 27 03:00:00 2011 VLAT isdst=0 gmtoff=39600
/etc/localtime Sat Oct 25 14:59:59 2014 UTC = Sun Oct 26 01:59:59 2014 VLAT isdst=0 gmtoff=39600
/etc/localtime Sat Oct 25 15:00:00 2014 UTC = Sun Oct 26 01:00:00 2014 VLAT isdst=0 gmtoff=36000
/etc/localtime Mon Jan 18 03:14:07 2038 UTC = Mon Jan 18 13:14:07 2038 VLAT isdst=0 gmtoff=36000
/etc/localtime Tue Jan 19 03:14:07 2038 UTC = Tue Jan 19 13:14:07 2038 VLAT isdst=0 gmtoff=36000
Вот ещё кстати доработал старый скрипт сервис+, который содержит новые скомпилированные таймзоны и заливает их на ваши линуксовые кассы. В iplist.txt добавляете ip адреса, запускаете install.cmd и радуетесь автоматическому переводу времени :)
Добрый день.
Фирма 1С:Франчайзи "БЦ Профит" информирует Вас о том, что Федеральным законом от 21.07.2014 № 248-ФЗ "О внесении изменений в Федеральный закон "Об исчислении времени" с 26.10.2014 на территории РФ устанавливаются новые часовые зоны и вводится новое постоянное время, подробнее см..
В связи с этим в платформу "1С:Предприятие" версий 8.2 и 8.3 внесены необходимые изменения.
Поддержка изменений исчисления времени в соответствии с Федеральным законом от 21.07.2014 № 248-ФЗ поддерживается в версиях не ниже 8.2.19.116 от 21.10.2014 и 8.3.5.1231 от 21.10.2014 соответственно.
Для обеспечения корректной работы с датами прошлых периодов в конфигурациях, использующих преобразование в другие часовые зоны, рекомендуется установить и использовать указанные версии платформы "1С:Предприятие 8".
Известные проблемы
Windows XP Embedded and Windows Server 2003 не могут автоматически выбрать правильный новый часовой пояс после установки этого обновления. Пользователи могут выбрать правильный пояс из списка в оснастке "Дата и время" на вкладке "Тime Zone". Часовой пояс можно установить также командой вида tzchange.exe /c <имя часовой зоны>
Пользователи, выполнившие переключение часовых поясов вручную, могут получать неправильные значения даты и времени до тех пор, пока новые изменения не вступят в силу.
Пользователи Windows Vista или Windows Server 2008 могут видеть сообщение "Date out of range" в настройках даты и времени панели управления в период с 26 октября до 1 января 2015 г. Это сообщение не повлияет на работу системы.
Если пользователи установят это обновление на Windows Server 2003 или Windows Embedded, их системы продолжат использовать настройки DST для 2014 г. даже после его окончания. Это может привести к тому, что время будет отображаться неправильно. Для исправления нужно будет установить December Cumulative Update, запланированное к выпуску на декабрь 2014 г. до конца года. После установки December Cumulative Update пользователи, установившие оба обновления – Russian time zone update и December Cumulative Update, получат правильные настройки DST и будут видеть правильное время и после окончания 2014 г.