Page MenuHomePhabricator

Add an alternate "modern" hunk datastore
ClosedPublic

Authored by epriestley on May 25 2014, 4:36 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Mar 24, 1:21 PM
Unknown Object (File)
Feb 18 2024, 8:17 AM
Unknown Object (File)
Feb 16 2024, 8:47 PM
Unknown Object (File)
Feb 8 2024, 1:16 AM
Unknown Object (File)
Feb 4 2024, 3:48 AM
Unknown Object (File)
Feb 2 2024, 8:30 AM
Unknown Object (File)
Feb 1 2024, 2:32 PM
Unknown Object (File)
Jan 28 2024, 4:19 AM
Subscribers

Details

Summary

Ref T4045. Ref T5179. Hunk storage has two major issues:

  • It's utf8, but actual diffs are binary.
  • It's huge and can't be compressed or archived.

This introduces a second datastore which solves these problems: by recording hunk encoding, supporting compression, and supporting alternate storage. There's no actual compression or storage support yet, but there's space in the table for them.

Since nothing actually uses hunk IDs, it's fine to have these tables exist at the same time and use the same IDs. We can migrate data between the tables gradually without requiring downtime or disrupting installs.

Test Plan
  • There are no writes to the new table yet.
  • The only effect this has is making us issue one extra query when looking for hunks.
  • Observed the query issue, but everything else continue working fine.
  • Created a new diff.
  • Ran unit tests.

Diff Detail

Repository
rP Phabricator
Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

epriestley retitled this revision from to Add an alternate "modern" hunk datastore.
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: btrahan.
  • Add date created / date modified.
  • Spell "dateModified" correctly.
  • Make the dataEncoding column nullable for consistency ("encoding is not known").
btrahan edited edge metadata.
This revision is now accepted and ready to land.Jun 3 2014, 10:17 PM
epriestley updated this revision to Diff 22329.

Closed by commit rP0aa913805d14 (authored by @epriestley).