24:00:00 ?

From: Patrick Welche <prlw1(at)newn(dot)cam(dot)ac(dot)uk>
To: pgsql-hackers(at)postgresql(dot)org
Subject: 24:00:00 ?
Date: 2002-12-04 21:33:17
Message-ID: 20021204213317.O1219@quartz.newn.cam.ac.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

transatlantic=# select '23:59:59.72'::time(0) without time zone;
time
----------
24:00:00
(1 row)

So dumping a table with times derived from the timestamp then fails on the
reload with:

psql:transatlantic.dat:43681: ERROR: copy: line 5818, Bad time external representation '24:00:00'
psql:transatlantic.dat:43681: lost synchronization with server, resetting connection

timeslice | timestamp(6) without time zone |
timesliced | date |
timeslicet | time(0) without time zone |

(timesliced and timesllicet are for M$ Access' benefit and just contain the
date and time parts of timeslice as per above)

So, that's what happened, but what can one do? 24:00:00 seems like a sensible
rounding for 23:59:59.72, and it is also true that 24:00:00 isn't really a
valid time (or could it in strange days with an extra second?), so both
sides seem to be right, it's just the overall effect which seems bad.

(sed s/24:00:00/23:59:59/g fixed the 5.6Gb data file..)

Cheers,

Patrick

Browse pgsql-hackers by date

  From Date Subject
Next Message Kevin Brown 2002-12-04 21:57:31 Re: 7.4 Wishlist
Previous Message Tom Lane 2002-12-04 21:17:18 Re: big text field -> message type 0x44