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

Images fail to load on Mapillary JS - Request limit? #481

Open
johnaidenrohde opened this issue Nov 17, 2021 · 3 comments
Open

Images fail to load on Mapillary JS - Request limit? #481

johnaidenrohde opened this issue Nov 17, 2021 · 3 comments
Assignees

Comments

@johnaidenrohde
Copy link

johnaidenrohde commented Nov 17, 2021

Basic information

Interesting image loading issue. After about 20 minutes of use - maybe 2,000 or so Mapillary images viewed, we find that all Mapillary images cease loading. My guess is that Mapillary is imposing a request limit, but I can't find any documentation on this.

Note : This bug was encountered by Safety in Numbers analysts and has only been seen on our system to date. I haven't had time yet to setup a clean Mapillary JS instance and confirm the behavior, but I wanted to post just in case there was a simple fix.

Any ideas?

MapillaryJS version: v4.0.0
System/Browser: Google Chrome Version 96.0.4664.45 (Official Build) (64-bit), Microsoft Edge Version 95.0.1020.53 (Official build) (64-bit)

Steps to Reproduce Behavior

  1. Open the Mapillary JS implementation on map.safe7y.com
  2. Open any Mapillary sequence by selecting a green dot on the map
  3. Hit the >, play button, on the Mapillary JS viewer
  4. Continue to play through sequences until the error occurs - typically this requires several thousand images.

Expected behavior

Images should continue to load without error.

Actual behavior

Images stop loading.

Additional information

After about 20 minutes of use - maybe 2,000 or so Mapillary images viewed, we find that all mapillary images cease loading and we get the following error messages:

Access to XMLHttpRequest at 'https://graph.mapillary.com/images?image_ids=568070274306488&fields=id,comp…erge_cc,mesh,quality_score,sfm_cluster,thumb_1024_url,thumb_2048_url,width' from origin 'https://map.safe7y.com' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.

mapillary.module.js:85439 Failed to cache image (568070274306488). MapillaryError: Failed to fetch data
    at chunk-vendors.843f91ed.js:38
(anonymous)	@	mapillary.module.js:85439

graph.mapillary.com/…mb_2048_url,width:1 Failed to load resource: net::ERR_FAILED

mapillary.module.js:82228 Uncaught (in promise) MapillaryError: Failed to fetch data
    at chunk-vendors.843f91ed.js:38

This is what it looks like from within our app.

mapillary_loading_issue

I am taking over this code from the original developer, and I am Vue novice but it seems to be a verily vanilla implementation of the Mapillary JS viewer v4. All our code for this project is open source and I believe the majority of the API interface occurs here:
https://gitlab.com/54f37y/map_frontend/-/blob/master/src/components/map/Imagery.vue
https://gitlab.com/54f37y/map_frontend/-/blob/master/src/mapillary.js

What is frustrating about this particular error is that it seems to be time based. 30 minutes later the same, user, without refreshing, can load the images that threw errors before. Refreshing the page does not fix the issue, nor does clearing cookies, switching browsers, switching IP addresses or switching computers.

Once the user is able to review images the following error are thrown, which may be related:

Unchecked runtime.lastError: The message port closed before a response was received.
mapillary.module.js:48502 

Uncaught (in promise) CancelMapillaryError: Request aborted by a subsequent request to id 223465049110163.
    at QO._abortRequest (mapillary.module.js:86675)
    at QO.moveTo$ (mapillary.module.js:86588)
    at rR.moveTo (mapillary.module.js:87714)
    at Imagery.vue:158
    at u (runtime.js:63)
    at Generator._invoke (runtime.js:293)
    at Generator.next (runtime.js:118)
    at n (asyncToGenerator.js:3)
    at s (asyncToGenerator.js:25)
    at asyncToGenerator.js:32
@oscarlorentzon
Copy link
Member

Thanks for reporting, we will investigate if this is related to request limits.

@oscarlorentzon oscarlorentzon self-assigned this Nov 23, 2021
@MarvinDrude
Copy link

I actually experienced this too. After loading too many images some users experience black screen and the same error in the console. I use it on https://gidd.io/ -> "start playing" -> "Start Game"
image

@andris86
Copy link

This issue is still occuring on February 2024. I can confirm that everything the reporter of this issue described has been occuring to me since I recently discovered and started using Mapillary.

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

4 participants