Thread: BUG #9843: interval data type storage size (8.1 later)

BUG #9843: interval data type storage size (8.1 later)

From
nuko.yokohama@gmail.com
Date:
The following bug has been logged on the website:

Bug reference:      9843
Logged by:          nuko yokohama
Email address:      nuko.yokohama@gmail.com
PostgreSQL version: 9.3.4
Operating system:   CentOS 6.3
Description:

Hi.

PostgreSQL 9.3 document in "Table 8-9" of "8.5. Date / Time Types", storage
size of the interval data type has 12 bytes.
However, the definition of "datatype / timestamp.h", size of the interval
data type was 16 bytes.
In addition, interval data type was 16 bytes even dump the results of the
table file.
"day" field to the interval data type is added in PostgreSQL 8.1, but do not
not been reflected in the document PostgreSQL at that time?

Regards.

----
nuko yokohama <nuko.yokohama@gmail.com>

Re: BUG #9843: interval data type storage size (8.1 later)

From
Bruce Momjian
Date:
On Thu, Apr  3, 2014 at 08:46:28AM +0000, nuko.yokohama@gmail.com wrote:
> The following bug has been logged on the website:
>
> Bug reference:      9843
> Logged by:          nuko yokohama
> Email address:      nuko.yokohama@gmail.com
> PostgreSQL version: 9.3.4
> Operating system:   CentOS 6.3
> Description:
>
> Hi.
>
> PostgreSQL 9.3 document in "Table 8-9" of "8.5. Date / Time Types", storage
> size of the interval data type has 12 bytes.
> However, the definition of "datatype / timestamp.h", size of the interval
> data type was 16 bytes.
> In addition, interval data type was 16 bytes even dump the results of the
> table file.

This will be fixed in 9.4 with this patch:

    commit 146604ec43bcd6f977c31775a91022cf9737daf5
    Author: Bruce Momjian <bruce@momjian.us>
    Date:   Thu Jan 30 09:41:43 2014 -0500

        Add checks for interval overflow/underflow

        New checks include input, month/day/time internal adjustments, addition,
        subtraction, multiplication, and negation.  Also adjust docs to
        correctly specify interval size in bytes.

        Report from Rok Kralj

I am not sure why this was not fixed earlier.

> "day" field to the interval data type is added in PostgreSQL 8.1, but do not
> not been reflected in the document PostgreSQL at that time?

Uh, can you show me a sentence where it is missing?  I don't see it.

--
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + Everyone has their own god. +