-
Notifications
You must be signed in to change notification settings - Fork 5
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
Large Choropleths Cause Chrome to Crash #196
Comments
This issue is not unique to staging but exists in base ET as well: data layer: us_ipums_all_pop_1790_1890_county https://tiles.earthtime.org/regions/us_counties/US_county_1890_ms10.geojson joined with this CSV: https://tiles.earthtime.org/regions/us_counties/all_pop_1790_1890_county.csv 12 years worth of data for 2858 counties |
layer maddison_project_cgdppc (top waypoint 140) Years 1, 730, 1000, 1150, then 1280-2016. Lots of columns geojson appears to be the default per-country geojson |
I mention this awhile back in issue #110 Decreasing geometry detail or using binned choropleths are the solution. |
Also, I'm not sold on lowering the detail of the geometry as a fully encompassing solution here. How much do we know to cut on the detail for the different layers? Some span dozens of frames. Some more, some less. Do we have to keep lowering details as the dataset gets larger and larger? I have at least one layer that is for every country in the world and every month I add more data to it (school closure policies). This is where the binned choropleths were something I was hoping to explore more. |
We could also temporarily switch to bubbles for the large layers until we in the future either switch to binary or mbtile choropleths. An advantage to a temporary solution like this is that we fix both staging and production without needing to port the feature. |
Gabriel suggests porting JSON choropleths to use shaders that were developed for binary-tile, as they're much more memory efficient. |
https://staging.earthtime.org/explore#waypoints=1heLmeuPp7j4itr0cK8H4chugOpp7cU8p_VEB9CFfPlY.0&#v=152795,364832,1994398,1400734,pts&t=0&ps=50&l=maddison_project_cgdppc,bdrk,WITS_Deficits_US_all_products&bt=19910101&et=20161231&startDwell=0&endDwell=1&fps=30
You will see your Chrome tab crash after a few seconds.
You will only see red and black bubbles, but what is missing from what
you see is that there is actually a third layer loading behind the
scenes. And this layer is a giant chorolpleth layer: maddison_project_cgdppc
This layer's time range covers 1800 to 2016 and Chrome will crash. We have a couple
dozen or so of these large choropleths that will crash Chrome, but not
another browser like FireFox. The reason for this
is that Chrome has a max heap size of ~1GB and we exceed this when
loading a layer like this. FireFox, on the other hand, has a larger
default heap size and thus does not crash. Our binary choropleths method
(or mapbox) is the only solution.
Or decrease detail of the layer.
Current proposed fix by @rsargent is to decrease the geojson complexity
The text was updated successfully, but these errors were encountered: