Перевод атомных часов на одну секунду вызвал сбой серверных приложений

Discussion in 'Мировые новости. Обсуждения.' started by Suicide, 1 Jul 2012.

  1. Suicide

    Suicide Super Moderator
    Staff Member

    Joined:
    24 Apr 2009
    Messages:
    2,373
    Likes Received:
    6,619
    Reputations:
    693
    Перевод мировых атомных часов на одну секунду привёл к массовому зависанию серверных приложений


    [​IMG]

    В полночь с 30 июня на 1 июля с целью синхронизации с астрономическим временем Земли эталонные мировые атомные часы были приостановлены на одну секунду, таким образом в последней минуте оказалось 61 секунда, а на некоторых часах можно было наблюдать волшебное время "23:59:60" или два раза по "23:59:59". Подобный шаг привёл к непредвиденному коллапсу многих приложений и сервисов. Проблема была вызвана зацикливанием из-за неготовности обработать появление лишней секунды. В большинстве систем, на которых проявилась проблема, была настроена синхронизация точного времени по NTP.

    В итоге, испытывали проблемы с работой некоторые сайты (в том числе Reddit, LinkedIn и Mozilla), наблюдалось массовое зависание серверных приложений (в основном приложения работающие в Java VM, такие как Hadoop и Cassandra), начинала съедать все процессорные ресурсы СУБД MySQL, отключились VPN-туннели на базе OpеnVPN, зависали Linux-серверы.

    В большинстве случаев администраторы были вынуждены перезапустить зависшие серверы. Тем не менее, для стабилизации некоторых приложений, начавших потреблять излишние ресурсы CPU, достаточно было вручную выставить корректное время через команду "date `date +"%m%d%H%M%C%y.%S"`". Для некоторых систем мог дополнительно потребоваться останов ntpd на время выполнения данной команды и перезапуск пожирающих CPU приложений. Интересно, что в системе отслеживания ошибок Red Hat информация о возможной проблеме была опубликована ещё в 2009 году и исправлена в RHEL 5.4 (дополнительно было опубликовано уведомление, что RHEL не подвержен проблеме). В марте 2012 года в ядре Linux была выявлена иисправлена проблема с зависанием при появлении лишней секунды на некоторых системах с таймером высокого разрешения (когда ntpd вызывал adjtimex в ядре оставалась неубранной блокировка). О зависании Linux-серверов в основном сообщают пользователи систем с необновлённым ванильным ядром, собранным вручную, а также пользователи штатных пакетов с Linux ядрами 2.6.32, 3.1 и 3.2 из состава Debian GNU/Linux.

    При этом, добавление лишней секунды для синхронизации времени с периодом вращения земли производится не в первый раз, прошлое прибавление состоялось 31 декабря 2008 года и обошлось без глобальных проблем. В прошлом году внимание к проблеме пыталась поднять компания Google, поделившись своим методом устранения негативного эффекта - разбиением лишней секунды на большой интервал корректировки, с прибавлением каждый раз по миллисекунде, что приведёт к плавному размыванию секунды по большому отрезку времени. Похожее готовое практическое решение (скрипт для плавного прибавления секунды) месяц назад опубликовал один из разработчиков Opera.

    1/07/2012
    http://www.opennet.ru/opennews/art.shtml?num=34234
    http://www.wired.com/wiredenterprise/2012/07/leap-second-bug-wreaks-havoc-with-java-linux/
     
    #1 Suicide, 1 Jul 2012
    Last edited: 1 Jul 2012
  2. \/ITA

    \/ITA Member

    Joined:
    21 Sep 2011
    Messages:
    25
    Likes Received:
    28
    Reputations:
    8
    ну для таких "виртуальных сосцов на виртуальном теле виртуального кента" как Java это довольно распространенная трабла еще со времен 2000 года ^_^

    P.S. в наших структурах проблем не наблюдалось.
     
  3. Suicide

    Suicide Super Moderator
    Staff Member

    Joined:
    24 Apr 2009
    Messages:
    2,373
    Likes Received:
    6,619
    Reputations:
    693
    Наши это которые мелкомягкие наверно? Ну да.. там таких проблем не должно быть..
     
  4. AaoiOa

    AaoiOa Member

    Joined:
    18 Jun 2012
    Messages:
    146
    Likes Received:
    7
    Reputations:
    7
    Ну да, у них же не UTC
     
  5. RexTiam

    RexTiam Member

    Joined:
    2 Nov 2009
    Messages:
    113
    Likes Received:
    45
    Reputations:
    5
    Один клиентский сайт по этому делу упала база данных, пришлось поднимать тучу приложений
     
  6. \/ITA

    \/ITA Member

    Joined:
    21 Sep 2011
    Messages:
    25
    Likes Received:
    28
    Reputations:
    8
    все структуры юзают мелкософт, не лицензионный мелкософт в AD
    хочу пингвинов наставить, но нет :(