Commit Graph

520 Commits

Author SHA1 Message Date
acb33187d0 Set same default renderd socket, fixes #18 2013-05-13 22:34:32 +03:00
7ed57d956c Merge pull request #19 from zerebubuth/master
Add 'null' storage
2013-05-13 11:40:57 -07:00
c07adeebf8 Added simple 'null' storage, which might be useful for benchmarking or testing. 2013-05-13 19:35:01 +01:00
01d70ff43d Merge pull request #14 from pnorman/patch-1
Fix typos in render_list man page
2013-05-09 13:23:20 -07:00
5a37766c2d Fix typos in render_list man page 2013-04-25 16:31:46 -07:00
1341e129e5 Merge pull request #12 from rusvdw/master
Fixed render_old exit crash
2013-04-22 11:35:35 -07:00
babf30f1a1 Implemented verbose output for zoom level progress 2013-04-22 15:07:32 +02:00
226335e901 Fixed crash on exit when no map style file is specified 2013-04-22 14:46:24 +02:00
b7fe90c887 Add man page for openstreetmap-tiles-update-expire 2013-04-20 20:49:11 -06:00
f84a981ff6 Rename openstreetmap-tiles-update-expire.sh to without .sh to keep debian linthian more happy 2013-04-20 20:06:37 -06:00
d319002e5f change file permission of mod_tile_latency to be in accordance with other munin plugins 2013-04-20 20:00:53 -06:00
f53545e7dc Add some per zoom level timing information to render_list
This should allow render_list to be used more easily for benchmarking with a
well known list of tiles as reference.
2013-04-14 19:21:19 -06:00
cd30714ed4 Add tests for the refactored queueing code 2013-04-14 03:17:29 -06:00
707e125e35 Refactor queueing code out of daemon.c into a separate file
Also make a slightly cleaner extraction.

This hopefully has a couple of advantages:

1) The code should now be a bit cleaner
2) It makes testing the queueing code easier
3) In future it might be possible to have a separate queue per style
   allowing e.g. to perform fair queueing between styles.
2013-04-14 03:17:29 -06:00
adf6e2fc1a Cleanup .slo and some other autogenerated files in make clean 2013-04-11 23:25:20 -06:00
03192f5b61 Fixup test cases, by correctly handling the return value of system 2013-04-11 23:25:20 -06:00
cf68607407 Merge pull request #11 from springmeyer/test-framework
add test framework that can be run with 'make test' - refs #10

