{"thread":{"id":"37423","subject":"Git Bug Report: bisect run failed to locate the right commit","startedAt":"2014-08-27T13:42:45Z","lastAt":"2014-08-27T14:17:26Z","messageCount":3,"participants":["李祐棠","Christian Couder","Jeff King"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"248395","messageId":"C40A01C66E914D4EB90E1B40564B0E56CBFE1C82@MBOX2-4.ntu.internal","threadId":"37423","inReplyTo":null,"subject":"Git Bug Report: bisect run failed to locate the right commit","fromName":"李祐棠","fromEmail":"r01942008@ntu.edu.tw","sentAt":"2014-08-27T13:42:45Z","receivedAt":"2014-08-27T13:42:45Z","isPatch":false,"sender":{"key":"r01942008@ntu.edu.tw","avatar":null},"body":"Dear Git developers:\n\nI just found a suspicious bug that might cause by git-bisect run. \n\nVersion:\nThe git version is 1.9.2, running on Archlinux 3.14.2\n\nThe step to produce the error:\nHere is the repository I participate: \nhttps://github.com/gawel/pyquery\n\nIt got a issue #74, that gives a wrong result in version 1.2.8\nand this is fixed in 1.2.9\n\nHere is the manual test script I use is \"manualscript.py\":\n\nI use git bisect manually, search from 1.2.9(bad) to 1.2.8(good), I locate the commit that fixes this issue. The running log is attached in this file(manual).\n\nHowever if I use the automatic script\ngit bisect run\nwith the script \"auto script\":\n\nIt will give a wrong answer, the log file is also attached(auto)\n\nI wonder there might be some bugs in \"bisect run\", that give the different result. The bisect run give the wrong result, and manually there is no error in bisect\n\nThe test step is a little complicated, and I have to compress the test script and result in tar since mail server think the test code as spam. it's very sorry to bother you.\n\nSincerely \nYodaLee \n\n20140827"},{"id":"248396","messageId":"CAP8UFD08sABDPwxfJMNHcU6CWdVfsVTKHSXvT4+Mxf5GPYvhyA@mail.gmail.com","threadId":"37423","inReplyTo":"C40A01C66E914D4EB90E1B40564B0E56CBFE1C82@MBOX2-4.ntu.internal","subject":"Re: Git Bug Report: bisect run failed to locate the right commit","fromName":"Christian Couder","fromEmail":"christian.couder@gmail.com","sentAt":"2014-08-27T14:15:46Z","receivedAt":"2014-08-27T14:15:46Z","isPatch":false,"sender":{"key":"christian.couder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/208954?v=4"},"body":"Hi,\n\nOn Wed, Aug 27, 2014 at 3:42 PM, 李祐棠 <r01942008@ntu.edu.tw> wrote:\n> Dear Git developers:\n>\n> I just found a suspicious bug that might cause by git-bisect run.\n>\n> Version:\n> The git version is 1.9.2, running on Archlinux 3.14.2\n>\n> The step to produce the error:\n> Here is the repository I participate:\n> https://github.com/gawel/pyquery\n>\n> It got a issue #74, that gives a wrong result in version 1.2.8\n> and this is fixed in 1.2.9\n>\n> Here is the manual test script I use is \"manualscript.py\":\n>\n> I use git bisect manually, search from 1.2.9(bad) to 1.2.8(good), I locate the commit that fixes this issue. The running log is attached in this file(manual).\n>\n> However if I use the automatic script\n> git bisect run\n> with the script \"auto script\":\n>\n> It will give a wrong answer, the log file is also attached(auto)\n\nYour \"manual\" log contains:\n\nBisecting: 0 revisions left to test after this (roughly 1 step)\n[300cd0822505a4bd308acd1520ff3ef0f20f8635] fixed issue #19\n$ ./manualscript.py\nFalse\nFalse\n\nWhile your \"auto\" log contains:\n\nBisecting: 0 revisions left to test after this (roughly 1 step)\n[300cd0822505a4bd308acd1520ff3ef0f20f8635] fixed issue #19\nrunning ./autoscript.py\nFalse\nTrue\n\nSo for the commit 300cd0822505a4bd308acd1520ff3ef0f20f8635 it looks\nlike your manualscript.py and your autoscript.py don't return the same\nresult.\n\nCould you check that by doing something like:\n\n$ git checkout -b testscripts 300cd0822505a4bd308acd1520ff3ef0f20f8635\n$ ./manualscript.py\n$ echo \"manualscript.py exit code: $?\"\n$ ./autoscript.py\n$ echo \"autoscript.py exit code: $?\"\n\n?\n\nBy the way you can get a better bisect log by running \"git bisect log\"\nafter your bisection.\n\nBest,\nChristian.\n"},{"id":"248397","messageId":"20140827141725.GA31879@peff.net","threadId":"37423","inReplyTo":"C40A01C66E914D4EB90E1B40564B0E56CBFE1C82@MBOX2-4.ntu.internal","subject":"Re: Git Bug Report: bisect run failed to locate the right commit","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2014-08-27T14:17:26Z","receivedAt":"2014-08-27T14:17:26Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Wed, Aug 27, 2014 at 01:42:45PM +0000, 李祐棠 wrote:\n\n> Here is the manual test script I use is \"manualscript.py\":\n> \n> I use git bisect manually, search from 1.2.9(bad) to 1.2.8(good), I\n> locate the commit that fixes this issue. The running log is attached\n> in this file(manual).\n> \n> However if I use the automatic script git bisect run with the script\n> \"auto script\":\n> \n> It will give a wrong answer, the log file is also attached(auto)\n\nWhen you get to 300cd08225, your manual bisect shows this as bad:\n\n  Bisecting: 0 revisions left to test after this (roughly 1 step)\n  [300cd0822505a4bd308acd1520ff3ef0f20f8635] fixed issue #19\n  $ ./manualscript.py \n  False\n  False\n  $ git bisect bad\n\nWhen you hit the same commit with your automatic test, the output from\nyour script is different:\n\n  Bisecting: 0 revisions left to test after this (roughly 1 step)\n  [300cd0822505a4bd308acd1520ff3ef0f20f8635] fixed issue #19\n  running ./autoscript.py\n  False\n  True\n\nwhich would yield \"git bisect good\" according to the simplified scripts\nyou sent. I suspect your problem is in the test script.\n\n-Peff\n"}]}