Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M Новый топик    Ответить
 Атрибуты файла и перевод времени  [new]
AlexKB
Member

Откуда: Запорожье
Сообщений: 790
Добрый день, уважаемые форумчане.
Возник следующий вопрос:
Ежедневно сканирую группу файлов, контролирую их размер и дату-время модификации и вывожу на экран в виде таблицы. Это транспортные файлы, которые необходимо держать в периоде актуальности, скажем месяц. Размер не интересен, а вот время модификации примерно одинаково (плюс минус десяток секунд), скажем 00:25:20. После перевода времени я вижу, что файлы созданные до перевода отражают время на 1 час больше, как будто они были модифицированы в 01:25:20, а новые файлы отображают правильно время модификации в 00:25:20. Природа такого проявления понятна (способ хранения файлового атрибута времени в миллисекундах от Рождества Христова), через месяц ситуация выровняется, старые файлы все таки будут удалены. Но в течении месяца не хотелось бы чтобы такая картина бросалась в глаза пользователям раз, плюс там еще проводится некий автоматический анализ. При обратном переводе времени будет то же самое.

А теперь вопрос, кто и как избавлялся от такого проявления, если конечно это вообще напрягало кого-либо? Сделать на COS можно все, но не хотелось бы городить собственный огород, а использовать нечто стандартное, если в Каше такое есть.
Версия Каше 2016.1 - сам ничего пока не нашел.

Заранее благодарен!
27 мар 18, 10:44    [21289005]     Ответить | Цитировать Сообщить модератору
 Re: Атрибуты файла и перевод времени.  [new]
Alexey Maslov
Member

Откуда: СПб
Сообщений: 1517
AlexKB
...не хотелось бы чтобы такая картина бросалась в глаза пользователям...
Конечно, ты лучше знаешь своих пользователей, но в принципе им ведь тоже известно о переводе часов.

Принудительно закрывать файлы до 01:00 (или когда там часы переводятся) нельзя?
27 мар 18, 11:06    [21289098]     Ответить | Цитировать Сообщить модератору
 Re: Атрибуты файла и перевод времени.  [new]
DAiMor
Member

Откуда: Volzhsky -> Moscow -> CZ, Brno
Сообщений: 2537
AlexKB,

