MapGuide RFC 64 - Enabling strict exception handling for tile generation
This page contains an change request (RFC) for the MapGuide Open Source project. More MapGuide RFCs can be found on the RFCs page.
Status
RFC Template Version | (1.0) |
Submission Date | (08.05.2009) |
Last Modified | (UV Wildner) Timestamp |
Author | (UV Wildner) |
RFC Status | (draft) |
Implementation Status | (discussion needed) |
Proposed Milestone | (2.1) |
Assigned PSC guide(s) | (when determined) |
Voting History | (vote date) |
+1 | |
+0 | |
-0 | |
-1 | |
no vote |
Overview
Currently an exception thrown during the stylization code for a tile is caught and ignored. This can lead to partially incomplete tiles which are hard to detect as no error information is passed via the API. Even worse the tile is kept in the tilecache!
Motivation
Originally, the mapguide server has been designed as an interactive map generation system. For the important use case of rendering tiles and filling the tile cache incomplete tiles are undesirable. in particular keeping the faulty tile in the cache seems the wrong way to go.
Proposed Solution
A switch in serverconfig.ini should be introduced which can change this behaviour on demand. e.g. HandleRenderingErrors = STRICT
which leaves us room for additional ways to deal with this:
render a tile with an error message could be
HandleRenderingErrors = SHOW
default cases
HandleRenderingErrors = IGNORE
HandleRenderingErrors = DEFAULT
and ommitting the parameter would change nothing
However I think letting the tile into the cache should be generally prohibited in an exception situation.
Implications
NONE
Test Plan
Render tiles on a low memory virtual machine which causes memory errors and compare TileCache with different settings
Funding/Resources
closed Issues
NONE
open Issues
Does anyone wants to have faulty tiles in the tile cache?