Commit Graph

127 Commits

Author SHA1 Message Date
Sascha L. Teichmann
5def145564 The block data from the redis server in of the HSPATIAL requests is now recycled with a sync.Pool. Removes some pressure from the gc. 2017-02-28 00:33:59 +01:00
Sascha L. Teichmann
d6411f3f6d Implement renderer reset cheaper ... and this time correctly. 2017-02-27 23:50:15 +01:00
Sascha L. Teichmann
eed91e7148 Comment out early stop in renderer reset as it results in broken renderings. 2017-02-27 20:47:23 +01:00
Sascha L. Teichmann
58d930e1d2 Only clear renderer if necessary. 2017-02-27 20:10:49 +01:00
Sascha L. Teichmann
ba43353488 Bumped version to 0.8 2017-02-26 21:51:49 +01:00
Sascha L. Teichmann
12cfd32ad5 Use blake2b instead of sha1 to check for identical tiles to not regenerate the tiles pyramid. 2017-02-26 21:47:50 +01:00
Sascha L. Teichmann
ca634f28ef Simplified area coverage calculation a great deal. 2017-02-26 17:01:15 +01:00
Sascha L. Teichmann
4b92a6c722 Do not leave the current area when re-checking the coverage area. 2017-02-26 13:21:39 +01:00
Sascha L. Teichmann
003ce5035a Moved area coverage stuff out of renderer. It is an optimization to load
only needed blocks from db and has nothing to do with rendering.
2017-02-26 13:13:19 +01:00
Sascha L. Teichmann
3e3413566b Only do expensive area coverage calculation if there where blocks loaded from database.
If there are not, nothing changed, so nothing to recalculate.
Takes a good deal from the clock.
2017-02-26 12:57:38 +01:00
Sascha L. Teichmann
7f78feb9bd Replaced expensive fmt.Sscanf call in redis client with strconv.ParseInt. 2017-02-25 19:29:27 +01:00
Sascha L. Teichmann
228bd9026b Added a recyling pool for bulk strings written in redis client to help performance. 2017-02-25 17:00:17 +01:00
Sascha L. Teichmann
b2ca97568e Call better suited strconv.AppendInt when converting keys to byte slices. 2017-02-25 00:11:03 +01:00
Sascha L. Teichmann
b6bfe468b7 For symmetry inline readline function in redis client. 2017-02-24 21:23:04 +01:00
Sascha L. Teichmann
744208ba00 Removed superfluous error checking in redis client. 2017-02-24 19:54:19 +01:00
Sascha L. Teichmann
3c2ab551f1 Opitimized writing redis hspatial queries a bit. 2017-02-24 19:49:08 +01:00
Sascha L. Teichmann
b0a42867d8 Improved performance of Renderer.Reset by factor of 2. 2017-02-24 17:59:41 +01:00
Sascha L. Teichmann
c167efecd2 Content and parameters width seems to be 255 instead of 2 in new block format. This is strange becaus they are set hard to 2 in mapblock.cpp#MapBlock::serialize. 2017-02-24 12:02:06 +01:00
Sascha L. Teichmann
90279506d1 Ported new map block offset in version >= 27 from C++ mapper.
Needs testing.
See 21444d00c3
2017-02-23 16:08:16 +01:00
Sascha L. Teichmann
599ec1cf2b Set version to 0.7 2016-05-13 16:46:06 +02:00
Sascha L. Teichmann
674912ed5f Test linked list in both directions in base tile hash. 2016-05-11 18:43:20 +02:00
Sascha L. Teichmann
9a355d08fd Typo fix. 2016-05-11 12:02:36 +02:00
Sascha L. Teichmann
a0d38b7ce6 Made go vet happy on test of base tile hashing. 2016-05-11 12:01:39 +02:00
Sascha L. Teichmann
ef1a2de98e Fixed toFront opertaion in LRU logic of base tile hashing. Tests now pass. 2016-05-11 11:49:53 +02:00
Sascha L. Teichmann
ed41cfbe01 Made test less spammy. 2016-05-11 11:43:38 +02:00
Sascha L. Teichmann
b257a60b2d Improved tests of base tile hash. They fail. TODO: Fix bugs in base tile hash. 2016-05-11 11:39:50 +02:00
Sascha L. Teichmann
bae7e7c3e6 Made size of hashes LRU cache a parameter set by the webmapper. 2016-05-10 21:02:16 +02:00
Sascha L. Teichmann
69ee5af388 Implemented a simple LRU cache with max 256 entries for base tile hasing. TODO: Improve test. 2016-05-10 18:57:14 +02:00
Sascha L. Teichmann
b59f849d73 Make go vet happy. 2016-05-08 18:03:13 +02:00
Sascha L. Teichmann
fad16a58e8 Write tile coord if it is unchanged not the file path to the base tile. 2016-05-08 17:43:48 +02:00
Sascha L. Teichmann
398c52f8a5 Removed unnecessary general code. 2016-05-08 17:33:51 +02:00
Sascha L. Teichmann
792aae99d7 Simplified tile hash. 2016-05-08 17:22:04 +02:00
Sascha L. Teichmann
0900bd16ce Finished logic to supress pyramid regeneration in mtwebmapper. Untested. 2016-05-08 15:38:50 +02:00
Sascha L. Teichmann
5ee3731a27 Started with experimental hashing of base tiles to avoid redundant write operations and pyramid updates. 2016-05-08 12:33:17 +02:00
Sascha L. Teichmann
67a16e2d3e Unexport render internal methods. 2016-04-24 13:31:13 +02:00
Sascha L. Teichmann
8c459d05de Removed dead code. 2016-04-24 12:55:17 +02:00
Sascha L. Teichmann
ea57c7c35f Silence all warnings of golint not related to missing comments. 2016-04-24 12:41:58 +02:00
Sascha L. Teichmann
607b4de9ec Dedup code. 2016-04-23 21:09:23 +02:00
Sascha L. Teichmann
0db9b519a6 Implement fetaure request issue #17
mtseeder and mtwebmapper got an option to set the background color where no nodes are generated, yet.
2016-04-23 16:45:33 +02:00
Sascha L. Teichmann
b5f531b0ba Before Go 1.7 there is an extra offset needed to decode blocks correctly
after the embedded compressed data. In post 1.7 this bug was fixed.
We use build tags here to support both cases.
2016-04-08 23:40:36 +02:00
Sascha L. Teichmann
384c11659e version 0.6 2015-12-26 18:19:03 +01:00
Sascha L. Teichmann
f658d12641 Use github.com/bamiaux/rez instead of github.com/nfnt/resize for resampling the pyramid tiles. It is much faster but needs some testing. 2015-12-25 22:07:54 +01:00
Sascha L. Teichmann
6ae5936de9 Be more verbose if image decoding failed. 2015-08-24 10:58:46 +02:00
Sascha L. Teichmann
08031f1dcd Do more boundary checks in block decoding. 2015-08-24 10:45:28 +02:00
Sascha L. Teichmann
011cd0e4f4 Be more defensive in decoding node id table in blocks. 2015-08-23 22:48:54 +02:00
Sascha L. Teichmann
c4c35dc10d Use a sync.Pool to recycle the zlib readers. Speeds up the decoding of database blocks significantly. 2015-08-08 16:01:23 +02:00
Sascha L. Teichmann
ab1a86384b Reset zlib reader instead of re-opening it before reading meta data from block. Speeds up decoding of blocks significantly. Using a sync.Pool will seed it up even more. 2015-08-08 13:00:12 +02:00
Sascha L. Teichmann
e606e2700f Fixes #14. mtseeder and mtwebmapper now have command line flags -ymin=block and -ymax=block to limit the y range of mapping. Defaults to full range. 2015-07-27 19:03:47 +02:00
Sascha L. Teichmann
62a53dc26b Unified handling of printing versions of programs (--version). Setting version to 0.5 2015-07-26 22:04:16 +02:00
Sascha L. Teichmann
7f82d482f5 More header updates. 2015-07-26 16:44:51 +02:00