Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Out-of-Memory errors on rather small map areas #66

Open
hholzgra opened this issue Jul 3, 2022 · 4 comments
Open

Out-of-Memory errors on rather small map areas #66

hholzgra opened this issue Jul 3, 2022 · 4 comments

Comments

@hholzgra
Copy link
Owner

hholzgra commented Jul 3, 2022

There are cases where relatively small map areas lead to out-of-memory errors when rendering, e.g. when rendering parts of Nuuk/Greenland:

https://print.get-map.org/maps/226476

In the specific case above the culprit is the rock formation inside the bounding box, but there also have been other related cases.

This is not reproducible on all installations, so needs further root cause analysis ...

@hholzgra
Copy link
Owner Author

Might be related to:

pygobject/pycairo#239

@hholzgra
Copy link
Owner Author

hholzgra commented Oct 5, 2024

A bit more on this: only the PDF and SVG backends seem to be affected,not the PNG backend.

Which explains why this never really affected tile server use cases ...

@hholzgra
Copy link
Owner Author

hholzgra commented Oct 5, 2024

Turns out the problem is this rendering rule for glaciers, in combination with the Greenland Ice Sheet relation ( https://www.openstreetmap.org/relation/1279614 ):

  <Style filter-mode="first" name="water-areas-natural">
    <Rule>
      <MaxScaleDenominator>750000</MaxScaleDenominator>
      <Filter><![CDATA[([natural] = 'glacier')]]></Filter>
      <LineSymbolizer stroke="#99ccff" stroke-dasharray="4, 2" stroke-width="1.5"/> 

The problem is the stroke-dasharray attribute, without that rendering works fine.

Looks as if the dashing is generated for the whole polygon outline, not just the part visible in the image? With the PNG backend that does not seem to be a problem as pixels outside of the visible area are ignored, whereas the PDF and SVG backends generate a vector object for the full outline, which with an outline was long and as fractal as the Greenland Inland Ice one simply becoming too big ...?

@hholzgra
Copy link
Owner Author

hholzgra commented Oct 5, 2024

New Mapnik bug report: mapnik/mapnik#4476

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant