1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-11-11 09:22:40 +01:00
phorge-phorge/src/applications/files
epriestley 2b7210260f Allow Phabricator storage engines to be extended and configured
Summary:
See T344. Currently, there's a hard-coded 12MB filesize limit and some awkward
interactions with MySQL's max_allowed_packet. Make this system generally more
robust:

  - Move the upload limit to configuration.
  - Add setup steps which reconcile max_allowed_packet vs MySQL file storage
limits.
  - Add a layer of indirection between uploading files and storage engines.
  - Allow the definition of new storage engines.
  - Define a local disk storage engine.
  - Add a "storage engine selector" class which manages choosing which storage
engines to put files in.
  - Document storage engines.
  - Document file storage classes.

Test Plan:
Setup mode:

  - Disabled MySQL storage engine, misconfigured it, configured it correctly.
  - Disabled file storage engine, set it to something invalid, set it to
something valid.
  - Verified max_allowed_packet is read correctly.

Application mode:

  - Configured local file storage.
  - Uploaded large and small files.
  - Verified larger files were written to local storage.
  - Verified smaller files were written to MySQL blob storage.

Documentation:

  - Read documentation.

Reviewed By: jungejason
Reviewers: jungejason, tuomaspelkonen, aran
CC: aran, epriestley, jungejason
Differential Revision: 695
2011-07-21 16:44:24 -07:00
..
controller Improve DarkConsole "Services" and "XHProf" plugins 2011-07-11 12:51:58 -07:00
engine Allow Phabricator storage engines to be extended and configured 2011-07-21 16:44:24 -07:00
engineselector Allow Phabricator storage engines to be extended and configured 2011-07-21 16:44:24 -07:00
storage Allow Phabricator storage engines to be extended and configured 2011-07-21 16:44:24 -07:00
transform Allow affiliations to carry project ownership information; transform profile 2011-06-28 06:40:41 -07:00
uri DifferentialChangesetView 2011-01-24 17:24:40 -08:00