[postgis-users] itemnquery limitation
Zamil Murji
Zamil.Murji at divestco.com
Mon Aug 11 13:35:09 PDT 2003
Hi Dave and company,
I tried to compile my mapserver with the new mappostgis.c
When i try my query url:
http://10.0.50.30/cgi-bin/mapserv?mode=nquery&map=/mapfiles/idc-query.map&imgext=-98.83460+27.98423+-98.73412+28.08663&mapsize=524+534&imgbox=44+176+127+324
I freeze up after only 11 entries now, before I use to freeze up after 41. Can you think of any reason why this may be?
I am running postgresql 7.3.3, postgis 0.7.5 and mapserver 4.0 on a red hat 7.3 machine.
Thanks
Zamil
-----Original Message-----
From: David Blasby [mailto:dblasby at refractions.net]
Sent: Monday, August 11, 2003 1:50 PM
To: PostGIS Users Discussion
Subject: Re: [postgis-users] itemnquery limitation
Tom,
I've been unable to reproduce your problem.
1. I've been directly accessing the mapserv CGI instead of through a
http server, so this could be where you're having problems. You didnt
sent me "WCms_header.html" - is there anything 'funny' in it?
2. I changed one of the lines in your html file:
<input type="hidden" name="qstring" value='"nodeid in
(413.0,430.0,431.0,432.0,433.0,434.0,436.1,450.0,451.0,452.0,453.0,454.0,455.0,456.0,457.1,457.2,457.3,457.4,458.1,458.2,459.0,528.0)"'>
3. I noticed a minor problem in the mappostgis.c - it wasnt finishing
off its transactions to the query-by-unique-column portion. I dont
think this would be the cause of the problem. I've attached a new
mappostgis.c that fixes this problem (and throws out some debugging).
Could you try installing the new mappostgis.c and running your query?
It should give some output (probably in your httpd's error_log) like this:
msPOSTGISLayerGetShape called for record = 3532689
msPOSTGISLayerGetShape sql=DECLARE mycursor BINARY CURSOR FOR SELECT
asbinary(force_collection(force_2d(the_geom)),'NDR') from nodescomb_2003
WHERE OID = 3532689
Hopefully this will work.
dave
ps. I think mapserver does its queryN by doing this:
1. turn the query string into a FILTER clause
2. execute the normal LayerWhichShapes(<rect>)- remember the record numbers
3. execute the 'GetShapebyID()' for each of the record numbers.
More information about the postgis-users
mailing list