[mapserver-users] WFS Client returns data at random with very same call

Even Rouault even.rouault at spatialys.com
Thu May 27 13:03:49 PDT 2021


It might be a bug in the OGR WFS driver (I see optimizations in the code 
to avoid adding a BBOX if we have already fetched the layer, that could 
be faulty), but we'd need a full reproducer to be able to investigate.

Le 27/05/2021 à 13:59, Lars Fricke a écrit :
> Dear all,
> I apologize for finding and posting bits and pieces not all at one time.
> I fired up 'CONFIG "CPL_DEBUG" "ON"' and there I see, that
> """
> SkenData Email Signatur
> HTTP: 
> Fetch(http://url-to-external-server?SERVICE=WFS&VERSION=1.1.0&MAXFEATURES=1000&REQUEST=GetFeature&TYPENAME=dop)
> """
> So there is no BBOX. On other layers I see
> """
> GDALOpen(/vsicurl_streaming/https:...
> """
> with BBOX.
> No wonder I do not get reliable results if the server is calling some 
> 1000 whatsoever result objects and starts filtering the bbox after.
>
> Any idea what is happening? Or is this something for a GDAL thread?
>
> Best
> Lars
>
> Am 27.05.21 um 09:04 schrieb Jörg Thomsen (WhereGroup):
>> Hello Lars,
>>
>> maxfeatures was my first guess... have you also turned ist it off (no
>> maxfeatures)?
>>
>> Jörg
>>
>>
>> Am 27.05.21 um 08:51 schrieb Lars Fricke:
>>> Dear All,
>>>
>>> as this list is a source of much deeper insight than I have into
>>> Mapserver, I would like to ask about a very strange issue I am facing.
>>>
>>> I am calling on a public WFS server I can query "by hand" fast and
>>> successfully every single time. Now I defined a Mapserver layer (see
>>> below) as an OGR layer in my WFS map-file and it does - on the same call
>>> - return data. But not reliably, more at random. I played with the
>>> connection-timeout and the maxfeatures and it seemed to have some
>>> influence but again, not reliably. I'll post the relevant parts of my
>>> mapfile (all my other layers with other sources are working fine):
>>> """
>>> MAP
>>>    NAME "WFS_Test"
>>>    SHAPEPATH "/data"
>>>    STATUS ON
>>>    UNITS METERS
>>>    EXTENT -2851663 2776500 5630523 9970363
>>>
>>>    PROJECTION
>>>      "init=epsg:3857"
>>>    END # PROJECTION
>>>
>>>    WEB
>>>      FOOTER "TestServer"
>>>      IMAGEPATH "/tmp/"
>>>      TEMPPATH "/tmp/"
>>>      IMAGEURL "/tmp/"
>>>      METADATA
>>>        "wfs_title"          "Test"
>>>        "ows_onlineresource"
>>> "http://my_server.de/cgi-bin/mapserv?map=/var/www/html/wfs.map"
>>>        "ows_enable_request"    "*"
>>>        "ows_srs"    "EPSG:3857 EPSG:4326 EPSG:25832"
>>>        "wfs_srs"    "EPSG:3857 EPSG:4326 EPSG:25832"
>>>        "wfs_getfeature_formatlist" "jsonp,ogrgml"
>>>        "wfs_encoding" "UTF-8"
>>>        "wfs_connectiontimeout" "20"
>>>        #"wfs_request_method"   "GET"
>>>      END # METADATA
>>>      VALIDATION
>>>          callback ".*"
>>>      END
>>>    END # WEB
>>>
>>>    OUTPUTFORMAT
>>>     NAME "jsonp"
>>>     DRIVER "OGR/GEOJSON"
>>>     MIMETYPE "application/json; subtype=geojson; charset=utf-8"
>>>     FORMATOPTION "STORAGE=stream"
>>>     FORMATOPTION "FORM=SIMPLE"
>>>     FORMATOPTION "LCO:COORDINATE_PRECISION=10"
>>>     FORMATOPTION "JSONP=%callback%"
>>>    END
>>>
>>>    OUTPUTFORMAT
>>>     NAME "OGRGML"
>>>     DRIVER "OGR/GML"
>>>     FORMATOPTION "STORAGE=filesystem"
>>>     FORMATOPTION "FORM=multipart"
>>>     FORMATOPTION "FILENAME=result.gml"
>>>    END
>>>
>>>    SYMBOL
>>>      NAME "circle_filled"
>>>      TYPE ELLIPSE
>>>      FILLED TRUE
>>>      POINTS
>>>        1 1
>>>      END
>>>    END
>>>
>>>    LAYER
>>>      NAME "TestLayer"
>>>      CONNECTION "wfs-request-testlayer.xml"
>>>      EXTENT 84710 5210905 1163008 6125425
>>>      CONNECTIONTYPE OGR
>>>      STATUS ON
>>>      DATA "dop"
>>>      METADATA
>>>        "wfs_version"    "2.0.0"
>>>        "wfs_title"    "TestLayer_WFS"
>>>        "wfs_connectiontimeout" "100"
>>>        "wfs_typename"    "TestLayer_WFS_int"
>>>        "wfs_maxfeatures"       "600"
>>>
>>>      END # METADATA
>>>      PROJECTION
>>>        "init=epsg:25832"
>>>      END # PROJECTION
>>>      TYPE POLYGON
>>>      CLASS
>>>        NAME "aerial_image_footprint"
>>>        STYLE
>>>          OUTLINECOLOR 255 0 0
>>>          WIDTH 0.7
>>>        END # STYLE
>>>      END # CLASS
>>>    END # LAYER
>>> """
>>> I made the xml-file wit ogrinfo as I did for many other layers that work.
>>> The call is:
>>> """ http://localhost:8181/cgi-bin/mapserv?map=/var/www/html/wfs.map& 
>>> SERVICE=WFS&VERSION=2.0.0&REQUEST=GetFeature&SRSNAME=EPSG:3857&BBOX=1292610.86313433,6822730.62911591,1293128.57472490,6823169.70765144&TYPENAME=TestLayer 
>>> """
>>> If I replace the Server name with the public server, it works like a
>>> breeze (even it is 3857).
>>> The public server has:
>>> """
>>> <DefaultCRS>urn:ogc:def:crs:EPSG:6.9:25832</DefaultCRS>
>>> <OtherSRS>urn:ogc:def:crs:EPSG:6.9:4326</OtherSRS>
>>> """
>>>
>>> I see the following response in the browser:
>>> """
>>> <wfs:FeatureCollection xmlns:ms="http://mapserver.gis.umn.edu/mapserver"  xmlns:gml="http://www.opengis.net/gml/3.2"  xmlns:wfs="http://www.opengis.net/wfs/2.0"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://mapserver.gis.umn.edu/mapserver 
>>> http://wfs/cgi-bin/mapserv?map=/var/www/html/wfs.map&SERVICE=WFS&VERSION=2.0.0&REQUEST=DescribeFeatureType&TYPENAME=DOP_AGE_DE&OUTPUTFORMAT=application%2Fgml%2Bxml%3B%20version%3D3.2 
>>> http://www.opengis.net/wfs/2.0 
>>> http://schemas.opengis.net/wfs/2.0/wfs.xsd 
>>> http://www.opengis.net/gml/3.2 
>>> http://schemas.opengis.net/gml/3.2.1/gml.xsd"  timeStamp="2021-05-27T06:30:38" numberMatched="0" numberReturned="0"> </wfs:FeatureCollection>
>>> """
>>> And in the log:
>>> """
>>> [warn] [pid 26] mod_fcgid: stderr: msQueryByRect(): Search returned no
>>> results. No matching record(s) found.
>>>   [warn] [pid 26] mod_fcgid: stderr: freeLayer(): freeing layer at 0x131f120.
>>> 3169463 - 172.17.0.1 - - [27/May/2021:06:30:35 +0000] "GET
>>> /cgi-bin/mapserv?map=/var/www/html/wfs.map&SERVICE=WFS&VERSION=2.0.0&REQUEST=GetFeature&SRSNAME=EPSG:3857&BBOX=1292610.86313433,6822730.62911591,1293128.57472490,6823169.70765144&TYPENAME=TestLayer
>>> HTTP/1.1" 200 793 "-" "Mozilla/5.0 (X11; Linux x86_64)
>>> AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36"
>>> 330 - 172.17.0.1 - - [27/May/2021:06:30:38 +0000] "GET /favicon.ico
>>> HTTP/1.1" 200 414
>>> "http://localhost:8181/cgi-bin/mapserv?map=/var/www/html/wfs.map&SERVICE=WFS&VERSION=2.0.0&REQUEST=GetFeature&SRSNAME=EPSG:3857&BBOX=1292610.86313433,6822730.62911591,1293128.57472490,6823169.70765144&TYPENAME=TestLayer"
>>> "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko)
>>> Chrome/90.0.4430.212 Safari/537.36"
>>> """
>>> I will be grateful for any clue on what is going on. Thank you for your
>>> trouble!
>>>
>>> Best
>>>
>>> Lars
>>> SkenData Email Signatur
>>>
>>> _______________________________________________
>>> mapserver-users mailing list
>>> mapserver-users at lists.osgeo.org
>>> https://lists.osgeo.org/mailman/listinfo/mapserver-users
>>>
>> Viele Grüße,
>> Jörg Thomsen
>>
>
>
> _______________________________________________
> mapserver-users mailing list
> mapserver-users at lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/mapserver-users

-- 
http://www.spatialys.com
My software is free, but my time generally not.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/mapserver-users/attachments/20210527/8f6a5348/attachment-0001.html>


More information about the mapserver-users mailing list