Re: Datum as struct
От | Peter Eisentraut |
---|---|
Тема | Re: Datum as struct |
Дата | |
Msg-id | 2d320b6f-b4af-4fbc-9eec-5d0fa15d187b@eisentraut.org обсуждение исходный текст |
Ответ на | Datum as struct (Peter Eisentraut <peter@eisentraut.org>) |
Ответы |
Re: Datum as struct
|
Список | pgsql-hackers |
> diff --git a/src/backend/utils/adt/timestamp.c b/src/backend/utils/adt/timestamp.c > index 25cff56c3d0..e640b48205b 100644 > --- a/src/backend/utils/adt/timestamp.c > +++ b/src/backend/utils/adt/timestamp.c > @@ -4954,7 +4954,7 @@ timestamptz_trunc_internal(text *units, TimestampTz timestamp, pg_tz *tzp) > case DTK_SECOND: > case DTK_MILLISEC: > case DTK_MICROSEC: > - PG_RETURN_TIMESTAMPTZ(timestamp); > + return timestamp; > break; > > default: This one is an actual bug. With int64-pass-by-reference, PG_RETURN_TIMESTAMPTZ() returns a newly allocated address. This is easily reproduced by SELECT date_trunc( 'week', timestamp with time zone 'infinity' ); which will return a random value on 32-bit systems. (It correctly returns 'infinity' otherwise.) I'll see about backpatching fixes for this.
В списке pgsql-hackers по дате отправления: