We use 2 mapproxy Nodes behind a Loadbalancer without sticky sessions.
mappproxy cache directory is storage to the same NFS share, is locatet at a Netapp device.
The NFS is mounted under this options: rw,noatime,nodiratime,noacl,noac
When mapproxy write a tile, lockfiles are storage to the NFS share directory under /cache/mapproxy/locks, that is configured on both nodes.
The format of file is eb543c83f5f73bc5abf13e6573dba30d.lck0
This format is always the same....
We to suspect that on node delete the lck file from the other node...
Here ist the issue from the apache error logfile:
[Thu Feb 28 11:19:08 2013] [error] [client _] Traceback (most recent call last):, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/wsgiapp.py", line 158, in call, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] resp = self.handlers[handler_name].handle(req), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/service/ows.py", line 38, in handle, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] return self.services[service].handle(req), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/service/base.py", line 30, in handle, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] return handler(parsed_req), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/service/wms.py", line 111, in map, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] renderer.render(merger), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/service/wms.py", line 371, in render, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] layer_merger), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/util/async.py", line 204, in _single_call, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] result = func(_args), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client _] File "/usr/lib/pymodules/python2.6/mapproxy/service/wms.py", line 412, in _render_layer, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] layer_img = layer.get_map(self.query), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/layer.py", line 289, in get_map, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] result = self._image(query), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/layer.py", line 322, in _image, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] tile_collection = self.tile_manager.load_tile_coords(affected_tile_coords), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/cache/tile.py", line 126, in load_tile_coords, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] created_tiles = creator.create_tiles(uncached_tiles), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/cache/tile.py", line 227, in create_tiles, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] created_tiles = self._create_meta_tiles(meta_tiles), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/cache/tile.py", line 293, in _create_meta_tiles, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] return self._create_threaded(self._create_meta_tile, meta_tiles), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/cache/tile.py", line 243, in _create_threaded, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] for new_tiles in async_pool.imap(create_func, tiles):, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/util/async.py", line 54, in _result_iter, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] for result in results:, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/util/async.py", line 191, in map_each, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] for value in self._get_results(next_result, results, raise_exceptions):, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/util/async.py", line 235, in _get_results, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] for i, value in self._fetch_results(raise_exceptions):, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/util/async.py", line 144, in run, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] result = func(_args), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client _**] File "/usr/lib/pymodules/python2.6/mapproxy/cache/tile.py", line 304, in _create_meta_tile, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] with self.tile_mgr.lock(main_tile):, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/platform/cpython/lock.py", line 42, in enter, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] self.lock(), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client ] File "/usr/lib/pymodules/python2.6/mapproxy/platform/cpython/lock.py", line 65, in lock, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] self._lock = self.try_lock(), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/platform/cpython/lock.py", line 56, in _try_lock, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] return LockFile(self.lock_file), referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] File "/usr/lib/pymodules/python2.6/mapproxy/util/ext/lockfile.py", line 124, in init, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] pid = fp.read().strip()[:20], referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
[Thu Feb 28 11:19:08 2013] [error] [client *] IOError: [Errno 116] Stale NFS file handle, referer: http://isk.geobasis-bb.de/BrandenburgViewer/basiskarte.html
is mapproxy Loadbalancer ready?
There are a LB howto for mapproxy?
many thx
Karsten