Josh Berkus <j...@agliodbs.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

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

Reply via email to