Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#1412 closed defect (worksforme)

ST_Intersects not using indices

Reported by: strk Owned by: strk
Priority: critical Milestone: PostGIS 2.0.0
Component: postgis Version: master
Keywords: Cc:

Description

That's due to STRICTness of the function, see #1410

Change History (7)

comment:1 by strk, 12 years ago

Can't confirm myself ST_Intersect(vector,vector) being non-strict. To check:

select proname, proargnames, proisstrict from pg_proc where proname = 'st_intersects';

comment:2 by strk, 12 years ago

But among the _st_intersects the vector one is now the _only_ strict function. Robe, can you check if it hurts ?

comment:3 by robe, 12 years ago

strk — didn't check before upgrading my db, but my ST_Intersects for vector works fine , and my raster one works fine too (I mean it uses the index) , and proisstrict is false for all 8 variants of st_intersects we have which is the way it should be.

What is this you are seeing?

comment:4 by strk, 12 years ago

Resolution: worksforme
Status: newclosed

Uhm, by including also the _ prefixed variants I do see a strict one:

 _st_intersects | {geom1,geom2}               | t

Actually, I guess the _ prefixed variants could be STRICT just fine, couldn't them ? Anyway, there's nothing I'm personally seeing as I was just reporting something seen by someone else. Will close this and let the original reporter take care of it.

comment:5 by robe, 12 years ago

correct the _st s should be strict. It's just where you need the sql to be able to break into its parts that can't be strict.

comment:6 by strk, 12 years ago

It may be worth another ticket for _st_intersect versions being non-strict (the raster ones)

comment:7 by Bborie Park, 12 years ago

_st_intersects(raster, raster) now STRICT as of r8714.

Note: See TracTickets for help on using tickets.