This still needs some more cleanup to get it working, but as it doesn't effect anything existing, I'll do that post merge.
2013-04-11 21:11:22 -07:00
2238a5f1a1 Fix compile where cairo is installed in a non standard location
Also work around a bug in cairomm flags in Mapnik 2.0 (#787) that has been fixed upstream
a long time ago, but is still present in the ubuntu mapnik packages.
2013-04-10 17:37:41 -06:00
b635598ad0 add test framework that can be run with 'make test' - refs #10 2013-04-10 12:45:49 -07:00
5d6b6caefa renderd could segfault if map was not loaded 2013-04-08 19:32:49 -06:00
54f668537a Update renderd.conf to reflect added configuration options 2013-04-08 00:50:15 -06:00
9534a82de4 Document all mod_tile configuration directives in the annotated mod_tile.conf 2013-04-08 00:39:34 -06:00
243d713888 Add two more storage backends ro_http_proxy and ro_composite
Both are read only backends, i.e. they can't be used in renderd, but only in mod_tile

ro_http_proxy is a proxy storage backend that retrieves tiles from a remote http tile server

ro_composite is a storage backend that composits two tiles before passing them up.

Although ro_composite can composite tiles from any two storage backends, conceptually it only
works well, if at least one set of tiles are static non updating tiles, as the updating logic
does not allow for requesting rendering updates for both tilesets
2013-03-31 08:14:36 +00:00
03dedd4ec3 Each style can now have its own storage backend / tile_dir 2013-03-30 19:06:33 +00:00
55258f9078 Move man pages out of the debian directory and into the docs directory
These are mostly stub man pages for now
2013-03-30 17:41:11 +00:00
65b3e42076 Add an empty docs directory 2013-03-30 17:35:10 +00:00
a48fb0fe6d Improve configure script a little bit
- automatically find apxs in addition to apxs2. This should make it easier to configure on more systems
- include freetype2.m4. Otherwise ./autogen.sh already fails with missing macro.
- fail if no C++ compiler was found
2013-03-29 06:09:44 +00:00
4bea7e1e87 Fix stability issues with rados backend 2013-03-28 17:09:08 +00:00
59f1ac181a [mod_tile] use a separate storage backend per thread in apache 2.4
Storage backends might not be fully thread safe when reusing the same context, like for example the memcached storage backend,

therefore initialise a separate storage backend / context per thread rather than per process.

Unfortunately there is no way to do this in Apache 2.2. So there you will need to use mpm prefork for non thread safe backends
2013-03-28 17:08:04 +00:00
f427add3fa Debian package : easier way to change user renderd is run with
This is a patch provided by sletuffe on github:
https://github.com/openstreetmap/mod_tile/pull/1
2013-03-28 13:53:44 +00:00
b008759183 [render_expired] Apply @29406 render_list patches to render_expired 2013-03-28 00:04:29 +00:00
cbcacb1248 Fix typo 2013-03-27 20:21:02 +00:00
f804830163 Fix a number of potential issues found by coverity scan static analyzer 2013-03-27 03:59:43 +00:00
dc8ca64ea9 [renderd] bug fixes that could lead to segmentation faults on tile write 2013-03-26 22:25:31 +00:00
33055b84de [render_list] fix invalid free() in case of default mapname or tilepath 2013-03-26 15:52:08 +00:00
4c936cee15 [renderd] fixup breakage from previous commits
Bug was found and reported by Bernard Fouche, thanks!
2013-03-26 14:53:06 +00:00
8f3a46b4eb [renderd] support alternative map projections other than web mercator
Remove hard coded references to the spherical mercator projection and
replace them with something a little more generic. It is still necessary
to add code to support new projections, but it is limited to a few configuration numbers

This initial commit supports spherical mercator and plate carree.

This commit also makes the tile size configurable. The default remains at 256 px.
2013-03-26 04:33:10 +00:00
f4eae0617a [mod_tile] correctly close the storage backends 2013-03-25 17:01:20 +00:00
fb4f86713e [mod_tile] clean up compiler warnings 2013-03-25 14:58:11 +00:00
250a225fbe [mod_tile] Make mod_tile compile with C90
This is necessary if apache is built with --enable-debug-mode
2013-03-25 04:46:33 +00:00
c5ed5b3a6b [mod_tile] Make mod_tile compile with apache 2.4 2013-03-25 02:25:48 +00:00
e8001c859f Add support for pluggable storage backends to mod_tile / renderd
So far, (meta)tiles could only be stored and retrieved from a locally mounted posix filesystem.  Although, the posix
filesystem API is it self a plugable storage layer into which one can mount many different filsystems, from temporary
filesystems to network filesystems, as mod_tile installations scale up to multi-server environments this might not be sufficient and one
may want to use other storage layers.

This patch therefore abstracts all storage calls out into a separate API that can be implemented by various storage backends to fit the needs of different
installations. 

Three storage backends are included in this commit:

- file backend: This is the equivalent of what existed before in mod_tile / renderd. This uses a posix filesystem to store (meta)tiles
- memcached: This stores tiles in a memcached store
- rados: This stores tiles in a rados / ceph cluster

The memcached and rados backends should currently still be considered as experimental

There are also other refactoring and cleanups in this commit
2013-03-23 22:19:30 +00:00
23fb7815d4 Remove "DOES NOT WORK YET" from renderd.conf.
That functionality has been implemented a while ago, but noone changed the comment.
2013-03-06 22:11:42 +00:00
c4c27c529f Move mod_tile_latecy munin graph to correct directory 2013-03-03 19:59:08 +00:00
03cef67fed Improve mod_tile_latency munin graph to show latencies split by zoom level 2013-03-03 19:58:29 +00:00
874f27a6c2 fix issues found by coverity static analysis in dir_utils.c 2013-03-02 16:49:55 +00:00
796407a030 fix issues found by coverity static analysis in gen_tile.cpp 2013-03-02 16:49:30 +00:00
f7582abb14 fix issues found by coverity static analysis in render_expired.c 2013-03-02 16:48:15 +00:00
b73e9ac5f8 fix issues found by coverity static analysis in render_old.c 2013-03-02 16:47:44 +00:00
914699a692 fix issues found by coverity static analysis in mod_tile.c 2013-03-02 16:47:13 +00:00