zooniverse / classroom-maps-api

Mapping API for the https://classroom.zooniverse.org service. Built using https://datasette.io/ to provide a JSON API over SQLite databases with custom project CSV data.
MIT License
2 stars 0 forks source link

Increase "Returned Rows" limit #6

Closed shaunanoordin closed 3 years ago

shaunanoordin commented 3 years ago

PR Overview

We've received complaints from WildCam Gorongosa users that their downloaded CSVs are limited to only 2,000 results. We've actually been aware that Datasette has a setting that sets an explicit limit to the number of returned results (2,000 by default, for performance issues) and we were monitoring to see if we'd need to crank up the number - the answer is yes, as it turns out.

The limit has now been cranked up to 50,000, which matches the maximum number of results that might possibly be returned for each project. (Gorongosa's map has 40,388 results with no filters selected; Darien has 38,457; Kenya has 26,382 though that might increase.)

Note: to find out what the "maximum possible results" are, just go to a map page - e.g. https://classroom.zooniverse.org/#/wildcam-darien-lab/explorers/map/ - make sure no filters are selected, and look at the "38457 photo(s)" number. This corresponds to the number of results you SHOULD get when clicking the "Download" (as CSV) button

⚠️ This increase needs to be 1. monitored for performance, and 2. revised when new data goes into the projects. Notably Darien and Kenya.

Status

WIP. I'm currently running a performance test against my localhost specs to ensure the increased size won't be an issue.

shaunanoordin commented 3 years ago

PR Update

Status

Ready!

shaunanoordin commented 3 years ago

Minor side note: are the parameters in settings.json actually used? They seem to be overridden by the parameters set via the command line (Dockerfile, docker-compose.yaml).

camallen commented 3 years ago

Minor side note: are the parameters in settings.json actually used? They seem to be overridden by the parameters set via the command line (Dockerfile, docker-compose.yaml).

Yes - they are once we switch to the configuration directory mode, currently working around a bug that was recently, details in this comment https://github.com/zooniverse/classroom-maps-api/blob/1ded1dc58713e0453f3e6e3d78e8a9a16094ee2d/Dockerfile#L32 and #7