locked
saat sorunu RRS feed

  • Soru

  • Merhaba 6 ocak 2017 de server saatlerimizde herhangi bir değişiklik yokken clientlarımızda 1 saat geri alındığını gördük.Bu problemle karşılaşan oldumu acaba?.clientlar saatlerini dc üzerinden alıyordu
    6 Ocak 2017 Cuma 21:30

Yanıtlar

  • Merhaba,

    Microsoft tarafından sorunun bir çok müşteride karşılaşılması üzerine bu şekilde bir açıklama yapıldı.

    5 Ocak 2017’yi 6 Ocak 2017’ye bağlayan gece yarısında Windows üzerinde çalışan bazı uygulamalarda, uygulama ile sistem saati arasında 1 saat fark oluştuğu ile ilgili geri bildirimler aldık. Bu fark nedeniyle uygulamaların crash olması, yüksek CPU değerleri kullanması ve logların 1 saat farklı yazılmış olması gibi sorunlar bildirildi.

     

    Sorun yaşanan sunucular üzerinde İşletim sistemi saatinin değişmediği gözlemlenmiştir.

     

    30 Ekim 2016 tarihinden sonra gün ışığından yararlanma uygulamasının kullanılmaycağı açıklandı. Bu nedenle 30 Ekim 2016 tarihinde DST uygulamasını sonlandırmak ve Türkiye’nin saat dilimini kalıcı olarak UTC+2’den UTC+3’ye taşıyacak değişiklikleri yaptık.

    Bu değişiklik nedeniyle 2016 yılında DST kullanılan kış saati, DST kullanılan yaz saati ve DST kullanılmayan yaz saati olarak 3 farklı saat tanımlamak durumunda kaldık. Windows işletim sistemlerine bu değişikliklerin bir güncelleştirmeyle yüklenmesi sağlanmıştır. Güncelleştirme sonrasında 2016 ve 2017 yılları için farklı saat dilimi ve saat değişikliği bilgileri içeren registry kayıtları vardır. Windows işleim Sistemleri 1 Ocak 2017’den sonra TZI (Time Zone Information) değerini 2017 değeriyle güncellemektedir. Bu nedenle İşletim sistemi seviyesinde saat değişikliği olmamaktadır.

     

    Ancak bazı uygulamaların 2016 TZI değerini cache’lemesi nedeniyle Ocak ayının ilk haftasının 5.günü (6 Ocak) saat 00:00’da sistem saatinin değişeceğini düşünerek uygulama üzerinde saat değişikliğine gidilmiştir. İşletim sistemi, 2017 değerine göre sistem saatini değiştirmediği için uygulamalar üzerinde bahsedilen problemler yaşanmıştır. Bunun engellenmesi için uygulamanın cache’nin güncellenmesi gerekir. Exchange, CAS ve IIS gibi uygulamalar benzer şekilde TZI değerini cache’lemekte ancak belirli periyotlarda güncellemektedir. Bu nedenle 1 Ocak - 6 Ocak arasında bu uygulamalar güncellemesini yapabildiği için sorun gözlemlenmemiştir.

     

    Uygulamalar servis veya işletim sisteminin yeniden başlatılmasıyla güncellemesini tamamlamıştır. Güncelleme sonrasında, uygulamalar 2017 yılına ait TZI değerini kullanmaya başlamışlarsa yeniden benzer bir sorun olmasını beklemeyiz. Çünkü 2017 TZI değerinde DST tamamen devre dışı bırakılmış ve herhangi bir tarihte saat değişikliği gözlemlenmemektedir.

     

    Ek olarak .Net uygulamalarında DateTime.Now hesaplarının yine 2016 yılına ait TZI değerinin farklı olmasından dolayı “bazen” yanlış yorumlandığı ile ilgili geri bildirimler aldık. .Net’in Now işlemini optimize etmesi için DST kurallarını cache’lemesi bu soruna sebep olabilir. Aynı şekilde uygulamanın restart edilmesiyle bu sorun çözülebilir. Şu an Türkiye’nin tekrardan kış saatine geçmesi veya saat dilimi değişikliği yapması beklenmemektedir. Uygulama geliştiriciler böyle bir olasılığı düşünerek kodlarını güncellemek isterlerse TimeZoneInfo.ConvertTime ile sorunun önüne geçebilirler.

    • Yanıt Olarak İşaretleyen Burak Uğur 17 Ocak 2017 Salı 14:52
    8 Ocak 2017 Pazar 18:07