{"thread":{"id":"44832","subject":"[BUG] push sometimes omits status table when remote dies","startedAt":"2017-01-07T08:48:53Z","lastAt":"2017-01-07T08:48:53Z","messageCount":1,"participants":["Jeff King"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"308922","messageId":"20170107084843.w3psqobh4yq6t6zb@sigill.intra.peff.net","threadId":"44832","inReplyTo":null,"subject":"[BUG] push sometimes omits status table when remote dies","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2017-01-07T08:48:44Z","receivedAt":"2017-01-07T08:48:53Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"If I run t5504 under heavy load, it sometimes fails tests 8 and 9, which\nmake a broken push to the remote. The failure looks like this:\n\n    expecting success: \n            rm -rf dst &&\n            git init dst &&\n            (\n                    cd dst &&\n                    git config transfer.fsckobjects true\n            ) &&\n            test_must_fail git push --porcelain dst master:refs/heads/test >act &&\n            test_cmp exp act\n    \n    Initialized empty Git repository in /var/ram/git-stress/root-13/trash directory.t5504-fetch-receive-strict/dst/.git/\n    remote: fatal: object of unexpected type        \n    error: failed to push some refs to 'dst'\n    --- exp 2017-01-07 08:44:24.465771756 +0000\n    +++ act 2017-01-07 08:44:24.493771755 +0000\n    @@ -1,2 +0,0 @@\n    -To dst\n    -!      refs/heads/master:refs/heads/test       [remote rejected] (unpacker error)\n    not ok 9 - push with transfer.fsckobjects\n\nSo it looks like we correctly fail the push, but the expected porcelain\noutput is missing. I'm _guessing_ what happens is that the local\ngit-push sees SIGPIPE writing to the remote side, and dies before it\ngets a chance to write the message.\n\nI'm not sure if this is something we should be fixing, or if the test is\nsimply a bit flaky (and we should work around it).\n\n-Peff\n"}]}