Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-608

[Format] Days since epoch date type

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 0.3.0
    • Format
    • None

    Description

      While we've decided to make the primary IPC date type be int64 milliseconds since the UNIX epoch, in many libraries dates are represented as integer (int32, usually) days since some epoch. In the Python standard library, the epoch is the year 0:

      >>> d = datetime.date(2017, 1, 17)
      >>> d.toordinal()
      736346
      >>> d.toordinal() / 365
      2017
      

      At least in Cplusplus-land, in working on ARROW-452 I ran into the problem of how to do zero-copy reads of such data, while preserving the metadata to know that the values are dates. I added a cpp-only "date32" type to support this use case https://github.com/apache/arrow/pull/365

      I'm not sure whether we should add a new logical type, but thought it would be worth bringing up in any case

      Attachments

        Issue Links

          Activity

            People

              wesm Wes McKinney
              wesm Wes McKinney
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: