git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Johannes Schindelin <Johannes.Schindelin@gmx.de>
To: Junio C Hamano <gitster@pobox.com>
Cc: Lars Schneider <larsxschneider@gmail.com>,
	git@vger.kernel.org, peff@peff.net, bmwill@google.com
Subject: Re: What's cooking in git.git (Apr 2017, #04; Wed, 19)
Date: Fri, 21 Apr 2017 11:50:20 +0200 (CEST)	[thread overview]
Message-ID: <alpine.DEB.2.20.1704211135430.3480@virtualbox> (raw)
In-Reply-To: <xmqqbmrq8z4j.fsf@gitster.mtv.corp.google.com>

Hi Junio,

On Thu, 20 Apr 2017, Junio C Hamano wrote:

> Lars Schneider <larsxschneider@gmail.com> writes:
> 
> >> * bw/forking-and-threading (2017-04-19) 11 commits
> >> - run-command: block signals between fork and execve
> >> - run-command: add note about forking and threading
> >> - run-command: handle dup2 and close errors in child
> >> - run-command: eliminate calls to error handling functions in child
> >> - run-command: don't die in child when duping /dev/null
> >> - run-command: prepare child environment before forking
> >> - string-list: add string_list_remove function
> >> - run-command: use the async-signal-safe execv instead of execvp
> >> - run-command: prepare command before forking
> >> - t0061: run_command executes scripts without a #! line
> >> - t5550: use write_script to generate post-update hook
> >> 
> >> The "run-command" APIimplementation has been made more robust
> >> against dead-locking in a threaded environment.
> >> 
> >> Will merge to 'next'.
> >
> > There might be a problem on Windows with this (that's just a hunch, i can't test this right now):
> > https://travis-ci.org/git/git/jobs/223830474
> 
> Thanks for keeping an eye on Travis output. My eyes learned to
> ignore the Windows section as its failures often seem to be due to
> timing out.

Part of the reason is that you push out all of the branches in one go,
typically at the very end of your work day. The idea of Continuous
Integration is a little orthogonal to that style, suggesting to build &
test whenever new changes come into the integration branch.

As a consequence, my original setup was a little overloaded: the VM sat
idle most of the time, and when you pushed, it was overloaded.

To accommodate even that use case, I managed to pry away some resources
that should be mostly idle at the time you push, and that should be able
to run up to 4 builds in parallel (the number "4" is not really magic, it
is the number of integration branches of git.git).

Since that "let's aggregate everything and only push out the final result
at the end of the day" approach does not really allow the Continuous
Testing to identify problems associated with individual topic branches, I
have another job that bisects the breakages (with all associated problems
I reported earlier, as you apply some patches on top of really ancient
commits and bisect wants to test all merge bases first) because the
required time *definitely* would let Travis time out all the time. Those
bisect results are even less visible than the Travis results, see e.g.
https://github.com/git/git/commit/2e3a8b9035a#commitcomment-21836854.

Having said that, I do not think that it makes sense for you to change
your habits, as proper Continuous Integration (as opposed to a variation
of Continuous Testing that we use, really) would take a lot more of a
change than you are comfortable with: it would look a lot more Pull
Request centric than the current mailing list centered process.

Ciao,
Dscho

  reply	other threads:[~2017-04-21  9:50 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-20  5:37 What's cooking in git.git (Apr 2017, #04; Wed, 19) Junio C Hamano
2017-04-20  9:59 ` Duy Nguyen
2017-04-20 15:35   ` Jeff King
2017-04-20 22:51     ` Junio C Hamano
2017-04-20 22:46   ` Junio C Hamano
2017-04-20 15:32 ` Lars Schneider
2017-04-20 22:52   ` Junio C Hamano
     [not found] ` <D61D47BD-9750-4FB6-892E-013504E03738@gmail.com>
2017-04-20 13:24   ` Johannes Schindelin
2017-04-20 16:56     ` Brandon Williams
2017-04-20 23:18       ` Brandon Williams
2017-04-21  0:56         ` Junio C Hamano
2017-04-20 22:58   ` Junio C Hamano
2017-04-21  9:50     ` Johannes Schindelin [this message]
2017-04-21 12:29       ` Christian Couder
2017-04-22 11:48         ` Johannes Schindelin
2017-04-22 17:32           ` Christian Couder
2017-04-24 14:08             ` Johannes Schindelin
2017-04-22 13:37         ` Johannes Sixt
2017-04-24 14:24           ` Johannes Schindelin
2017-04-24 16:34             ` Philip Oakley
2017-04-25  2:17               ` Christian Couder
2017-04-25  2:00           ` Christian Couder
2017-04-25  5:51             ` Johannes Sixt
2017-04-25  6:52               ` Junio C Hamano
2017-04-25 18:26                 ` Johannes Sixt
2017-04-24  0:25       ` Junio C Hamano
2017-04-24 14:19         ` Johannes Schindelin
2017-04-24 15:18           ` Ævar Arnfjörð Bjarmason
2017-04-25  0:56             ` Junio C Hamano

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=alpine.DEB.2.20.1704211135430.3480@virtualbox \
    --to=johannes.schindelin@gmx.de \
    --cc=bmwill@google.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=larsxschneider@gmail.com \
    --cc=peff@peff.net \
    /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.
Code repositories for project(s) associated with this public 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).