{"thread":{"id":"26758","subject":"[BUG] merge-recursive triggered \"BUG\"","startedAt":"2011-03-17T00:39:07Z","lastAt":"2011-05-20T13:00:41Z","messageCount":9,"participants":["Junio C Hamano","Elijah Newren","Jay Soffian"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"163526","messageId":"7v4o7260no.fsf@alter.siamese.dyndns.org","threadId":"26758","inReplyTo":null,"subject":"[BUG] merge-recursive triggered \"BUG\"","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2011-03-17T00:39:07Z","receivedAt":"2011-03-17T00:39:07Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"As a part of my today's merge, I used 'next' that contains b2c8c0a\n(merge-recursive: When we detect we can skip an update, actually skip it,\n2011-02-28) to merge 'maint' into 'master' to propagate older releases up.\n\nIt triggered a \"BUG\" per merged path, and I bisected this breakage down to\nthe said commit. Luckily 'master' is not contaminated with the breakage,\nso I used it to finish today's work.\n\nWhen I push out the result from today, you can reproduce it with\n\n    git checkout 0631623 ;# master to acquire changes from maint\n    git merge [-s recursive] fbcda3c\n\nI suspect that the new codepath introduced by b2c8c0a needs to pay\nattention to the merge depth (for example, does it make any sense at all\nto run lstat() when you are doing recursive common parent synthesis?), but\nI didn't dig into it.\n\nThe command fails with this output:\n\nerror: addinfo_cache failed for path 'builtin/add.c'\nerror: addinfo_cache failed for path 'builtin/apply.c'\nerror: addinfo_cache failed for path 'builtin/branch.c'\nerror: addinfo_cache failed for path 'builtin/checkout.c'\nerror: addinfo_cache failed for path 'builtin/commit.c'\nerror: addinfo_cache failed for path 'builtin/config.c'\nerror: addinfo_cache failed for path 'builtin/diff-files.c'\nerror: addinfo_cache failed for path 'builtin/diff.c'\nerror: addinfo_cache failed for path 'builtin/fast-export.c'\nerror: addinfo_cache failed for path 'builtin/grep.c'\nerror: addinfo_cache failed for path 'builtin/hash-object.c'\nerror: addinfo_cache failed for path 'builtin/init-db.c'\nerror: addinfo_cache failed for path 'builtin/log.c'\nerror: addinfo_cache failed for path 'builtin/merge.c'\nerror: addinfo_cache failed for path 'builtin/push.c'\nerror: addinfo_cache failed for path 'builtin/rerere.c'\nerror: addinfo_cache failed for path 'builtin/update-index.c'\nerror: addinfo_cache failed for path 't/t7810-grep.sh'\nBUG: There are unmerged index entries:\nBUG: 1 builtin/add.cBUG: 2 builtin/add.cBUG: 3 builtin/add.cBUG: 1 builtin/apply.cBUG: 2 builtin/apply.cBUG: 3 builtin/apply.cBUG: 1 builtin/branch.cBUG: 2 builtin/branch.cBUG: 3 builtin/branch.cBUG: 1 builtin/checkout.cBUG: 2 builtin/checkout.cBUG: 3 builtin/checkout.cBUG: 1 builtin/commit.cBUG: 2 builtin/commit.cBUG: 3 builtin/commit.cBUG: 1 builtin/config.cBUG: 2 builtin/config.cBUG: 3 builtin/config.cBUG: 1 builtin/diff-files.cBUG: 2 builtin/diff-files.cBUG: 3 builtin/diff-files.cBUG: 1 builtin/diff.cBUG: 2 builtin/diff.cBUG: 3 builtin/diff.cBUG: 1 builtin/fast-export.cBUG: 2 builtin/fast-export.cBUG: 3 builtin/fast-export.cBUG: 1 builtin/grep.cBUG: 2 builtin/grep.cBUG: 3 builtin/grep.cBUG: 1 builtin/hash-object.cBUG: 2 builtin/hash-object.cBUG: 3 builtin/hash-object.cBUG: 1 builtin/in\n it-db.cBUG: 2 builtin/init-db.cBUG: 3 builtin/init-db.cBUG: 1 builtin/log.cBUG: 2 builtin/log.cBUG: 3 builtin/log.cBUG: 1 builtin/merge.cBUG: 2 builtin/merge.cBUG: 3 builtin/merge.cBUG: 1 builtin/push.cBUG: 2 builtin/push.cBUG: 3 builtin/push.cBUG: 1 builtin/rerere.cBUG: 2 builtin/rerere.cBUG: 3 builtin/rerere.cBUG: 1 builtin/update-index.cBUG: 2 builtin/update-index.cBUG: 3 builtin/update-index.cBUG: 1 t/t7810-grep.shBUG: 2 t/t7810-grep.shBUG: 3 t/t7810-grep.shfatal: Bug in merge-recursive.c\n\n\nThanks.\n"},{"id":"163598","messageId":"7vpqpp1kww.fsf@alter.siamese.dyndns.org","threadId":"26758","inReplyTo":"7v4o7260no.fsf@alter.siamese.dyndns.org","subject":"Re: [BUG] merge-recursive triggered \"BUG\"","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2011-03-17T21:45:03Z","receivedAt":"2011-03-17T21:45:03Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"To illustrate the issue a bit better, with this patch applied on top of\nthe en/merge-recursive topic, we get the same errors:\n\n    Merging:\n    31734dd Renamed and modified\n    virtual merge-branch-1\n    found 1 common ancestor(s):\n    13277ae Common commmit\n    Skipped rename (merged same as existing)\n    error: addinfo_cache failed for path 'rename'\n    rename: unmerged (f00c965d8307308469e537302baa73048488f162)\n    rename: unmerged (3bb459b831ea471b9cd1cbb7c6d54a74251a711b)\n    rename: unmerged (f00c965d8307308469e537302baa73048488f162)\n    fatal: git write-tree failed to write a tree\n\nIn the test case, the merge machinery should notice that the result of the\nmerge structurally place the merge result in the path \"rename\", and the\ncontent of the resulting blob matches what our side already have, so we\nshould end up with a clean merge in the index (the index has the same blob\nas the HEAD at path \"rename\"), keeping the updated contents in the working\ntree.\n\n t/t6022-merge-rename.sh |    1 +\n 1 files changed, 1 insertions(+), 0 deletions(-)\n\ndiff --git a/t/t6022-merge-rename.sh b/t/t6022-merge-rename.sh\nindex 7d955c1..94b9c00 100755\n--- a/t/t6022-merge-rename.sh\n+++ b/t/t6022-merge-rename.sh\n@@ -730,6 +730,7 @@ test_expect_success 'setup avoid unnecessary update, normal rename' '\n \n test_expect_success 'avoid unnecessary update, normal rename' '\n \tgit checkout -q avoid-unnecessary-update-1^0 &&\n+\techo modified >>rename &&\n \ttest-chmtime =1000000000 rename &&\n \ttest-chmtime -v +0 rename >expect &&\n \tgit merge merge-branch-1 &&\n"},{"id":"163607","messageId":"7v1v250xnr.fsf_-_@alter.siamese.dyndns.org","threadId":"26758","inReplyTo":"7vpqpp1kww.fsf@alter.siamese.dyndns.org","subject":"[PATCH] merge-recursive: tweak magic band-aid","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2011-03-18T06:07:20Z","receivedAt":"2011-03-18T06:07:20Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Running checks against working tree (e.g. lstat()) and causing\nchanges to working tree (e.g. unlink()) while building a virtual\nancestor merge does not make any sense. Avoid doing so.\n\nThis is not a real fix; it is another magic band-aid on top of\nanother band-aid we placed earlier.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>\n---\n\n * This does not fix the \"even though we have local change in the working\n   tree, we do have a clean index entry for that path that happens to be\n   the one we renamed, and they didn't\" case this message responds to, it\n   does seem to fix the real-life breakage I saw when I merged 'maint' to\n   'master' yesterday, admittedly in a clean working tree.\n\n   merge-recursive is riddled with places that touch/inspect working tree\n   when it shouldn't, and it is beyond salvage without a major refactoring\n   in its current shape, so this magic band-aid should do for now.\n\n   Generally speaking, the only valid kinds of accesses a merge strategy\n   is allowed are:\n\n   (1) to compare the working tree file with our original index entry to\n       see if it has local changes. This should be done only for paths\n       that the index entry of the merge result is different from the\n       current one and the working tree file needs updating.  We need this\n       check because the merge must not lose such local changes when we\n       checkout the merge result. This check could use lstat(2) as part of\n       ce_match_stat() from read-cache.c; or\n\n   (2) to make sure there is no file that was not tracked in our original\n       index in the working tree at the path that the result of the merge\n       needs to create a file or a directory. We need this check because\n       the merge must not lose such an untracked file when we checkout the\n       merge result. This check would use lstat(2), as part of\n       checkout_entry() from entry.c; or\n\n   (3) when the result of the merge needs to create a file at a path and\n       the working tree has a directory at the path, to make sure that the\n       contents of the directory does not have any locally modified files\n       relative to our original index, or untracked-and-unignored files.\n       We need this check because the merge must be able to \"rm -r\" such a\n       directory safely in order to checkout the merge result.\n\n   As a special case, a file missing from the working tree is considered\n   unmodified for the purpose of (1). IOW, removal of a path from the\n   working tree without touching the index is considered a local change\n   that we are willing to lose during a merge. This is to support a\n   workflow (or a Porcelain script) that merges commits in a fresh\n   temporary directory, e.g. this sequence\n\n\tcd_to_toplevel\n\tmkdir tmp_merge\n        cd tmp_merge\n        export GIT_DIR=../.git\n        git read-tree pu ;# the branch may not be related to the current one\n        git merge-resolve $(git merge-base pu topic) -- pu topic\n\n   would start from an empty temporary merge directory, check out only the\n   paths that were involved in the merge, potentially leaving conflict\n   markers in them, and allows the user to resolve them, without touching\n   the real working tree or the current branch. The resulting index can be\n   written to a tree object to record the result of the merge.\n\n merge-recursive.c |    9 ++++++++-\n 1 files changed, 8 insertions(+), 1 deletions(-)\n\ndiff --git a/merge-recursive.c b/merge-recursive.c\nindex 847bc84..59482ff 100644\n--- a/merge-recursive.c\n+++ b/merge-recursive.c\n@@ -370,6 +370,13 @@ static void make_room_for_directories_of_df_conflicts(struct merge_options *o,\n \tstruct stage_data *last_e;\n \tint i;\n \n+\t/*\n+\t * Do not do any of this crazyness during the recursive; we don't\n+\t * even write anything to the working tree!\n+\t */\n+\tif (o->call_depth)\n+\t\treturn;\n+\n \tfor (i = 0; i < entries->nr; i++) {\n \t\tconst char *path = entries->items[i].string;\n \t\tint len = strlen(path);\n@@ -1274,7 +1281,7 @@ static int merge_content(struct merge_options *o,\n \n \tif (mfi.clean && !df_conflict_remains &&\n \t    sha_eq(mfi.sha, a_sha) && mfi.mode == a.mode &&\n-\t    lstat(path, &st) == 0) {\n+\t    !o->call_depth && !lstat(path, &st)) {\n \t\toutput(o, 3, \"Skipped %s (merged same as existing)\", path);\n \t\tadd_cacheinfo(mfi.mode, mfi.sha, path,\n \t\t\t      0 /*stage*/, 1 /*refresh*/, 0 /*options*/);\n-- \n1.7.4.1.494.g5ddab\n"},{"id":"163936","messageId":"AANLkTik8qaiu0NeM4oyuOvWXtw5QzamQxoyENAUsQxj3@mail.gmail.com","threadId":"26758","inReplyTo":"7v1v250xnr.fsf_-_@alter.siamese.dyndns.org","subject":"Re: [PATCH] merge-recursive: tweak magic band-aid","fromName":"Elijah Newren","fromEmail":"newren@gmail.com","sentAt":"2011-03-21T18:24:12Z","receivedAt":"2011-03-21T18:24:12Z","isPatch":true,"sender":{"key":"newren@gmail.com","avatar":"https://avatars.githubusercontent.com/u/5455730?v=4"},"body":"Hi,\n\nOn Fri, Mar 18, 2011 at 12:07 AM, Junio C Hamano <gitster@pobox.com> wrote:\n> Running checks against working tree (e.g. lstat()) and causing\n> changes to working tree (e.g. unlink()) while building a virtual\n> ancestor merge does not make any sense. Avoid doing so.\n>\n> This is not a real fix; it is another magic band-aid on top of\n> another band-aid we placed earlier.\n>\n> Signed-off-by: Junio C Hamano <gitster@pobox.com>\n\nSorry for not responding sooner; thanks for fixing this up, though.\nAlso, I have to apologize for having left a bunch of changes on my\nharddrive for several months; one of those changes includes the first\nhalf of your patch (which I should have remembered and not made the\nproblem worse with my more recent patch submission.)  I just never got\naround to cleaning up those changes and getting them submitted.  Maybe\nI should just send what I do have for now, and then send the cleaned\nup version when I get a good chunk of time in another month or two.\n\n>   merge-recursive is riddled with places that touch/inspect working tree\n>   when it shouldn't, and it is beyond salvage without a major refactoring\n>   in its current shape, so this magic band-aid should do for now.\n\nYeah, I agree this needs to be fixed up.  If no one else takes a look,\nI'll try to when I get back to my other changes.\n"},{"id":"168286","messageId":"BANLkTimNnRrJ_2UJUSWWd1QS=e0YH2p=_Q@mail.gmail.com","threadId":"26758","inReplyTo":"7v4o7260no.fsf@alter.siamese.dyndns.org","subject":"Re: [BUG] merge-recursive triggered \"BUG\"","fromName":"Jay Soffian","fromEmail":"jaysoffian@gmail.com","sentAt":"2011-05-20T01:14:53Z","receivedAt":"2011-05-20T01:14:53Z","isPatch":false,"sender":{"key":"jaysoffian@gmail.com","avatar":"https://avatars.githubusercontent.com/u/155970?v=4"},"body":"On Wed, Mar 16, 2011 at 8:39 PM, Junio C Hamano <gitster@pobox.com> wrote:\n> As a part of my today's merge, I used 'next' that contains b2c8c0a\n> (merge-recursive: When we detect we can skip an update, actually skip it,\n> 2011-02-28) to merge 'maint' into 'master' to propagate older releases up.\n>\n> It triggered a \"BUG\" per merged path, and I bisected this breakage down to\n> the said commit. Luckily 'master' is not contaminated with the breakage,\n> so I used it to finish today's work.\n\nI just ran into this. It's not in a repo I can share however. But, why\ndid b2c8c0a make it into master with this known issue?\n\nj.\n\n> When I push out the result from today, you can reproduce it with\n>\n>    git checkout 0631623 ;# master to acquire changes from maint\n>    git merge [-s recursive] fbcda3c\n>\n> I suspect that the new codepath introduced by b2c8c0a needs to pay\n> attention to the merge depth (for example, does it make any sense at all\n> to run lstat() when you are doing recursive common parent synthesis?), but\n> I didn't dig into it.\n>\n> The command fails with this output:\n>\n> error: addinfo_cache failed for path 'builtin/add.c'\n> error: addinfo_cache failed for path 'builtin/apply.c'\n> error: addinfo_cache failed for path 'builtin/branch.c'\n> error: addinfo_cache failed for path 'builtin/checkout.c'\n> error: addinfo_cache failed for path 'builtin/commit.c'\n> error: addinfo_cache failed for path 'builtin/config.c'\n> error: addinfo_cache failed for path 'builtin/diff-files.c'\n> error: addinfo_cache failed for path 'builtin/diff.c'\n> error: addinfo_cache failed for path 'builtin/fast-export.c'\n> error: addinfo_cache failed for path 'builtin/grep.c'\n> error: addinfo_cache failed for path 'builtin/hash-object.c'\n> error: addinfo_cache failed for path 'builtin/init-db.c'\n> error: addinfo_cache failed for path 'builtin/log.c'\n> error: addinfo_cache failed for path 'builtin/merge.c'\n> error: addinfo_cache failed for path 'builtin/push.c'\n> error: addinfo_cache failed for path 'builtin/rerere.c'\n> error: addinfo_cache failed for path 'builtin/update-index.c'\n> error: addinfo_cache failed for path 't/t7810-grep.sh'\n> BUG: There are unmerged index entries:\n> BUG: 1 builtin/add.cBUG: 2 builtin/add.cBUG: 3 builtin/add.cBUG: 1 builtin/apply.cBUG: 2 builtin/apply.cBUG: 3 builtin/apply.cBUG: 1 builtin/branch.cBUG: 2 builtin/branch.cBUG: 3 builtin/branch.cBUG: 1 builtin/checkout.cBUG: 2 builtin/checkout.cBUG: 3 builtin/checkout.cBUG: 1 builtin/commit.cBUG: 2 builtin/commit.cBUG: 3 builtin/commit.cBUG: 1 builtin/config.cBUG: 2 builtin/config.cBUG: 3 builtin/config.cBUG: 1 builtin/diff-files.cBUG: 2 builtin/diff-files.cBUG: 3 builtin/diff-files.cBUG: 1 builtin/diff.cBUG: 2 builtin/diff.cBUG: 3 builtin/diff.cBUG: 1 builtin/fast-export.cBUG: 2 builtin/fast-export.cBUG: 3 builtin/fast-export.cBUG: 1 builtin/grep.cBUG: 2 builtin/grep.cBUG: 3 builtin/grep.cBUG: 1 builtin/hash-object.cBUG: 2 builtin/hash-object.cBUG: 3 builtin/hash-object.cBUG: 1 builtin/init-db.cBUG: 2 builtin/init-db.cBUG: 3 builtin/init-db.cBUG: 1 builtin/log.cBUG: 2 builtin/log.cBUG: 3 builtin/log.cBUG: 1 builtin/merge.cBUG: 2 builtin/merge.cBUG: 3 builtin/merge.cBUG: 1 builtin/push.cBUG: 2 builtin/push.cBUG: 3 builtin/push.cBUG: 1 builtin/rerere.cBUG: 2 builtin/rerere.cBUG: 3 builtin/rerere.cBUG: 1 builtin/update-index.cBUG: 2 builtin/update-index.cBUG: 3 builtin/update-index.cBUG: 1 t/t7810-grep.shBUG: 2 t/t7810-grep.shBUG: 3 t/t7810-grep.shfatal: Bug in merge-recursive.c\n>\n>\n> Thanks.\n> --\n> To unsubscribe from this list: send the line \"unsubscribe git\" in\n> the body of a message to majordomo@vger.kernel.org\n> More majordomo info at  http://vger.kernel.org/majordomo-info.html\n>\n"},{"id":"168287","messageId":"BANLkTinG329ZBdf0TgnwA1m8Uo+6OZv-ow@mail.gmail.com","threadId":"26758","inReplyTo":"BANLkTimNnRrJ_2UJUSWWd1QS=e0YH2p=_Q@mail.gmail.com","subject":"Re: [BUG] merge-recursive triggered \"BUG\"","fromName":"Jay Soffian","fromEmail":"jaysoffian@gmail.com","sentAt":"2011-05-20T01:17:34Z","receivedAt":"2011-05-20T01:17:34Z","isPatch":false,"sender":{"key":"jaysoffian@gmail.com","avatar":"https://avatars.githubusercontent.com/u/155970?v=4"},"body":"On Thu, May 19, 2011 at 9:14 PM, Jay Soffian <jaysoffian@gmail.com> wrote:\n> I just ran into this. It's not in a repo I can share however. But, why\n> did b2c8c0a make it into master with this known issue?\n\nSorry, let me clarify. I got the:\n\n  error: addinfo_cache failed for path '...'\n\nline, but not the BUG. I can try to bisect git if this is a different issue.\n\nj.\n"},{"id":"168291","messageId":"7v1uzu5a70.fsf@alter.siamese.dyndns.org","threadId":"26758","inReplyTo":"BANLkTimNnRrJ_2UJUSWWd1QS=e0YH2p=_Q@mail.gmail.com","subject":"Re: [BUG] merge-recursive triggered \"BUG\"","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2011-05-20T03:21:07Z","receivedAt":"2011-05-20T03:21:07Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jay Soffian <jaysoffian@gmail.com> writes:\n\n> On Wed, Mar 16, 2011 at 8:39 PM, Junio C Hamano <gitster@pobox.com> wrote:\n>> As a part of my today's merge, I used 'next' that contains b2c8c0a\n>> (merge-recursive: When we detect we can skip an update, actually skip it,\n>> 2011-02-28) to merge 'maint' into 'master' to propagate older releases up.\n>>\n>> It triggered a \"BUG\" per merged path, and I bisected this breakage down to\n>> the said commit. Luckily 'master' is not contaminated with the breakage,\n>> so I used it to finish today's work.\n>\n> I just ran into this. It's not in a repo I can share however. But, why\n> did b2c8c0a make it into master with this known issue?\n\nBecause it was patched by another band-aid, and apparently it was not\nenough?\n\nYou are the second person to report the same regression, so let's revert\nthe merge of the entire topic, ac9666f (Merge branch 'en/merge-recursive',\n2011-04-28) from master for now.\n\nThanks.\n"},{"id":"168313","messageId":"BANLkTinqWzD=HXWArAOqvuAvzgOpynXPHg@mail.gmail.com","threadId":"26758","inReplyTo":"7v1uzu5a70.fsf@alter.siamese.dyndns.org","subject":"Re: [BUG] merge-recursive triggered \"BUG\"","fromName":"Jay Soffian","fromEmail":"jaysoffian@gmail.com","sentAt":"2011-05-20T12:29:13Z","receivedAt":"2011-05-20T12:29:13Z","isPatch":false,"sender":{"key":"jaysoffian@gmail.com","avatar":"https://avatars.githubusercontent.com/u/155970?v=4"},"body":"On Thu, May 19, 2011 at 11:21 PM, Junio C Hamano <gitster@pobox.com> wrote:\n>> I just ran into this. It's not in a repo I can share however. But, why\n>> did b2c8c0a make it into master with this known issue?\n>\n> Because it was patched by another band-aid, and apparently it was not\n> enough?\n\nOkay, I didn't see the band-aid, but I didn't look very hard.\n\n> You are the second person to report the same regression, so let's revert\n> the merge of the entire topic, ac9666f (Merge branch 'en/merge-recursive',\n> 2011-04-28) from master for now.\n\nI went to confirm the cause, did a merge with v1.7.4-rc0~102\n(106e3afa6f) and did not see the \"addinfo_cache failed\" message. But\nnow here's the strange part, I then switched back to master\n(11bc3e92bf), tried the merge again, and I'm still not seeing the\n\"addinfo_cache failed\" message.\n\nSo now I'm trying to figure out what v1.7.4-rc0~102 altered about the\nstate of my repo that I'm no longer seeing the message.\n\nHmfph.\n\nj.\n"},{"id":"168314","messageId":"BANLkTi=kwR6VLppu29u=2rkWiWvcRD34Zg@mail.gmail.com","threadId":"26758","inReplyTo":"BANLkTinqWzD=HXWArAOqvuAvzgOpynXPHg@mail.gmail.com","subject":"Re: [BUG] merge-recursive triggered \"BUG\"","fromName":"Jay Soffian","fromEmail":"jaysoffian@gmail.com","sentAt":"2011-05-20T13:00:41Z","receivedAt":"2011-05-20T13:00:41Z","isPatch":false,"sender":{"key":"jaysoffian@gmail.com","avatar":"https://avatars.githubusercontent.com/u/155970?v=4"},"body":"On Fri, May 20, 2011 at 8:29 AM, Jay Soffian <jaysoffian@gmail.com> wrote:\n> On Thu, May 19, 2011 at 11:21 PM, Junio C Hamano <gitster@pobox.com> wrote:\n>>> I just ran into this. It's not in a repo I can share however. But, why\n>>> did b2c8c0a make it into master with this known issue?\n>>\n>> Because it was patched by another band-aid, and apparently it was not\n>> enough?\n>\n> Okay, I didn't see the band-aid, but I didn't look very hard.\n>\n>> You are the second person to report the same regression, so let's revert\n>> the merge of the entire topic, ac9666f (Merge branch 'en/merge-recursive',\n>> 2011-04-28) from master for now.\n>\n> I went to confirm the cause, did a merge with v1.7.4-rc0~102\n> (106e3afa6f) and did not see the \"addinfo_cache failed\" message. But\n> now here's the strange part, I then switched back to master\n> (11bc3e92bf), tried the merge again, and I'm still not seeing the\n> \"addinfo_cache failed\" message.\n>\n> So now I'm trying to figure out what v1.7.4-rc0~102 altered about the\n> state of my repo that I'm no longer seeing the message.\n\nSorry, it's definitely that topic. I didn't realize you'd already\nreverted it from master. The bug occurs between when the topic was\nmerged and when it was reverted.\n\nThanks,\n\nj.\n"}]}