* Problem with submodule merge
@ 2011-09-16 12:48 Nicolas Morey-Chaisemartin
2011-09-16 14:57 ` Heiko Voigt
0 siblings, 1 reply; 3+ messages in thread
From: Nicolas Morey-Chaisemartin @ 2011-09-16 12:48 UTC (permalink / raw)
To: git
Hi,
We have meet an issue few times at work with submodule merge.
I'm running git 1.7.7-rc1 build from master on FC15 x86_64 but I've seen the issue on other ditro with older (stable) versions
I still haven't figured out exactly when it happends but here are the symptoms:
1) I commited some updates for a submodule in our integration repo.
2) I pulled a remote branch of the integration repo which had an update on the same submodule (but different SHAs)
3) When the merge driver try to find a following commit for the submodule, I get some (sometimes many) error messages about refs that point to invalid objects:
[nmorey@sat:SigmaCToolchain (user/nmorey/dev/0.3.0 *%>)]$ git merge origin/prerelease/0.3-0
error: refs/heads/user/nmorey/master does not point to a valid object!
error: refs/remotes/origin/dev/cpp does not point to a valid object!
error: refs/remotes/origin/dev/scuk does not point to a valid object!
error: refs/remotes/origin/dev/sys_agents does not point to a valid object!
error: refs/remotes/origin/user/bbodin/cea does not point to a valid object!
error: refs/remotes/origin/user/borgogoz/master does not point to a valid object!
warning: Failed to merge submodule db (merge following commits not found)
Auto-merging db
CONFLICT (submodule): Merge conflict in db
Automatic merge failed; fix conflicts and then commit the result.
I checked and the object really exists in the submodule but is in a pack.
>From checking the strace, git looks for a the object in db/.git/objects/... whch does not exists
And from what I could figure it, the issue seems to be coming from find_pack_entry which does not return 1 so git goes looking for loose object
and cannot find any (as expected).
This is not a big issue as it just outputs errors about refs and does not block the user but it gets quite scary when there are a few hundreds of them !
I kept a tarball of the repo so I can provide more info/logs/trace if needed.
Nicolas
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Problem with submodule merge
2011-09-16 12:48 Problem with submodule merge Nicolas Morey-Chaisemartin
@ 2011-09-16 14:57 ` Heiko Voigt
2011-09-19 7:55 ` Nicolas Morey-Chaisemartin
0 siblings, 1 reply; 3+ messages in thread
From: Heiko Voigt @ 2011-09-16 14:57 UTC (permalink / raw)
To: Nicolas Morey-Chaisemartin; +Cc: git
Hi,
this looks like you have hit a codepath where the submodules object
database is not added to the object database. I am not sure why.
Could you try my patch that moves the merge search into a forked process:
3dcb369b allow multiple calls to submodule merge search for the same path
That should solve the issue as a side effect. Its currently in Junio's
pu branch.
Cheers Heiko
On Fri, Sep 16, 2011 at 02:48:02PM +0200, Nicolas Morey-Chaisemartin wrote:
> Hi,
>
> We have meet an issue few times at work with submodule merge.
> I'm running git 1.7.7-rc1 build from master on FC15 x86_64 but I've seen the issue on other ditro with older (stable) versions
>
> I still haven't figured out exactly when it happends but here are the symptoms:
>
> 1) I commited some updates for a submodule in our integration repo.
> 2) I pulled a remote branch of the integration repo which had an update on the same submodule (but different SHAs)
> 3) When the merge driver try to find a following commit for the submodule, I get some (sometimes many) error messages about refs that point to invalid objects:
>
> [nmorey@sat:SigmaCToolchain (user/nmorey/dev/0.3.0 *%>)]$ git merge origin/prerelease/0.3-0
> error: refs/heads/user/nmorey/master does not point to a valid object!
> error: refs/remotes/origin/dev/cpp does not point to a valid object!
> error: refs/remotes/origin/dev/scuk does not point to a valid object!
> error: refs/remotes/origin/dev/sys_agents does not point to a valid object!
> error: refs/remotes/origin/user/bbodin/cea does not point to a valid object!
> error: refs/remotes/origin/user/borgogoz/master does not point to a valid object!
> warning: Failed to merge submodule db (merge following commits not found)
> Auto-merging db
> CONFLICT (submodule): Merge conflict in db
> Automatic merge failed; fix conflicts and then commit the result.
>
>
> I checked and the object really exists in the submodule but is in a pack.
>
> >From checking the strace, git looks for a the object in db/.git/objects/... whch does not exists
> And from what I could figure it, the issue seems to be coming from find_pack_entry which does not return 1 so git goes looking for loose object
> and cannot find any (as expected).
> This is not a big issue as it just outputs errors about refs and does not block the user but it gets quite scary when there are a few hundreds of them !
>
>
> I kept a tarball of the repo so I can provide more info/logs/trace if needed.
>
> Nicolas
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Problem with submodule merge
2011-09-16 14:57 ` Heiko Voigt
@ 2011-09-19 7:55 ` Nicolas Morey-Chaisemartin
0 siblings, 0 replies; 3+ messages in thread
From: Nicolas Morey-Chaisemartin @ 2011-09-19 7:55 UTC (permalink / raw)
To: Heiko Voigt; +Cc: git
Hi,
You're right, this fixes the issue:
$ git merge origin/prerelease/0.3-0
warning: Failed to merge submodule db (merge following commits not found)
Auto-merging db
CONFLICT (submodule): Merge conflict in db
Automatic merge failed; fix conflicts and then commit the result.
Thanks for the help
Nicolas
On 09/16/2011 04:57 PM, Heiko Voigt wrote:
> Hi,
>
> this looks like you have hit a codepath where the submodules object
> database is not added to the object database. I am not sure why.
>
> Could you try my patch that moves the merge search into a forked process:
>
> 3dcb369b allow multiple calls to submodule merge search for the same path
>
> That should solve the issue as a side effect. Its currently in Junio's
> pu branch.
>
> Cheers Heiko
>
> On Fri, Sep 16, 2011 at 02:48:02PM +0200, Nicolas Morey-Chaisemartin wrote:
>> Hi,
>>
>> We have meet an issue few times at work with submodule merge.
>> I'm running git 1.7.7-rc1 build from master on FC15 x86_64 but I've seen the issue on other ditro with older (stable) versions
>>
>> I still haven't figured out exactly when it happends but here are the symptoms:
>>
>> 1) I commited some updates for a submodule in our integration repo.
>> 2) I pulled a remote branch of the integration repo which had an update on the same submodule (but different SHAs)
>> 3) When the merge driver try to find a following commit for the submodule, I get some (sometimes many) error messages about refs that point to invalid objects:
>>
>> [nmorey@sat:SigmaCToolchain (user/nmorey/dev/0.3.0 *%>)]$ git merge origin/prerelease/0.3-0
>> error: refs/heads/user/nmorey/master does not point to a valid object!
>> error: refs/remotes/origin/dev/cpp does not point to a valid object!
>> error: refs/remotes/origin/dev/scuk does not point to a valid object!
>> error: refs/remotes/origin/dev/sys_agents does not point to a valid object!
>> error: refs/remotes/origin/user/bbodin/cea does not point to a valid object!
>> error: refs/remotes/origin/user/borgogoz/master does not point to a valid object!
>> warning: Failed to merge submodule db (merge following commits not found)
>> Auto-merging db
>> CONFLICT (submodule): Merge conflict in db
>> Automatic merge failed; fix conflicts and then commit the result.
>>
>>
>> I checked and the object really exists in the submodule but is in a pack.
>>
>> >From checking the strace, git looks for a the object in db/.git/objects/... whch does not exists
>> And from what I could figure it, the issue seems to be coming from find_pack_entry which does not return 1 so git goes looking for loose object
>> and cannot find any (as expected).
>> This is not a big issue as it just outputs errors about refs and does not block the user but it gets quite scary when there are a few hundreds of them !
>>
>>
>> I kept a tarball of the repo so I can provide more info/logs/trace if needed.
>>
>> Nicolas
>> --
>> To unsubscribe from this list: send the line "unsubscribe git" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2011-09-19 7:55 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-09-16 12:48 Problem with submodule merge Nicolas Morey-Chaisemartin
2011-09-16 14:57 ` Heiko Voigt
2011-09-19 7:55 ` Nicolas Morey-Chaisemartin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).