Re: Coalesce bug ?

Поиск
Список
Период
Сортировка
От jg
Тема Re: Coalesce bug ?
Дата
Msg-id 4104-50d48480-b-6b8b4580@74608594
обсуждение исходный текст
Ответ на Re: Coalesce bug ?  ("jg" <jg@rilk.com>)
Список pgsql-general
Hi,

Test done on PostgreSQL 9.2.1

pgb=# create or replace function ps3(a int) returns int as $$ BEGIN
pgb$# RAISE WARNING 'Call ps3(%)=%',$1,$1; RETURN $1::int;
pgb$# END; $$ LANGUAGE plpgsql STRICT IMMUTABLE;
CREATE FUNCTION
pgb=# SELECT ps3(1);
WARNING:  Call ps3(1)=1
 ps3
-----
   1
(1 row)

pgb=# SELECT ps3(2);
WARNING:  Call ps3(2)=2
 ps3
-----
   2
(1 row)

pgb=# select coalesce( (select ps3(1)), (SELECT ps3(2)) );
WARNING:  Call ps3(1)=1
WARNING:  Call ps3(2)=2
 coalesce
----------
        1
(1 row)

pgb=# explain (verbose, analyze, buffers) select coalesce( (select ps3(1)), (SELECT ps3(2)) );
WARNING:  Call ps3(1)=1
WARNING:  Call ps3(2)=2
                                         QUERY PLAN
--------------------------------------------------------------------------------------------
 Result  (cost=0.02..0.03 rows=1 width=0) (actual time=0.014..0.015 rows=1 loops=1)
   Output: COALESCE($0, $1)
   InitPlan 1 (returns $0)
     ->  Result  (cost=0.00..0.01 rows=1 width=0) (actual time=0.002..0.003 rows=1 loops=1)
           Output: 1
   InitPlan 2 (returns $1)
     ->  Result  (cost=0.00..0.01 rows=1 width=0) (never executed)
           Output: 2
 Total runtime: 0.079 ms
(9 rows)

pgb=# select coalesce( ps3(1), ps3(2) );
WARNING:  Call ps3(1)=1
 coalesce
----------
        1
(1 row)


There is a bug too.

JG


В списке pgsql-general по дате отправления:

Предыдущее
От: Denis Papathanasiou
Дата:
Сообщение: Re: Using POSIX Regular Expressions on xml type fields gives inconsistent results
Следующее
От: "David Johnston"
Дата:
Сообщение: Re: Coalesce bug ?