I have looked at previous threads regarding this topic, but did not find the exact problems described - but they might be related - in short:
- I have the new GeoServer 2.15.0 and configured the GeoWebCache for the WMS service
- I have a layer from a PostGIS source with 6 million points
- I have configured a GEOWEBCACHE_CACHE_DIR env variable set to a path which is accessible for Geoserver
- I have a webapp requesting a WMS layers in a TILED fashin
- GeoServer creates tiles in the cache for rendering the map with each layer)
- All sent images (to the client) of my background layer (GeoTIFF) are cached and get served from there
Now the problem: My layer with the many points gets only partially cached, even GeoServer renders them completely and serves the client - but it only saves some of the tiles to the cache. I also have the same problem with pre-seeding my layer. It produces the tiles, but not all.
Purple (=files sent to client), Yellow (=tiles actually getting cached)
My setup proves to be working. Caching on demand (when a client requests the tiles for the first time) and pre-seeding work. But in both cases GeoWebCache reproducibly does not cache certain tiles. Also when setting a large enough and larger extent for the pre-seeding, I end up with the same number of tiles being cached. The tiles also render fast enough in the client, so I'm sure this has nothing to do with a timeout.
The log shows me the following...
geoserver | 10 Mar 20:33:02 WARN [lite.gridcoverage2d] - Could not reduce the grid geometry inside the valid area bounds: ReferencedEnvelope[-2.147483647E9 : 2.147483647E9, -85.0 : 85.0] geoserver | Grid geometry isGridGeometry2D[GridEnvelope2D[267..581, 0..4], PARAM_MT["Affine", geoserver | PARAMETER["num_row", 3], geoserver | PARAMETER["num_col", 3], geoserver |
PARAMETER["elt_0_0", 8.996714848883048], geoserver |
PARAMETER["elt_0_2", 172421.68534038262], geoserver |
PARAMETER["elt_1_1", -9.48768472906404], geoserver |
...for the tiles that cannot be cached. I checked now again the layer configuration and noted that the native extent (EPSG:900913/3857) doesn't match in the layer settings and in the GeoWebCache seed dialog. It seems, that the GeoWebCache treats only a smaller extent as valid. Both layer extent values come from the same PostGIS layer. I use an out of the box geoserver running on a docker image.
Is this a misconfiguration by me, or maybe a bug in GeoWebCache?