Opened 13 years ago

Closed 13 years ago

#992 closed defect (fixed)

[raster] PostGIS raster && operator not installed when GSERIALIZED_ON

Reported by: robe Owned by: pramsey
Priority: blocker Milestone: PostGIS 2.0.0
Component: raster Version: master
Keywords: Cc:

Description (last modified by robe)

When GSERIALIZED is ON, raster && operator still built with geometry_gist_sel which is only valid for our non-GSERIALIZED.

Pierre et al,

Mind if I fix this one?

Change History (6)

comment:1 by robe, 13 years ago

Description: modified (diff)
Summary: PostGIS raster operators not installed when GSERIALIZED_ONPostGIS raster && operator not installed when GSERIALIZED_ON

comment:2 by robe, 13 years ago

Summary: PostGIS raster && operator not installed when GSERIALIZED_ON[raster] PostGIS raster && operator not installed when GSERIALIZED_ON

comment:3 by robe, 13 years ago

Owner: changed from pracine to pramsey

Paul,

Maybe you should tackle this one or tell us what needs to be done here.

The issue is raster operator is defined like this:

CREATE OPERATOR && (
    LEFTARG = raster, RIGHTARG = raster, PROCEDURE = st_overlap,
    COMMUTATOR = '&&',
    RESTRICT = geometry_gist_sel, JOIN = geometry_gist_joinsel
    );

My first thought was to include the gserialized header in there and then change to this to match the way you have geometry:

#ifdef GSERIALIZED_ON CREATE OPERATOR && (

LEFTARG = raster, RIGHTARG = raster, PROCEDURE = st_overlap, COMMUTATOR = '&&', RESTRICT = contsel, JOIN = contjoinsel );

#else CREATE OPERATOR && (

LEFTARG = raster, RIGHTARG = raster, PROCEDURE = st_overlap, COMMUTATOR = '&&', RESTRICT = geometry_gist_sel, JOIN = geometry_gist_joinsel );

#endif

But I've never understood the difference between contsel and geometry_gist_sel and why I wouldn't just go with contsel, contjoinsel in both the GSERIALIZED ON/OF cases and then not have to include the header file.

comment:4 by dustymugs, 13 years ago

I didn't see this ticket before I made this exact change in r7394. With this change and a few more due to the maximum srid permitted in GSERIALIZED, the raster regressions pass (minus the existing issues with MapAlgebra).

comment:5 by pramsey, 13 years ago

Is this ticket now dead? If so, close.

comment:6 by robe, 13 years ago

Resolution: fixed
Status: newclosed

yes it's dead.

Note: See TracTickets for help on using tickets.