Re: [PATCH v2] upload-pack: ignore 'shallow' lines with unknown obj-ids

2013-05-02 Thread Junio C Hamano
Junio C Hamano  writes:

> Michael Heemskerk  writes:
>
>> When the client sends a 'shallow' line for an object that the server does
>> not have, the server currently dies with the error: "did not find object
>> ...
>>  Documentation/technical/pack-protocol.txt |  3 +--
>>  t/t5500-fetch-pack.sh | 13 +
>>  upload-pack.c |  2 +-
>>  3 files changed, 15 insertions(+), 3 deletions(-)
>
> Thanks.
>
> The previous one (without the test) is already in 'next' so I'll
> pick only the test part and queue it as an update to the series.
>
>> diff --git a/t/t5500-fetch-pack.sh b/t/t5500-fetch-pack.sh
>> index d574085..3f0ca10 100755
>> --- a/t/t5500-fetch-pack.sh
>> +++ b/t/t5500-fetch-pack.sh
>> @@ -373,6 +373,19 @@ test_expect_success 'clone shallow with packed refs' '
>>  test_cmp count8.expected count8.actual
>>  '
>>  
>> +test_expect_success 'fetch in shallow repo unreachable shallow objects' '
>> +(
>> +git clone --bare --branch B --single-branch "file://$(pwd)/." 
>> no-reflog &&
>> +git clone --depth 1 "file://$(pwd)/no-reflog" shallow9 &&
>> +cd no-reflog &&
>> +git tag -d TAGB1 TAGB2 &&
>> +git update-ref refs/heads/B B~~ &&
>> +git gc --prune=now &&
>> +cd ../shallow9 &&
>> +git fetch origin
>> +)
>> +'

It would also be good to make sure that shallow9 does not lose the
shallow history boundary that the origin does not know about after
this fetch, so I'll further squash this in.

 t/t5500-fetch-pack.sh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/t/t5500-fetch-pack.sh b/t/t5500-fetch-pack.sh
index 3f0ca10..6133d9e 100755
--- a/t/t5500-fetch-pack.sh
+++ b/t/t5500-fetch-pack.sh
@@ -382,7 +382,8 @@ test_expect_success 'fetch in shallow repo unreachable 
shallow objects' '
git update-ref refs/heads/B B~~ &&
git gc --prune=now &&
cd ../shallow9 &&
-   git fetch origin
+   git fetch origin &&
+   git fsck --no-dangling
)
 '
 
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v2] upload-pack: ignore 'shallow' lines with unknown obj-ids

2013-05-02 Thread Junio C Hamano
Michael Heemskerk  writes:

> When the client sends a 'shallow' line for an object that the server does
> not have, the server currently dies with the error: "did not find object
> ...
>  Documentation/technical/pack-protocol.txt |  3 +--
>  t/t5500-fetch-pack.sh | 13 +
>  upload-pack.c |  2 +-
>  3 files changed, 15 insertions(+), 3 deletions(-)

Thanks.

The previous one (without the test) is already in 'next' so I'll
pick only the test part and queue it as an update to the series.

> diff --git a/t/t5500-fetch-pack.sh b/t/t5500-fetch-pack.sh
> index d574085..3f0ca10 100755
> --- a/t/t5500-fetch-pack.sh
> +++ b/t/t5500-fetch-pack.sh
> @@ -373,6 +373,19 @@ test_expect_success 'clone shallow with packed refs' '
>   test_cmp count8.expected count8.actual
>  '
>  
> +test_expect_success 'fetch in shallow repo unreachable shallow objects' '
> + (
> + git clone --bare --branch B --single-branch "file://$(pwd)/." 
> no-reflog &&
> + git clone --depth 1 "file://$(pwd)/no-reflog" shallow9 &&
> + cd no-reflog &&
> + git tag -d TAGB1 TAGB2 &&
> + git update-ref refs/heads/B B~~ &&
> + git gc --prune=now &&
> + cd ../shallow9 &&
> + git fetch origin
> + )
> +'
> +
>  test_expect_success 'setup tests for the --stdin parameter' '
>   for head in C D E F
>   do
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html