[mapserver-users] MapServer and Geopackage failing

Seth G sethg at geographika.co.uk
Tue Mar 6 08:58:10 PST 2018


Hi,

I'm trying to create an image from a Geopackage with MapServer. 
I can recreate the issue using data from http://www.geopackage.org/#sampledata

It appears a v1.1 Geopackage will throw an error if the Sqlite database does not include the Spatialite extension. 
A v1.2 Geopackage does not seem to produce the same error. 
Even's patch fixes this error. It also seems the issue disappears when using a dev 2.3.0 build of GDAL. 

A sample Mapfile using the sample datasets is below. The first shp2img command works, the second does not. 

shp2img -m test.map -l point2d_v1_2 -o test.png
shp2img -m test.map -l point2d_v1_1 -o test.png    


MAP
    # cd /D C:\MapServer\apps\gpkg
    # shp2img -m test.map -l point2d_v1_2 -o test.png
    # shp2img -m test.map -l point2d_v1_1 -o test.png    
    SIZE 200 200
    DEBUG 5
    CONFIG "MS_ERRORFILE" "test.log"
    CONFIG "CPL_DEBUG" "ON"
    EXTENT 0 0 10 10
    SYMBOL
        NAME "circle"
        TYPE ELLIPSE
        FILLED TRUE
        POINTS
            1 1
        END
    END    
    LAYER
        NAME "point2d_v1_2"
        TYPE POINT
        DATA "point2d"
        CONNECTIONTYPE OGR
        CONNECTION "gdal_sample_v1.2_no_extensions.gpkg"
        CLASS
            STYLE
                SYMBOL "circle"
                SIZE 10
                COLOR 0 255 255
            END
        END
    END
    LAYER
        NAME "point2d_v1_1"
        TYPE POINT
        DATA "point2d"
        CONNECTIONTYPE OGR
        CONNECTION "gdal_sample.gpkg"
        CLASS
            STYLE
                SYMBOL "circle"
                SIZE 10
                COLOR 0 255 255
            END
        END
    END    
END


--
web:http://geographika.co.uk
twitter: @geographika

On Tue, Mar 6, 2018, at 5:05 PM, Rahkonen Jukka (MML) wrote:
> Hi,
> 
> Please explain what you are actually doing. Do you wish to use 
> geopackage for input or output, or both?  For rasters, vectors, or both?
> 
> If you use gpkg as input I suggest to create the database with GDAL from 
> some publicly available datasets so others can do the same for 
> reproducing you case (share your ogr2ogr or gdal_translate commands), 
> with a complete mapfile that you will hopefully provide as well.
> 
> -Jukka Rahkonen-
> 
> -----Alkuperäinen viesti-----
> Lähettäjä: mapserver-users 
> [mailto:mapserver-users-bounces at lists.osgeo.org] Puolesta Seth G
> Lähetetty: 6. maaliskuuta 2018 12:20
> Vastaanottaja: mapserver-users at lists.osgeo.org
> Aihe: [mapserver-users] MapServer and Geopackage failing
> 
> Hi all,
> 
> I'm trying out the geopackage format as an alternative to shapefiles but 
> running into an issue where MapServer expects the geopackage dataset to 
> include spatialite. Drawing layers with shp2img logs the following:
> 
> [Tue Mar 06 10:39:42 2018].512000 msDrawMap(): rendering using 
> outputformat named png (AGG/PNG).
> [Tue Mar 06 10:39:42 2018].512000 msDrawMap(): WMS/WFS set-up and query, 
> 0.000s [Tue Mar 06 10:39:42 2018].529000 msOGRFileOpen: Spatialite 
> support in GPKG not enabled [Tue Mar 06 10:39:42 2018].549000 
> msOGRFileNextShape(): OGR error. OGR GetNextFeature() error'd. Check 
> logs.
> [Tue Mar 06 10:39:42 2018].549000 msOGRFileNextShape(): In ExecuteSQL(): 
> sqlite3_prepare(SELECT spatialite_version()):
>   no such function: spatialite_version
> [Tue Mar 06 10:39:42 2018].550000 msDrawMap(): Image handling error. 
> Failed to draw layer named 'ways'.  
> 
> The spatialite_version function is missing in the geopackage. The 
> dataset was created by exporting from MapServer as an OUTPUTOPTION:
> 
>       OUTPUTFORMAT
>         NAME "GeoPackage"
>         DRIVER "OGR/GPKG"
>         FORMATOPTION "STORAGE=memory"
>         FORMATOPTION "FORM=simple"
>         FORMATOPTION "FILENAME=result.gpkg"
>         FORMATOPTION "DSCO:SPATIALITE=YES"	# not a listed option, but 
> tried anyway	
>         FORMATOPTION "LCO:SPATIAL_INDEX=YES"
>     END
>   
> Running a GisInternals build,  including GDAL 2.1.3 and MapServer 7.0.4. 
> 
> Relevant code is at 
> https://github.com/mapserver/mapserver/blob/aae74ff2abed3f2f8fe1f76c9b4bbccf15023dc1/mapogr.cpp#L1313
> It looks like the error should be swallowed up?
> 
> The same dataset exported directly to spatilite works fine. 
> 
> Anyone experienced the above issue?
> 
> Regards,
> 
> Seth
> 
> 
> --
> web:http://geographika.co.uk
> twitter: @geographika
> _______________________________________________
> mapserver-users mailing list
> mapserver-users at lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/mapserver-users


More information about the mapserver-users mailing list