Что это значит, если «високосные секунды« размазаны », так что не требуется таблица високосных секунд»? - PullRequest
0 голосов
/ 30 августа 2018

Из документации Google Cloud Firestore:

https://cloud.google.com/nodejs/docs/reference/firestore/0.15.x/Timestamp#toDate

Отметка

CLASS

Метка времени представляет собой момент времени, независимый от любой часовой пояс или календарь, представленный в виде секунд и долей секунд с наносекундным разрешением во время UTC Epoch. Это закодировано с помощью Proleptic Gregorian Calendar, который расширяет григорианский календарь в обратном порядке до первого года. Кодируется при условии, что все минуты 60 секунд, т. Е. Високосные секунды «размазываются», так что без прыжка Вторая таблица необходима для интерпретации. Диапазон от 0001-01-01T00: 00: 00Z - 9999-12-31T23: 59: 59.999999999Z.

Мой текст выделен жирным шрифтом

Что именно означает «размазать» под високосные секунды?

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

let querySnap = await colRef.orderBy('created', 'asc').limit(10).get();

мне нужно рассмотреть это?

1 Ответ

0 голосов
/ 30 августа 2018

Прочитайте Google документацию о смазывании времени :

С 2008 года вместо применения дополнительных секунд на наших серверах используется тактовые шаги, мы «размазали» лишнюю секунду по часам до и после каждого прыжка. Прыжковый мазок распространяется на все Google услуги, включая все наши API.

Вы и ваши пользователи вряд ли заметите этот эффект, и это устраняет необходимость в написании специального кода для обработки внезапных сдвигов во времени, которые обычно требуются для учета високосной секунды.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...