[MapProxy] MapProxy 1.8.1 error accessing WMTS with kvp

dirk.thalheim at bkg.bund.de dirk.thalheim at bkg.bund.de
Thu Oct 15 05:38:00 PDT 2015

Dear list,

this week we upgraded to MapProxy 1.8.1 and it seems there is a bug when calling a WMTS with KVP. An internal error appears as response and the error log shows following:
Traceback (most recent call last):
   File "/opt/dev/mapproxy/local/lib/python2.7/site-packages/mapproxy/wsgiapp.py", line 189, in __call__
    resp = self.handlers[handler_name].handle(req)
   File "/opt/dev/mapproxy/local/lib/python2.7/site-packages/mapproxy/service/ows.py", line 38, in handle
     return self.services[service].handle(req)
   File "/opt/dev/mapproxy/local/lib/python2.7/site-packages/mapproxy/service/base.py", line 30, in handle
     return handler(parsed_req)
   File "/opt/dev/mapproxy/local/lib/python2.7/site-packages/mapproxy/service/wmts.py", line 92, in tile
     tile = tile_layer.render(request, coverage=limited_to, decorate_img=decorate_img)
   File "/opt/dev/mapproxy/local/lib/python2.7/site-packages/mapproxy/service/tile.py", line 308, in render
     dimensions=dimensions, with_metadata=True)
   File "/opt/dev/mapproxy/local/lib/python2.7/site-packages/mapproxy/cache/tile.py", line 101, in load_tile_coord
     self.cache.load_tile(tile, with_metadata)
   File "/opt/dev/mapproxy/local/lib/python2.7/site-packages/mapproxy/cache/mbtiles.py", line 314, in load_tile
     return self._get_level(tile.coord[2]).load_tile(tile, with_metadata=with_metadata)
   File "/opt/dev/mapproxy/local/lib/python2.7/site-packages/mapproxy/cache/mbtiles.py", line 168, in load_tile
     zoom_level = ?''', tile.coord)
OperationalError: no such table: tiles

I'm pretty sure it worked with MapProxy 1.8.0. The same parameters with the RESTfull WMTS are working with the 1.8.1 version. Here are some example parameters:
KVP: mapproxy/webatlasde/service?SERVICE=WMTS&VERSION=1.0.0&REQUEST=GetTile&layer=webatlasde&style=default&tilematrixset=DE_EPSG_25832_ADV&tilematrix=00&tilerow=0&tilecol=0&format=png
REST: mapproxy/webatlasde/wmts/tile/1.0.0/webatlasde/default/DE_EPSG_25832_ADV/00/0/0.png

We're using a SQLite-DB as Cache. Maybe it's connected to that because when using an intermediate cache with disable_storage: true (like in the reprojecting tiles/cache example) it's working and the response contains the requested tile. Is this a (known) bug or did I miss something?

So far as a workaround we set up a mod_rewrite rule to forward the KVP requests to REST.

Kind regards,


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/mapproxy/attachments/20151015/b3bdd806/attachment.html>

More information about the MapProxy mailing list