Avoid attempting to prerender thumbnails that will fail

For non-vectorial content, requesting a thumbnail larger than
the original results in a 500. Prerendering in its current form
introduces an increase in 500s that dilutes the real problematic
500s, making troubleshooting harder than it needs to be.

Change-Id: I9418dee7653ad7954c3788ecdd350fc8772edd32
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/301
This commit is contained in:
Gilles Dubuc 2014-10-03 18:09:07 +02:00
parent 382e6c26bb
commit 0ce5bafb4b

View file

@ -768,13 +768,20 @@ abstract class UploadBase {
$sizes = $wgUploadThumbnailRenderMap;
rsort( $sizes );
$file = $this->getLocalFile();
foreach ( $sizes as $size ) {
$jobs[] = new ThumbnailRenderJob( $this->getLocalFile()->getTitle(), array(
'transformParams' => array( 'width' => $size ),
) );
if ( $file->isVectorized()
|| $file->getWidth() > $size ) {
$jobs[] = new ThumbnailRenderJob( $file->getTitle(), array(
'transformParams' => array( 'width' => $size ),
) );
}
}
JobQueueGroup::singleton()->push( $jobs );
if ( $jobs ) {
JobQueueGroup::singleton()->push( $jobs );
}
}
/**