From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Josh Berkus <josh(at)agliodbs(dot)com> |
Cc: | pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: Broken selectivity with special inet operators |
Date: | 2011-09-21 20:56:17 |
Message-ID: | 29153.1316638577@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Josh Berkus <josh(at)agliodbs(dot)com> writes:
> Summary: special inet operators ( << >> <<= =>> ) are
> up to 1000000X off in estimating rowcounts
A look in pg_operator will show you that these operators have no
associated selectivity estimators at all. It's not so much "broken"
as "unimplemented".
regression=# select oid::regoperator,oprcode,oprrest,oprjoin from pg_operator where (oprleft = 869 or oprright = 869) and oprresult = 16;
oid | oprcode | oprrest | oprjoin
----------------+---------------+-------------+-----------------
=(inet,inet) | network_eq | eqsel | eqjoinsel
<>(inet,inet) | network_ne | neqsel | neqjoinsel
<(inet,inet) | network_lt | scalarltsel | scalarltjoinsel
<=(inet,inet) | network_le | scalarltsel | scalarltjoinsel
>(inet,inet) | network_gt | scalargtsel | scalargtjoinsel
>=(inet,inet) | network_ge | scalargtsel | scalargtjoinsel
<<(inet,inet) | network_sub | - | -
<<=(inet,inet) | network_subeq | - | -
>>(inet,inet) | network_sup | - | -
>>=(inet,inet) | network_supeq | - | -
(10 rows)
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Eric Vollnogel | 2011-09-21 21:17:31 | BUG #6219: date_part() function producting incorrect year |
Previous Message | Tom Lane | 2011-09-21 20:31:51 | Re: Timezone issues with Postrres |