Steve Crawford <scrawford@pinpointresearch.com> writes:
> US Daylight Saving Time starts this year on April 4 when 0200 jumps to
> 0300. The answers PostgreSQL gave are correct.
I suspect what the OP wants is non-timezone-aware behavior, which he
could get by casting the inputs of age() to timestamp without time
zone. As written the system is preferring to interpret them as
timestamp with time zone.
Also, if what's really wanted is just resolution to the day level,
the date subtraction operator might be a lot better choice than
age() anyway.
regression=# select '06-01-04'::date - '04-01-04'::date;
?column?
----------
61
(1 row)
regards, tom lane