From: | chocholousp(at)avast(dot)com |
---|---|
To: | pgsql-bugs(at)postgresql(dot)org |
Subject: | BUG #11771: wrong behaviour of planner when pushing conditions |
Date: | 2014-10-23 15:38:16 |
Message-ID: | 20141023153816.2676.95359@wrigleys.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
The following bug has been logged on the website:
Bug reference: 11771
Logged by: Pavel Chocholous
Email address: chocholousp(at)avast(dot)com
PostgreSQL version: 9.3.4
Operating system: Centos
Description:
wrong behaviour of planner when pushing conditions from outer query to
subselect
(just when joining??)
drop table t;
--create table for varchars
create temporary table t (t varchar(64));
--fill it with two columns
insert into t (t) values ('88652f64-6cca-4ffa-a756-000007406ba6');
insert into t (t) values ('bad guid');
insert into t (t) values ('88652f64-6cca-4ffa-a756');
--this just works
select * from
(select t::uuid from t
--filter out all non-uuid varchars
where t ~
'^[a-z0-9]{8}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{12}$'
) x
where x.t::uuid = '88652f64-6cca-4ffa-a756-000007406ba6'::uuid
--and then...
--here we go, do you see something wrong?
select * from
(select t::uuid from t
--filter out all non-uuid varchars
where t ~
'^[a-z0-9]{8}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{12}$'
) x
inner join t on t.t::uuid=x.t::uuid
where x.t::uuid = '88652f64-6cca-4ffa-a756-000007406ba6'::uuid
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2014-10-23 16:28:16 | Re: BUG #11770: Segfault on spell.c when there are more than one characters as suffix flag |
Previous Message | emre | 2014-10-23 09:28:38 | BUG #11770: Segfault on spell.c when there are more than one characters as suffix flag |