I just merged the [Format] PR. Thank you everyone for the reviews and
feedback.

On Tue, Dec 2, 2025 at 12:08 AM serramatutu <[email protected]> wrote:

> With 10 votes (10 binding, 0 non-binding), the vote passed.
>
>
> The format documentation PR needs to be merged by a maintainer with rights
> to do so. We will now continue to work on the implementation PRs to get
> them to a mergeable state.
>
> Thank you all for voting!
>
> Binding votes:
> 1. Antoine Pitrou
> 2. Curt Hagenlocher
> 3. Gang Wu
> 4. Dewey Dunnington
> 5. Ian Cook
> 6. Ruoxi Sun
> 7. Rok Mihevc
> 8. Matt Topol
> 9. Sutou Kouhei
> 10. Joris Van den Bossche
>
>
>
> On Friday, November 28th, 2025 at 23:28, Joris Van den Bossche <
> [email protected]> wrote:
>
> >
>
> >
>
> > +1 (binding)
> >
>
> > As another data point, the GDAL library (https://gdal.org/en/stable/,
> > providing IO for many geospatial file formats) internally also just
> > stores offset information, and not actual time zone names. Therefore,
> > in its export to Arrow, we also have been struggling with how to
> > represent such data, and this extension type could potentially be
> > useful for that.
> >
>
> > On Fri, 28 Nov 2025 at 01:49, Sutou Kouhei [email protected] wrote:
> >
>
> > > +1 (binding)
> > >
>
> > > In
> RzNiyOMGMd9uXDukdFW9Q5SfqyCFUrm-B0XIXYUwBpeR_RIf5hXtX_-IUu7rYt76esfEzWyMwFBJfdkfgJF8k_QCSCIB5aFp1TBq11iGN6w=@
> pm.me
> > > "[VOTE][FORMAT] TimestampWithOffset canonical extension type" on Tue,
> 25 Nov 2025 09:55:53 +0000,
> > > serramatutu [email protected] wrote:
> > >
>
> > > > Hey everyone!
> > > >
>
> > > > We (me and @felipecrv) would like to propose a new canonical
> extension type: TimestampWithOffset.
> > > >
>
> > > > Previous discussion around this proposal can be found in the mailing
> list [1] and in the format PR [2].
> > > > The format documentation PR can be found at [2]. A copy of its text
> is attached at the end of this email.
> > > > A Go implementation can be found at [3].
> > > > A Rust implementation can be found at [4].
> > > >
>
> > > > The vote will be open for at least 72 hours (3 business days).
> > > >
>
> > > > [ ] +1 Accept this proposal
> > > > [ ] +0
> > > > [ ] -1 Do not accept this proposal because...
> > > >
>
> > > > RELEVANT LINKS
> > > >
>
> > > > [1] Previous discussion.
> https://lists.apache.org/thread/yhbr3rj9l59yoxv92o2s6dqlop16sfnk
> > > > [2] Format specification pull request.
> https://github.com/apache/arrow/pull/48002
> > > > [3] Golang implementation draft.
> https://github.com/apache/arrow-go/pull/558
> > > > [4] Rust implementation draft.
> https://github.com/apache/arrow-rs/pull/8743
> > > >
>
> > > > FORMAT
> > > >
>
> > > > Timestamp With Offset
> > > > =============
> > > > This type represents a timestamp column that stores potentially
> different timezone offsets per value. The timestamp is stored in UTC
> alongside the original timezone offset in minutes.
> > > > This extension type is intended to be compatible with ANSI SQL's
> `TIMESTAMP WITH TIME ZONE`, which is supported by multiple database engines.
> > > >
>
> > > > * Extension name: `arrow.timestamp_with_offset`.
> > > >
>
> > > > * The storage type of the extension is a `Struct` with 2 fields, in
> order:
> > > >
>
> > > > * `timestamp`: a non-nullable `Timestamp(time_unit, "UTC")`, where
> `time_unit` is any Arrow `TimeUnit` (s, ms, us or ns).
> > > >
>
> > > > * `offset_minutes`: a non-nullable signed 16-bit integer (`Int16`)
> representing the offset in minutes from the UTC timezone. Negative offsets
> represent time zones west of UTC, while positive offsets represent east.
> Offsets range from -779 (-12:59) to +780 (+13:00).
> > > >
>
> > > > * Extension type parameters:
> > > >
>
> > > > This type does not have any parameters.
> > > >
>
> > > > * Description of the serialization:
> > > >
>
> > > > Extension metadata is an empty string.
> > > >
>
> > > > .. note::
> > > >
>
> > > > It is also permissible for the `offset_minutes` field to be
> dictionary-encoded or run-end-encoded.

Reply via email to