Homestyx hydra
Diffusion hydra e1d6bad864d4

Stop trying to assess the image dimensions of large files and file chunks

Description

Stop trying to assess the image dimensions of large files and file chunks

Summary:
Depends on D18828. Ref T7789. See https://discourse.phabricator-community.org/t/git-lfs-fails-with-large-images/584.

Currently, when you upload a large (>4MB) image, we may try to assess the dimensions for the image and for each individual chunk.

At best, this is slow and not useful. At worst, it fatals or consumes a ton of memory and I/O we don't need to be using.

Instead:

  • Don't try to assess dimensions for chunked files.
  • Don't try to assess dimensions for the chunks themselves.
  • Squelch errors for bad data, etc., that gd can't actually read, since we recover sensibly.

Test Plan:

  • Created a 2048x2048 PNG in Photoshop using the "Random Noise" filter which weighs 8.5MB.
  • Uploaded it.
  • Before patch: got complaints in log about imagecreatefromstring() failing, although the actual upload went OK in my environment.
  • After patch: clean log, no attempt to detect the size of a big image.
  • Also uploaded a small image, got dimensions detected properly still.

Reviewers: amckinley

Reviewed By: amckinley

Maniphest Tasks: T7789

Differential Revision: https://secure.phabricator.com/D18830

Details

Provenance
epriestleyAuthored on Dec 13 2017, 9:28 AM
sirocylPushed on Oct 16 2024, 5:49 AM
Parents
R1:5295840a4cf9: Restore the "Download from Git LFS" UI button to Diffusion
Branches
Unknown
Tags
Unknown

Event Timeline