HomePhabricator

When importing Git repositories, treat out-of-range timestamps as the current…

Description

When importing Git repositories, treat out-of-range timestamps as the current time

Summary:
Fixes T11537. See that task for discussion.

Although we could accommodate these faithfully, it requires a huge migration and affects one repository on one install which was written with buggy tools.

At least for now, just replace out-of-32-bit-range epoch values with the current time, which is often somewhat close to the real value.

Test Plan:

  • Following the instructions in T11537, created commits in 40,000 AD.
  • Tried to import them, reproducing the "epoch" database issue.
  • Applied the patch.
  • Successfully imported future-commits, with some liberties around commit dates. Note that author date (not stored in an epoch column) is still shown faithfully:

Screen Shot 2016-08-26 at 5.20.09 AM.png (237×409 px, 24 KB)

Reviewers: chad, avivey

Reviewed By: avivey

Maniphest Tasks: T11537

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