git@vger.kernel.org list mirror (unofficial, one of many)
 help / color / mirror / code / Atom feed
From: Taylor Blau <me@ttaylorr.com>
To: Son Luong Ngoc <sluongng@gmail.com>
Cc: git@vger.kernel.org, Jeff.Hostetler@microsoft.com
Subject: Re: Git pull stuck when Trace2 target set to Unix Stream Socket
Date: Mon, 13 Apr 2020 10:00:51 -0600	[thread overview]
Message-ID: <20200413160051.GB59601@syl.local> (raw)
In-Reply-To: <CAL3xRKceuniEOq+PqN15FC4-mxsWJd4+e2fu1Ku9q_+8JmR9pw@mail.gmail.com>

On Mon, Apr 13, 2020 at 02:05:00PM +0200, Son Luong Ngoc wrote:
> Hey folks,
>
> I am trying to write a simple git trace2 event collector and I notice
> that when git doing git pull with trace events being sent to a unix
> stream socket, the entire operation halted.
>
> Reproduce as follow:
> ```
> cd git/git
> git config trace2.eventTarget af_unix:stream:/tmp/git_trace.sock
> git config trace2.eventBrief false
> (rm /tmp/git_trace.sock | ) &&  nc -lkU /tmp/git_trace.sock

I doubt that this is important (for a reason that I'll point out below),
but it looks like your invocation here is malformed with the trailing
pipe character.

Did you mean to redirect the output of rm away? If so, '2>&1 >/dev/null'
will do what you want.

> # In a different terminal
> git pull # Pull stuck and never complete
> ```

Odd. From my memory, trace2 will give up trying to connect to the socket
(disabling itself and optionally printing a warning) if 'socket(2)' or
'connect(2)' set the error bit. My guess above is that you don't have a
listening socket (because your shell is waiting for you to close the
'|'), so there's no connection to be made.

> This does not happen when you set eventBrief to true
> ```
> git config trace2.eventBrief true
> ```

Odd. What version of Git are you using? Your description makes it
sound like it may be a bug, so I'd be curious to hear Jeff's
interpretation of things, too.

> Worth to note that if eventTarget is a file instead of a socket,
> everything works fine.
>
> Cheers,
> Son Luong.

Thanks,
Taylor

  reply	other threads:[~2020-04-13 16:00 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-13 12:05 Son Luong Ngoc
2020-04-13 16:00 ` Taylor Blau [this message]
2020-04-13 17:19   ` Son Luong Ngoc
2020-04-13 17:23     ` Taylor Blau
2020-04-13 17:18 ` Jeff King
2020-04-13 18:42   ` Jeff Hostetler

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

  List information: http://vger.kernel.org/majordomo-info.html

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

  git send-email \
    --in-reply-to=20200413160051.GB59601@syl.local \
    --to=me@ttaylorr.com \
    --cc=Jeff.Hostetler@microsoft.com \
    --cc=git@vger.kernel.org \
    --cc=sluongng@gmail.com \
    --subject='Re: Git pull stuck when Trace2 target set to Unix Stream Socket' \
    /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

Code repositories for project(s) associated with this inbox:

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).