Re: [PATCH v3 00/20] refs backend rebase on pu
- From
Ramsay Jones <ramsay@ramsayjones.plus.com>
- Date
- Feb 4, 2016, 01:54 UTC
- Message-ID
- <56B2AF64.5020502@ramsayjones.plus.com>
- In-Reply-To
- <1454548352.5545.2.camel@twopensource.com>
On 04/02/16 01:12, David Turner wrote:
Show 26 quoted lines
> On Wed, 2016-02-03 at 16:09 -0800, Junio C Hamano wrote: >> Junio C Hamano <gitster@pobox.com> writes: >> >>> David Turner <dturner@twopensource.com> writes: >>> >>>> Are there any more reviews on this? I do have some changes from >>>> this >>>> set, but they're pretty minor so I don't want to post a new one >>>> (unless >>>> folks would rather see those changes before reviewing). Let me >>>> know. >>> >>> Thanks for pinging. As this is a rather wide-ranging topic, it was >>> not practical to intergrate with the rest of the topics in flight >>> back then, but now it seems that this needs only one topic that >>> still is in flight. I'll queue this on top of a merge between >>> 'master' and the tip of 'sb/submodule-parallel-update' and include >>> in the daily integration cycle to make it easy for people to view >>> the changes in wider context as necessary. >> >> I've re-applied the patches to rebuild the topic; when merged to >> 'pu' it seemed to break some tests, but I didn't look too deeply >> into it. > > They were working for me as-of the time I sent them. I guess something > must have broken since. I'll rebase, test, and send a new series.
I didn't spend too long looking at it, but I think this interacts with Jeff's patch a2d5156c ("resolve_gitlink_ref: ignore non-repository paths", 22-01-2016) which introduces the new test in 't3000-ls-files-others.sh' which fails for me.
The change which Jeff made to resolve_gitlink_ref() is effectively side-stepped by the call to check_submodule_backend() in the new resolve_gitlink_ref(). (Jeff's change is now in the 'files' backend version of resolve_gitlink_ref()).
In the debugger, when the die() breakpoint is taken, the bt looks like:
(gdb) bt
#0 die (err=err@entry=0x57b38a "Invalid gitfile format: %s") at usage.c:99
#1 0x000000000050db64 in read_gitfile_gently (
path=0x7ee770 "not-a-submodule/.git",
return_error_code=return_error_code@entry=0x0) at setup.c:558
#2 0x00000000004dfce8 in do_submodule_path (buf=0x7fffffffd220,
path=0x7ee750 "not-a-submodule/", fmt=0x5771d0 "%s",
args=args@entry=0x7fffffffd138) at path.c:469
#3 0x00000000004e05c2 in strbuf_git_path_submodule (
buf=buf@entry=0x7fffffffd220, path=path@entry=0x7ee750 "not-a-submodule/",
fmt=fmt@entry=0x5771d0 "%s") at path.c:503
#4 0x00000000004edfdc in check_submodule_backend (
submodule=submodule@entry=0x7ee750 "not-a-submodule/") at refs.c:316
#5 0x00000000004f01c2 in resolve_gitlink_ref (
path=0x7ee750 "not-a-submodule/", refname=0x565040 "HEAD",
sha1=0x7fffffffd2a0 "\n") at refs.c:1407
#6 0x00000000004b0a07 in treat_directory (simplify=0x0, exclude=0, baselen=0,
len=16, dirname=0x7ee750 "not-a-submodule/", untracked=0x0,
dir=0x7fffffffdc10) at dir.c:1305
#7 treat_one_path (dir=dir@entry=0x7fffffffdc10,
untracked=untracked@entry=0x0, path=path@entry=0x7fffffffd330,
baselen=baselen@entry=0, simplify=simplify@entry=0x0, dtype=4,
de=de@entry=0x7eef60) at dir.c:1489
#8 0x00000000004b027e in treat_path (simplify=0x0, baselen=0,
path=0x7fffffffd330, cdir=0x7fffffffd350, untracked=0x0,
dir=0x7fffffffdc10) at dir.c:1550
#9 read_directory_recursive (dir=dir@entry=0x7fffffffdc10,
base=base@entry=0x54744a "", baselen=baselen@entry=0, untracked=0x0,
check_only=check_only@entry=0, simplify=simplify@entry=0x0) at dir.c:1697
#10 0x00000000004b0b67 in read_directory (dir=dir@entry=0x7fffffffdc10,
path=0x54744a "", len=len@entry=0,
pathspec=pathspec@entry=0x7c83c0 <pathspec>) at dir.c:2023
---Type <return> to continue, or q <return> to quit---Note that the error code return pointer is NULL in the call to read_gitfile_gently(). Also, note the call frames #4 and #5.
I have to go now ... Hope that helps.
ATB, Ramsay Jones