Skip to content

pygeoapi fails to throw a 404 code, when it does not find a tile (mvt-proxy) #2364

@doublebyte1

Description

@doublebyte1

Description

The martin tile server returns a 500 error (rather than 404), when it does not find a tile. On the mvt-proxy provider, pygeoapi carries that error code, failing to meet Abstract test A.7, Requirement 6: /req/core/tc-error: " verify Error Responses"

Tile that exists:

curl -I localhost:3000/srup_arvores_point/0/0/0
HTTP/1.1 204 No Content
vary: Origin, Access-Control-Request-Method, Access-Control-Request-Headers
date: Fri, 19 Jun 2026 12:49:01 GMT

Tiles that does not exist:

curl -I localhost:3000/srup_arvores_point/0/1/100
HTTP/1.1 500 Internal Server Error
content-length: 60
vary: Origin, Access-Control-Request-Method, Access-Control-Request-Headers
content-type: text/plain; charset=utf-8
date: Fri, 19 Jun 2026 12:46:55 GMT

Steps to Reproduce

Request a tile out of bound in pygeoapi, using the MVT-proxy provider and martin as a backend:

curl -I localhost:5000/collections/srup_arvores_point/tiles/WebMercatorQuad/0/0/100?f=pbf
HTTP/1.1 500 INTERNAL SERVER ERROR
Server: Werkzeug/3.1.8 Python/3.12.0
Date: Fri, 19 Jun 2026 12:52:02 GMT
Content-Type: application/vnd.mapbox-vector-tile
X-Powered-By: pygeoapi 0.24.dev0
Content-Language: en-US
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: *
Content-Length: 112
Connection: close

Expected behavior
Receive a 404 error

Environment

  • OS: Ubuntu 24.04.4 LTS
  • Python version: Python 3.12.3
  • pygeoapi version: 0.24.dev0 (latest master)

Metadata

Metadata

Assignees

Labels

OGC API - TilesOGC API - TilesbugSomething isn't working

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions