Обсуждение: BUG #7804: timeofday() output string is not compatible with "timestamp with time zone" data type

Поиск
Список
Период
Сортировка

BUG #7804: timeofday() output string is not compatible with "timestamp with time zone" data type

От
dotbrat@gmail.com
Дата:
The following bug has been logged on the website:

Bug reference:      7804
Logged by:          Ruslan Izmaylov
Email address:      dotbrat@gmail.com
PostgreSQL version: 9.1.7
Operating system:   Fedora release 17
Description:        =


Query:

SET TIME ZONE 'Europe/Minsk';
select timeofday()::timestamp with time zone;

Result:

ERROR: invalid input syntax for type timestamp with time zone: "Mon Jan 14
08:18:20.333915 2013 FET"
dotbrat@gmail.com writes:
> SET TIME ZONE 'Europe/Minsk';
> select timeofday()::timestamp with time zone;
> ERROR: invalid input syntax for type timestamp with time zone: "Mon Jan 14
> 08:18:20.333915 2013 FET"

The issue seems to be that the recently-invented abbreviation FET
isn't anywhere in our default list of timezone abbreviations.

That probably should be fixed, but in the meantime, you really should be
aware that timeofday() is deprecated, and there's no reason at all to
use it in the above manner anyway.  now() or current_timestamp are
simpler and much faster.

            regards, tom lane

Re: BUG #7804: timeofday() output string is not compatible with "timestamp with time zone" data type

От
Руслан Измайлов
Дата:
I need a real-time clock value so I will use clock_timestamp() to get it. Thanks for the answer.


2013/1/15 Tom Lane <tgl@sss.pgh.pa.us>
dotbrat@gmail.com writes:
> SET TIME ZONE 'Europe/Minsk';
> select timeofday()::timestamp with time zone;
> ERROR: invalid input syntax for type timestamp with time zone: "Mon Jan 14
> 08:18:20.333915 2013 FET"

The issue seems to be that the recently-invented abbreviation FET
isn't anywhere in our default list of timezone abbreviations.

That probably should be fixed, but in the meantime, you really should be
aware that timeofday() is deprecated, and there's no reason at all to
use it in the above manner anyway.  now() or current_timestamp are
simpler and much faster.

                        regards, tom lane