Можно например брать время изменения в UTC и корректировать самому
USER>w $zdt(##class(%File).GetFileDateModified("CACHE.DAT",1))
02/13/2018 08:47:34
USER>w $zdt(##class(%File).GetFileDateModified("CACHE.DAT"))
02/13/2018 10:47:34

У меня здесь тоже перевод времени был, и реальное время изменения 9:47 в моем часовом поясе
27 мар 18, 11:09    [21289110]     Ответить | Цитировать Сообщить модератору
 Re: Атрибуты файла и перевод времени.  [new]
AlexKB
Member

Откуда: Запорожье
Сообщений: 790
Alexey Maslov,
В том то и весь вопрос, что событие уже состоялось и состоялось правильно, и это уже зафиксировано в базе Каше. Но после перевода времени, при повторной вычитке атрибутов тех же файлов (файлы уже не меняются), их время отображается так, как будто событие состоялось со смещением на 1 час от регламентного времени.
27 мар 18, 11:10    [21289113]     Ответить | Цитировать Сообщить модератору
 Re: Атрибуты файла и перевод времени.  [new]
AlexKB
Member

Откуда: Запорожье
Сообщений: 790
DAiMor
AlexKB,

Можно например брать время изменения в UTC и корректировать самому
USER>w $zdt(##class(%File).GetFileDateModified("CACHE.DAT",1))
02/13/2018 08:47:34
USER>w $zdt(##class(%File).GetFileDateModified("CACHE.DAT"))
02/13/2018 10:47:34

У меня здесь тоже перевод времени был, и реальное время изменения 9:47 в моем часовом поясе


Это мне понятно.
Но как вот самому отслеживать когда был перевод времени, чтобы корректировать время только тех файлов, которые получили вполне верный атрибут времени до перевода и не корректировать время для тех файлов, которые получили атрибут времени уже после перевода..?
27 мар 18, 11:14    [21289133]     Ответить | Цитировать Сообщить модератору
 Re: Атрибуты файла и перевод времени.  [new]
DAiMor
Member

Откуда: Volzhsky -> Moscow -> CZ, Brno
Сообщений: 2537
проблема тут заключается в том, что работа с часовыми поясами вещь довольно сложная если начнешь глубоко копать. Есть часовые пояса с отклонением в 15, 30 минут, вместо привычных сдвигов в час. Еще часто меняются часовые пояса даже в одной стране. В России, было сокращение часовых поясов, потом голосование за смену часового пояса порегионально. И внедрить все это Cache думаю и возможно, но потребует детального выбора часового пояса по их региональным привязкам, сейчас довольно просто и регион не учитывается.
В интернете есть пополняемая база изменений в часовых поясах tzdata используется в linux ее можно использовать для корректировки времени. Если твои сервера работают под linux наверно можно синтегрироваться с tzdata, чтобы корректно время отображать, конечно часовой пояс должен быть корректно настроен на сервере.
27 мар 18, 11:20    [21289160]     Ответить | Цитировать Сообщить модератору
 Re: Атрибуты файла и перевод времени.  [new]
AlexKB
Member

Откуда: Запорожье
Сообщений: 790
Ведь те же файловые утилиты ОС (Far и другие) правильно показывают время (правильное для человеческого глаза и человеческого понимания).
27 мар 18, 11:22    [21289168]     Ответить | Цитировать Сообщить модератору
 Re: Атрибуты файла и перевод времени.  [new]
DAiMor
Member

Откуда: Volzhsky -> Moscow -> CZ, Brno
Сообщений: 2537
AlexKB
Ведь те же файловые утилиты ОС (Far и другие) правильно показывают время (правильное для человеческого глаза и человеческого понимания).
Операционная система хранит время в UTC, и видимо можно запрашивать разное время, но Cache видимо запрашивает как то иначе. Думаю тут можно и нужно спросить InterSystems, почему так.
27 мар 18, 11:25    [21289180]     Ответить | Цитировать Сообщить модератору
 Re: Атрибуты файла и перевод времени.  [new]
AlexKB
Member

Откуда: Запорожье
Сообщений: 790
Мне кажется, что это недоработка Интерсистемс в плане получения адекватного для человека файлового атрибута времени. Не учитывается сам факт перевода времени при возвращении такого атрибута системной функцией $ZU(140,2,....), а только абсолютное время модификации плюс смещение от Гринвича.
27 мар 18, 11:29    [21289195]     Ответить | Цитировать Сообщить модератору
 Re: Атрибуты файла и перевод времени.  [new]
DAiMor
Member

Откуда: Volzhsky -> Moscow -> CZ, Brno
Сообщений: 2537
Я полагаю, что они берут просто время в UTC и отображают его с текущим смещением.
27 мар 18, 11:30    [21289198]     Ответить | Цитировать Сообщить модератору
 Re: Атрибуты файла и перевод времени.  [new]
AlexKB
Member

Откуда: Запорожье
Сообщений: 790
DAiMor
Я полагаю, что они берут просто время в UTC и отображают его с текущим смещением.


Все сводится именно к этому...
Может как то сказать Дядям..?
27 мар 18, 11:32    [21289210]     Ответить | Цитировать Сообщить модератору
 Re: Атрибуты файла и перевод времени.  [new]
Alexey Maslov
Member

Откуда: СПб
Сообщений: 1517
AlexKB
Может как то сказать Дядям..?
Кто первым встал, того и тапки...
Но разборки с ними могут вылиться в долгую историю... коль скоро ОС возвращает время правильно, я предпочёл бы использовать внешний вызов, $zf(-1,...) или pipe.
27 мар 18, 11:56    [21289310]     Ответить | Цитировать Сообщить модератору
 Re: Атрибуты файла и перевод времени.  [new]
DAiMor
Member

Откуда: Volzhsky -> Moscow -> CZ, Brno
Сообщений: 2537
AlexKB
DAiMor
Я полагаю, что они берут просто время в UTC и отображают его с текущим смещением.


Все сводится именно к этому...
Может как то сказать Дядям..?
WRC?
27 мар 18, 11:56    [21289313]     Ответить | Цитировать Сообщить модератору
 Re: Атрибуты файла и перевод времени.  [new]
AlexKB
Member

Откуда: Запорожье
Сообщений: 790
DAiMor,
Я скажу больше - эта проблема, а это все-таки проблема, тянется еще со старых версий Каше под Виндой.
Для кого-то может оказаться очень критичной такая ситуация - неверный анализ сигнальных, или транспортных файлов.
Я то переживу, но забочусь о всем Человечестве!!!

Кто близок к создателям, прошу - засветите проблему. Может они (ИС) о ней знают и сознательно так поступают по веским причинам, а может никто просто не акцентировал внимание и никто об этом не знает...
27 мар 18, 12:06    [21289372]     Ответить | Цитировать Сообщить модератору
 Re: Атрибуты файла и перевод времени.  [new]
Alexey Maslov
Member

Откуда: СПб
Сообщений: 1517
AlexKB
Кто близок к создателям, прошу - засветите проблему.
Как ты конечно знаешь, они предпочитают, чтобы сообщал тот, кто на неё наткнулся. Могут потребоваться дополнительные сведения и т.д. Например, у себя даже повторить её не смогу, т.к. часы не переводятся уже несколько лет.

Если нет сопровождения, это конечно плохо, но не смертельно, прецеденты адекватной реакции ISC были.
27 мар 18, 12:14    [21289399]     Ответить | Цитировать Сообщить модератору
 Re: Атрибуты файла и перевод времени.  [new]
AlexKB
Member

Откуда: Запорожье
Сообщений: 790
Alexey Maslov,
Просто я в настоящее время для ИС не есть официальное лицо, хожу, как цыган по базарам, подрабатываю то там, то сям...
Прошли те времена, когда я выступал в качестве партнера-разработчика и являлся контактным лицом...
27 мар 18, 12:23    [21289440]     Ответить | Цитировать Сообщить модератору
Все форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M Ответить