{"action":"created","issue":{"url":"https://api.github.com/repos/metaodi/osmapi/issues/62","repository_url":"https://api.github.com/repos/metaodi/osmapi","labels_url":"https://api.github.com/repos/metaodi/osmapi/issues/62/labels{/name}","comments_url":"https://api.github.com/repos/metaodi/osmapi/issues/62/comments","events_url":"https://api.github.com/repos/metaodi/osmapi/issues/62/events","html_url":"https://github.com/metaodi/osmapi/issues/62","id":179982487,"number":62,"title":"too many elements cause 414 error","user":{"login":"jose1711","id":1406222,"avatar_url":"https://avatars.githubusercontent.com/u/1406222?v=3","gravatar_id":"","url":"https://api.github.com/users/jose1711","html_url":"https://github.com/jose1711","followers_url":"https://api.github.com/users/jose1711/followers","following_url":"https://api.github.com/users/jose1711/following{/other_user}","gists_url":"https://api.github.com/users/jose1711/gists{/gist_id}","starred_url":"https://api.github.com/users/jose1711/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jose1711/subscriptions","organizations_url":"https://api.github.com/users/jose1711/orgs","repos_url":"https://api.github.com/users/jose1711/repos","events_url":"https://api.github.com/users/jose1711/events{/privacy}","received_events_url":"https://api.github.com/users/jose1711/received_events","type":"User","site_admin":false},"labels":[{"id":72898659,"url":"https://api.github.com/repos/metaodi/osmapi/labels/enhancement","name":"enhancement","color":"84b6eb","default":true}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":5,"created_at":"2016-09-29T08:24:53Z","updated_at":"2017-01-11T21:58:07Z","closed_at":null,"body":"when attempting to download a big number of elements (say - using WaysGet method) ends in 'Request-URI Too Long'. it would be nice if osmapi is able to fight this by allowing to finish the request in chunks\n"},"comment":{"url":"https://api.github.com/repos/metaodi/osmapi/issues/comments/272008528","html_url":"https://github.com/metaodi/osmapi/issues/62#issuecomment-272008528","issue_url":"https://api.github.com/repos/metaodi/osmapi/issues/62","id":272008528,"user":{"login":"metaodi","id":538415,"avatar_url":"https://avatars.githubusercontent.com/u/538415?v=3","gravatar_id":"","url":"https://api.github.com/users/metaodi","html_url":"https://github.com/metaodi","followers_url":"https://api.github.com/users/metaodi/followers","following_url":"https://api.github.com/users/metaodi/following{/other_user}","gists_url":"https://api.github.com/users/metaodi/gists{/gist_id}","starred_url":"https://api.github.com/users/metaodi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/metaodi/subscriptions","organizations_url":"https://api.github.com/users/metaodi/orgs","repos_url":"https://api.github.com/users/metaodi/repos","events_url":"https://api.github.com/users/metaodi/events{/privacy}","received_events_url":"https://api.github.com/users/metaodi/received_events","type":"User","site_admin":false},"created_at":"2017-01-11T21:58:07Z","updated_at":"2017-01-11T21:58:07Z","body":"@austinhartzheim thank you very much for this very thorough analysis of the problem at hand.\r\n\r\nI have a few things to add:\r\n\r\n- I think we should not be shy to just try a request and see if it fails or not. I think this is a very pythonic way of handling things anyway. So I wouldn't bother to check and measure the optimal size, but rather use a good default, try the request, and if it fails, maybe try to split it differently, and if it still fails, raise the error to the user\r\n- I think the places you tracked down are very good the come up with a good default value and/or influence the definition of an actual limit in the API as you already mentioned. But it still leaves us with at least two problems:\r\n    1. People might still use an old version of the API\r\n    2. People might run `osmapi` against their very own custom version of the API, running on their server or customized code, not running on Apache\r\n\r\nAll these points lead me to the conclusion, that I'd prefer a *limit with a good default value*, that a user of `osmapi` can override (e.g. in the constructor). If the limit is reached, another request is sent to the OSM API with the remaining items, the results are then put back together and returned to the consumer as \"one\", so that this whole process is transparent from a users perspective (i.e. they don't notice it)."}}
{"actor":{"display_login":"metaodi"}}