All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kousik Sanagavarapu <five231003@gmail.com>
To: jonathantanmy@gmail.com
Cc: git@vger.kernel.org, gitgitgadget@gmail.com
Subject: Re: [PATCH 1/2] fetch-pack: remove fetch_if_missing=0
Date: Mon, 20 Feb 2023 23:43:24 +0530	[thread overview]
Message-ID: <20230220181324.25116-1-five231003@gmail.com> (raw)
In-Reply-To: <20200507194354.33347-1-jonathantanmy@google.com>

So here, we are partial-cloning from a shallow remote and some
objects are not sent due to our clone filters. Let's say that
the shallow remote has a 5-commit history and we are cloning it
into another repository with a blob:none filter. The expected
behavior is cloning the 5 commits, with no blobs, except
for the HEAD.

When executing the above process, it leads to errors:

	fatal: the remote end hung up unexpectedly
	fatal: protocol error: bad pack header
	warning: Clone succeeded, but checkout failed
	You can inspect what was checked out with 'git status'
	and retry with 'git restore --source=HEAD :/'

I looked into it a bit and it seems that packet_read() is not
successful. I'm not really sure how packet reading fits into
the big picture but it looks like the buffer is not read
completely.

It is a similar case with "bad pack header" too. The function
read_pack_header() fails because the pack header was not fully read.

Also, is the shallow object not sent when cloning due to the partial
clone filter and hence a subsequent fetching is done to ask for this
object? If so, then will such a fetch counted as an args->update_shallow?

  parent reply	other threads:[~2023-02-20 18:13 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-20 19:54 [PATCH 0/2] [WIP] removed fetch_if_missing global Hariom Verma via GitGitGadget
2020-04-20 19:54 ` [PATCH 1/2] fetch-pack: remove fetch_if_missing=0 Hariom Verma via GitGitGadget
2020-05-07 13:17   ` Christian Couder
2020-05-07 15:02     ` Junio C Hamano
2020-05-09 17:48       ` Hariom verma
2020-05-09 17:40     ` Hariom verma
2020-05-07 19:43   ` Jonathan Tan
2020-05-09 18:00     ` Hariom verma
2023-02-20 18:13     ` Kousik Sanagavarapu [this message]
2023-02-22 18:19       ` Jonathan Tan
2023-02-22 17:45     ` Kousik Sanagavarapu
2020-04-20 19:54 ` [PATCH 2/2] index-pack: " Hariom Verma via GitGitGadget
2020-05-07 13:10 ` [PATCH 0/2] [WIP] removed fetch_if_missing global Christian Couder
2020-05-09 17:35   ` Hariom verma
2023-02-17 17:20 ` Kousik Sanagavarapu
2023-02-18 17:00   ` Christian Couder
2023-02-19  3:57     ` Kousik Sanagavarapu
2023-02-19  7:37       ` Christian Couder
2023-02-19 10:40   ` Hariom verma

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230220181324.25116-1-five231003@gmail.com \
    --to=five231003@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitgitgadget@gmail.com \
    --cc=jonathantanmy@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.