HomePhabricator

Splice in a patch to remove Phriction content rows with no document
Audit Requiredc5960c71f929

Description

Splice in a patch to remove Phriction content rows with no document

The unique key on <documentPHID, version> may fail to apply if any content
rows don't have a valid document. This is rare, but we have some old random
garbage rows on "secure.phabricator.com" which prevent the next patch from
applying. Just toss these rows, they're junk.

Details

Group Auditors
Cowboy Commits
Provenance
epriestleyAuthored on Aug 31 2018, 7:02 PM
epriestleyPushed on Aug 31 2018, 7:04 PM
Parents
rP26d9ee456f30: Hide the new Phriction "Publish" operation behind the "Prototype" toggle
Branches
Unknown
Tags
Unknown
Build Status
Buildable 20722
Build 28168: Run Core Tests

Event Timeline

Unrelated to this change, but this is from the email I received about it:

BRANCHES
<HTTPFutureHTTPResponseStatus: [HTTP/500] Internal Server Error
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Phabricator Setup Error</title>
<style type="text/css">/**
* @provides phabricator-fatal-config-template-css
*/
body {
overflow-y: scroll;
background: #f9f9f9;
margin: 0;
padding: 0;
font: 13px/1.231 'Segoe UI', 'Segoe UI Web Regular', 'Segoe UI Symbol',
'Helvetica Neue', Helvetica, Arial, sans-serif;
text-align: left;
-webkit-text-size-adjust: none;
}

body.in-flight {
background: #41506e;
color: #e0e0e0;
}
...>

TAGS
<HTTPFutureHTTPResponseStatus: [HTTP/500] Internal Server Error
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Phabricator Setup Error</title>
<style type="text/css">/**
* @provides phabricator-fatal-config-template-css
*/
body {
overflow-y: scroll;
background: #f9f9f9;
margin: 0;
padding: 0;
font: 13px/1.231 'Segoe UI', 'Segoe UI Web Regular', 'Segoe UI Symbol',
'Helvetica Neue', Helvetica, Arial, sans-serif;
text-align: left;
-webkit-text-size-adjust: none;
}

body.in-flight {
background: #41506e;
color: #e0e0e0;
}
...>

That seems weird, but it sort of expected/desirable.

If the Conduit calls for Branches/Tags fail to generate, we put the error message from the call into the email. This seemed better than: dropping the email; omitting the sections; or putting a generic "something went wrong" message in the email. D13319 and T8574 appear to be the genesis of this behavior.

In most cases, the error is a Conduit-level error ("your account is disabled", "the specified repository does not exist") and one or two lines long, and the message is likely relatively useful in understanding why that section didn't render.

In this case, the host itself was toast since I couldn't get through storage upgrades without this patch, so we got an actual HTTP-level error, and the exception message for these is just a big chunk of the response body since it's sometimes useful in understanding what went wrong.

So even though this outcome is a little goofy, I think all the rules that led us there are mostly pretty reasonable, and don't see anything obvious that should be changed/fixed.

That seems weird, but it sort of expected/desirable.

If the Conduit calls for Branches/Tags fail to generate, we put the error message from the call into the email. This seemed better than: dropping the email; omitting the sections; or putting a generic "something went wrong" message in the email. D13319 and T8574 appear to be the genesis of this behavior.

In most cases, the error is a Conduit-level error ("your account is disabled", "the specified repository does not exist") and one or two lines long, and the message is likely relatively useful in understanding why that section didn't render.

In this case, the host itself was toast since I couldn't get through storage upgrades without this patch, so we got an actual HTTP-level error, and the exception message for these is just a big chunk of the response body since it's sometimes useful in understanding what went wrong.

So even though this outcome is a little goofy, I think all the rules that led us there are mostly pretty reasonable, and don't see anything obvious that should be changed/fixed.

Thanks for the detailed explanation.