[postgis-devel] Re: [postgis-users] how to identify the_geom that cause : RelateOperation called withLWGEOMCOLLECTION type

Kevin Neufeld kneufeld at refractions.net
Tue Dec 9 11:50:52 PST 2008


Thanx Mark,

Here's an updated patch.  I didn't put the truncation logic in a separate function yet since I'm not sure about freeing 
the memory of a returned char* (looking through the code, sometimes pfree is called, and other times it's not).

Cheers,
Kevin

Mark Cave-Ayland wrote:
> Kevin Neufeld wrote:
> 
>> Mark,
>>
>> Is it fairly trivial to change the elog in lwgeom_geos.c to your fancy 
>> errhint so that when the error is thrown the user has an idea where 
>> the problem occurs?
> 
> Yeah sure. In fact, elog() has been deprecated for a very long time and 
> so in theory we should be using ereport() everywhere.
> 
>> The attached patch seems to work, but I got lost when trying to limit 
>> the output of the LWGEOMCOLLECTION to the first say 128 characters of 
>> the WKT representation.
> 
> Yup, code looks good. The only comment is that you want 
> PARSER_CHECK_NONE instead of PARSER_CHECK_ALL, otherwise the conversion 
> will fail on a non-OGC compliant geometry. So in other words, you only 
> really want PARSER_CHECK_ALL on the input/output functions.
> 
> In terms of truncating the output, you need to do this manually - see 
> http://svn.refractions.net/postgis/trunk/lwgeom/lwgeom_pg.c:pg_parser_errhint 
> for the code I used, although if it is needed in multiple places it may 
> be a good idea to make this a separate function available in liblwgeom.
> 
> 
> HTH,
> 
> Mark.
> 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: errorIfGeometryCollection.patch
URL: <http://lists.osgeo.org/pipermail/postgis-devel/attachments/20081209/2fb9c117/attachment.ksh>


More information about the postgis-devel mailing list