Page MenuHomePhabricator

Allow diffusion.filecontentquery to load data for arbitrarily large files
ClosedPublic

Authored by epriestley on Jan 21 2016, 5:42 PM.
Tags
None
Referenced Files
F19153025: D15072.diff
Thu, Dec 11, 6:52 AM
F18869408: D15072.diff
Nov 4 2025, 11:40 AM
F18785636: D15072.id36395.diff
Oct 14 2025, 8:36 AM
F18704232: D15072.id36393.diff
Sep 28 2025, 6:41 AM
F18617116: D15072.id.diff
Sep 14 2025, 8:19 PM
F18599001: D15072.diff
Sep 13 2025, 6:23 AM
F18597966: D15072.diff
Sep 13 2025, 4:04 AM
F18577932: D15072.id36393.diff
Sep 10 2025, 8:20 PM
Subscribers
None

Details

Summary

Fixes T10186. After D14970, diffusion.filecontentquery puts the content in a file and returns the file PHID.

However, it does this in a way that doesn't go through the chunking engine, so it will fail for files larger than the chunk threshold (generally, 8MB).

Instead, stream the file from the underlying command directly into chunked storage.

Test Plan

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

epriestley retitled this revision from to Allow diffusion.filecontentquery to load data for arbitrarily large files.
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: chad.

I also tried to make the table on ApplicationsFilesConfigure a little more clear and less technical, since it currently looks like only 8MB files are supported even when a chunk engine is configured. It now just shows "Limit: Unlimited" for the chunk engine:

Screen Shot 2016-01-21 at 9.45.30 AM.png (251×1 px, 40 KB)

chad edited edge metadata.
This revision is now accepted and ready to land.Jan 21 2016, 5:47 PM
This revision was automatically updated to reflect the committed changes.