Re: [HACKERS] Bug in evaluation of AND
От | Vadim B. Mikheev |
---|---|
Тема | Re: [HACKERS] Bug in evaluation of AND |
Дата | |
Msg-id | 34EABD97.932DAC82@sable.krasnoyarsk.su обсуждение исходный текст |
Ответ на | Bug in evaluation of AND (Jeroen van Vianen <jeroenv@design.nl>) |
Список | pgsql-hackers |
Jeroen van Vianen wrote: > > I found the following bug in sunday's snapshot (I am running Linux > 2.1.85 and gcc 2.8.0): Presents in 6.2.1 too... Caused by bad execution plan: Result (cost=0.00 size=0 width=0) -> Seq Scan on aaa (cost=0.00 size=0 width=0) ^^^^^^^^^^^^^^^ Target list of SeqScan is empty => ExecProject returns NULL... Optimizer should put Constant into Result' childplan target list if it's empty. Easy to fix. Anyone ? Vadim > > I created a table with one column and inserted one row: > > jeroenv=> create table test ( a int4 ); > CREATE > jeroenv=> insert into test values ( 1 ); > INSERT 321708 1 > > Some checks: > > jeroenv=> select a from test where (a=1); > a > - > 1 > (1 row) > > jeroenv=> select a from test where (a=1) and true; > a > - > 1 > (1 row) > > Now, instead of column 'a' I return the constant 1: > > jeroenv=> select 1 from test where (a=1); > ?column? > -------- > 1 > (1 row) > > jeroenv=> select 1 from test where (a=1) and true; > ?column? > -------- > (0 rows) > > No rows is not what I would expect.
В списке pgsql-hackers по дате отправления: