[mapguide-internals] Server rendering incomplete tiles - Defect or
uvwild at gmail.com
Sun May 3 22:30:48 EDT 2009
I studied the Stylize Layer code in MappingUtil.cpp.
The exception handler (line 760-790) at the end of the layer loop is
catching exceptions and not doing anything about it (except logging)
AFAIK this would explain why the server generates incomplete == wrong
tiles without letting us know about it.
If I is misinterpeted the code please tell me why.
Currently, mapping errors including the FDO access are replaced with a
simple log message
and the layer is omitted from the currently rendered tile. This gives
all kinds of visual effects on the tile.
On a large map its virtually impossible to identify the wrong tiles.
Just rerendering might require more than a day.
Currently I believe the server is giving a wrong system response by
delivering such a faulty tile without note via the API.
This would be a major defect for this special class of use cases.
Furthermore, the relation between the log message and the offending tile
is very difficult to establish.
If somebody thinks this is correct, please let me know why.
Rethrowing the exception will cause the server to return an exception
via the HTTP API causing the tile to fail also on the client side.
It will also stall the server eventually, very similar to the current
situation in that the workerthread will cease to serve requests.
More information about the mapguide-internals