[mapguide-internals] TileService cache Question
Trevor Wekel
trevor_wekel at otxsystems.com
Tue Mar 16 09:10:34 EDT 2010
Hi UV,
If MgServerTileService::DetectTileLockFile finds an existing lock file, it waits for 120 seconds for the lock to free up before returning. If the lock has not freed up after two minutes, then the render has probably failed and it is reasonable to blow the lock away and retry.
Regards,
Trevor
-----Original Message-----
From: mapguide-internals-bounces at lists.osgeo.org [mailto:mapguide-internals-bounces at lists.osgeo.org] On Behalf Of UV
Sent: March 15, 2010 9:45 AM
To: MapGuide Internals Mail List
Subject: [mapguide-internals] TileService cache Question
Trying to understand parallel overlapping tile requests to the tile
service in preparation of meta tiling.
line 321-326 ServerTileService.cpp:
// If there is a dangling lock file, then attempt to remove it.
if (DetectTileLockFile(lockPathname))
{
// TODO: Handle the exception by displaying a tile with an error
message?
MgFileUtil::DeleteFile(lockPathname, true);
}
I dont understand this logic... If someone has made the request for my
tile already should I not wait instead of removing the lockfile?
Checking the time stamp of the lockfile would be a practical way to
determine if its worth waiting......
The logic shown above seems to assume that it is an erroneous state to
request a tile while it is computed.
In a multi-threaded server I can easily create scenarios where this
could happen and a retry would be a smarter reaction to a found lockfile.
Any ideas?
_______________________________________________
mapguide-internals mailing list
mapguide-internals at lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/mapguide-internals
More information about the mapguide-internals
mailing list