This is an automated email from the ASF dual-hosted git repository.

houqp pushed a commit to branch qp_interval
in repository https://gitbox.apache.org/repos/asf/arrow.git

commit 3d127ea0012b93e3adb3c77ba996dd8e59ec7006
Author: Qingping Hou <[email protected]>
AuthorDate: Sat Sep 11 11:34:08 2021 -0700

    ARROW-13977: [Format] clarify leap seconds and leap days for interval type
---
 format/Schema.fbs | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/format/Schema.fbs b/format/Schema.fbs
index 0ee23bb..d9d67aa 100644
--- a/format/Schema.fbs
+++ b/format/Schema.fbs
@@ -357,18 +357,23 @@ enum IntervalUnit: short { YEAR_MONTH, DAY_TIME, 
MONTH_DAY_NANO}
 // days can differ in length during day light savings time transitions).
 // All integers in the types below are stored in the endianness indicated
 // by the schema.
+//
 // YEAR_MONTH - Indicates the number of elapsed whole months, stored as
 //   4-byte signed integers.
-// DAY_TIME - Indicates the number of elapsed days and milliseconds,
-//   stored as 2 contiguous 32-bit integers (8-bytes in total).  Support
+// DAY_TIME - Indicates the number of elapsed days and milliseconds (no leap 
seconds),
+//   stored as 2 contiguous 32-bit integers (8-bytes in total). Support
 //   of this IntervalUnit is not required for full arrow compatibility.
+//   DAY_TIME interval doesn't have total order due to day light savings.
 // MONTH_DAY_NANO - A triple of the number of elapsed months, days, and 
nanoseconds.
 //  The values are stored contiguously in 16 byte blocks. Months and
 //  days are encoded as 32 bit integers and nanoseconds is encoded as a
-//  64 bit integer. All integers are signed. Each field is independent
-//  (e.g. there is no constraint that nanoseconds have the same sign
-//   as days or that the quantity of nanoseconds represents less
-//   than a day's worth of time).
+//  64 bit integer. Days takes into account of leap days. Nanoseconds does not
+//  allow for leap seconds. All integers are signed. Each field is independent
+//  (e.g. there is no constraint that nanoseconds have the same sign as days or
+//  that the quantity of nanoseconds represents less than a day's worth of
+//  time).
+//  MONTH_DAY_NANO interval doesn't have total order due to leap days and day
+//  light savings.
 table Interval {
   unit: IntervalUnit;
 }

Reply via email to