The following bug has been logged on the website:
Bug reference: 8156
Logged by: Regina
Email address: lr@pcorp.us
PostgreSQL version: 9.2.4
Operating system: Windows 7 64-bit compiled with visual c++ - EDB 64
Description: =
Nothing to do yet unless its obvious to you folks what is wrong here.
I haven't determined if its an issue in how we are compiling PostGIS for
windows or something fundametally wrong in the 9.2 branch on how it handles
windows 64-bit.
Details in this ticket:
http://trac.osgeo.org/postgis/ticket/2185
The issue only seems to exhibit itself in PostgreSQL 9.2.2-9.2.4 (as I
recall 9.2.1 doesn't have this issue).
and it also only happens on windows 7-64bit and windows 2008 64-bit. As far
as I can tell windows 2003 64-bit with same build doesn't have the issue and
as I recall I can't replicate this issue testing under mingw64 either which
we use to compile.
We've only seen it with SQL functions that wrap a PostGIS c function and
that are marked IMMUTABLE STRICT and happens when fed invalid inputs that
would raise an error in the C function. If we take out the IMMUTABLE part
it works fine.
e.g.
This function will crash when used with invalid inputs. such as
ST_AsText('POINT(1 3 hi)')
CREATE OR REPLACE FUNCTION st_astext(text)
RETURNS text AS
' SELECT ST_AsText($1::geometry); '
LANGUAGE sql IMMUTABLE STRICT
COST 100;
This variant the function (note no immutable)
CREATE OR REPLACE FUNCTION st_astextNotImmut(text)
RETURNS text AS
' SELECT ST_AsText($1::geometry); '
LANGUAGE sql STRICT
COST 100;
Makes it not crash.
The 9.3beta1 doesn't have this issue. Nor does the latest 9.1 I have
tested.