Svoboda | Graniru | BBC Russia | Golosameriki | Facebook
BBC RussianHomePhabricator
Log In
Maniphest T341742

Wikisource page images don't always display due to OpenSeadragon timeout
Closed, ResolvedPublicBUG REPORT

Description

Steps to replicate the issue:

  • Create/edit a Page: namespace page in Wikisource (have checked enws; probably applies to all Wikisources)
  • Issue appears if the page scan image takes longer than 30 seconds to load (e.g. on a slow internet connection, or when loading many pages at once)

What happens?:

The page image canvas remains blank, even after the browser has downloaded the image; if you zoom in twice, then the page appears (presumably it's using the downloaded image), but zooming back out again the page image will disappear.

When this happens, the following console error is logged:

Tile 0/0_0 failed to load: //upload.wikimedia.org/wikipedia/commons/thumb/9/90/scan_name.djvu/page111-1024px-scan_name.djvu.jpg - error: Image load exceeded timeout (30000 ms)

What should have happened instead?:

The page image should appear when the browser completes its download of the image, even if it takes longer than 30 seconds to download.

Software version (skip for WMF-hosted wikis like Wikipedia):

Other information:

Replicated on Windows 10 (22H2), Firefox (115.0.2 (64-bit)), Chrome (Version 114.0.5735.199 (Official Build) (64-bit)), and Edge (114.0.1823.79 (Official build) (64-bit))

This could be resolved by changing the OpenSeadragon options:

  • increasing timeout from 30000 (to perhaps 60000)
  • setting tileRetryMax to any number other than the default (0)

Event Timeline

Issue appears if the page scan image

Hi, this misses steps to reproduce. How to have/get some "page scan image"? Is this about Wikimedia OCR maybe?

Hi, this misses steps to reproduce. How to have/get some "page scan image"? Is this about Wikimedia OCR maybe?

Not sure what else to call this; it's the image of the scan of the page you're proofreading, that is derived from the corresponding djvu/pdf file hosted on Commons, and which takes up the right half of the screen when you create or edit a new page in the Page: namespace. Every page has such an image; it's not the OCR related to this page, but the image of the page itself, so there aren't any additional steps needed to get this image – just create or edit any valid page in the Page: namespace, and your browser will start downloading this image.

When you just view a page in the Page: namespace, the image is in an <img> tag, and appears gradually as the browser downloads the image, which takes as long as it takes (i.e. there's no timeout limit for how long the image takes to load when just viewing the page). But when you edit a page, or create a new page, the image is in an OpenSeadragon <canvas> element (to allow you to zoom in/move the image, etc.), and if OpenSeadragon takes more than 30 seconds to load this image, then it just displays a blank canvas (as described above), even after the image is successfully downloaded.

Please let me know, or edit the bug report, if there's a better way to describe it!

Able to reproduce this:

This could be resolved by changing the OpenSeadragon options:

    • increasing timeout from 30000 (to perhaps 60000)
  • setting tileRetryMax to any number other than the default (0)

Changing tileRetryMax is probably not the way we should go, since this mostly manifests when a Page: image is being rendered by Thumbor, and making additional requests is not going to be useful.

Change 937987 had a related patch set uploaded (by Sohom Datta; author: Sohom Datta):

[mediawiki/extensions/ProofreadPage@master] Increase timeout for Openseadragon loading to 2 min

https://gerrit.wikimedia.org/r/937987

Change 937987 merged by jenkins-bot:

[mediawiki/extensions/ProofreadPage@master] Increase timeout for Openseadragon loading to 2 min

https://gerrit.wikimedia.org/r/937987

Soda claimed this task.

This should have been fixed ? (Feel free to reopen if not)

Working perfectly thanks! Much appreciated! 👍