git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tay Ray Chuan <rctay89@gmail.com>
To: "Martin Storsjö" <martin@martin.st>
Cc: "Shawn O. Pearce" <spearce@spearce.org>,
	git@vger.kernel.org, Nicholas Miell <nmiell@gmail.com>,
	gsky51@gmail.com, Clemens Buchacher <drizzd@aon.at>,
	Mark Lodato <lodatom@gmail.com>,
	Johannes Schindelin <Johannes.Schindelin@gmx.de>
Subject: Re: [PATCH/RFC] Allow curl to rewind the RPC read buffer at any time
Date: Wed, 2 Dec 2009 11:15:15 +0800	[thread overview]
Message-ID: <be6fef0d0912011915u78945c77x29880da3f709a912@mail.gmail.com> (raw)
In-Reply-To: <alpine.DEB.2.00.0912011852030.5582@cone.home.martin.st>

Hi,

On Wed, Dec 2, 2009 at 12:59 AM, Martin Storsjö <martin@martin.st> wrote:
> On Tue, 1 Dec 2009, Shawn O. Pearce wrote:
>> The *correct* way to support an arbitrary rewind is to modify the
>> outgoing channel from remote-curl to its protocol engine (client.in
>> within the rpc_service method) to somehow request the protocol engine
>> (aka git-send-pack or git-fetch-pack) to stop and regenerate the
>> current request.
>
> That's a good idea!
>
>> Another approach would be to modify http-backend (and the protocol)
>> to support an "auth ping" request prior to spooling out the entire
>> payload if its more than an http.postBuffer size.  Basically we
>> do what the "Expect: 100-continue" protocol is supposed to do,
>> but in the application layer rather than the HTTP/1.1 layer, so
>> our CGI actually gets invoked.
>
> That's also quite a good idea, especially if it would be done in a way so
> that it's certain that the same curl session will be reused, instead of
> getting a potentially new curl session when using get_active_slot().

I think restarting the read by killing the protocol engine/client and
starting again would be the easier of the two.

Not just that, it would be neater than storing everything that the
protocol engine has spewed out, like Martin's patch does.

-- 
Cheers,
Ray Chuan

  reply	other threads:[~2009-12-02  3:15 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-02 17:28 HTTP NTLM Authentication gsky
2009-10-02 19:04 ` [PATCH] Use the best HTTP authentication method supported by the server Nicholas Miell
2009-11-27 15:41 ` [PATCH 0/2] http: allow multi-pass authentication Tay Ray Chuan
2009-04-14 21:56   ` [PATCH v2] Add an option for using any HTTP authentication scheme, not only basic Martin Storsjö
2009-04-14 20:52     ` [PATCH] " Martin Storsjö
2009-04-14 21:08       ` Johannes Schindelin
2009-04-14 21:15         ` Martin Storsjö
2009-04-14 21:42           ` Johannes Schindelin
2009-12-01 10:28   ` [PATCH 0/2] http: allow multi-pass authentication Martin Storsjö
2009-12-01 10:33     ` [PATCH/RFC] Allow curl to rewind the RPC read buffer Martin Storsjö
2009-12-01 16:01       ` Shawn O. Pearce
2009-12-01 16:12         ` Tay Ray Chuan
2009-12-01 16:16           ` Shawn O. Pearce
2009-12-01 16:51         ` Martin Storsjö
2009-12-01 17:49       ` Junio C Hamano
2009-12-02  2:32         ` Tay Ray Chuan
2009-12-02  7:45           ` Martin Storsjö
2009-12-01 10:37     ` [PATCH/RFC] Allow curl to rewind the RPC read buffer at any time Martin Storsjö
2009-12-01 16:14       ` Shawn O. Pearce
2009-12-01 16:59         ` Martin Storsjö
2009-12-02  3:15           ` Tay Ray Chuan [this message]
2009-12-01 18:18         ` Daniel Stenberg
2009-12-02  2:03           ` Tay Ray Chuan
2009-12-02  9:19             ` Daniel Stenberg
2009-12-02  9:32               ` Martin Storsjö
2009-12-02 10:04                 ` Daniel Stenberg
2009-11-27 15:42 ` [PATCH 1/2] http: maintain curl sessions Tay Ray Chuan
2009-11-27 15:43 ` [PATCH 2/2] Add an option for using any HTTP authentication scheme, not only basic Tay Ray Chuan

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=be6fef0d0912011915u78945c77x29880da3f709a912@mail.gmail.com \
    --to=rctay89@gmail.com \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=drizzd@aon.at \
    --cc=git@vger.kernel.org \
    --cc=gsky51@gmail.com \
    --cc=lodatom@gmail.com \
    --cc=martin@martin.st \
    --cc=nmiell@gmail.com \
    --cc=spearce@spearce.org \
    /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 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 NNTP newsgroup(s).