Re: Resumable Uploads

Yoav Nir <ynir@checkpoint.com> Sat, 20 April 2013 19:44 UTC

Return-Path: <ietf-http-wg-request@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7147221F84F9 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Sat, 20 Apr 2013 12:44:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.448
X-Spam-Level:
X-Spam-Status: No, score=-10.448 tagged_above=-999 required=5 tests=[AWL=-0.150, BAYES_00=-2.599, HTML_MESSAGE=0.001, MIME_8BIT_HEADER=0.3, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9dBjRt+9lUeH for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Sat, 20 Apr 2013 12:44:19 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id A347521F86F2 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Sat, 20 Apr 2013 12:44:19 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1UTdhi-0005Z1-Md for ietf-http-wg-dist@listhub.w3.org; Sat, 20 Apr 2013 19:44:10 +0000
Resent-Date: Sat, 20 Apr 2013 19:44:10 +0000
Resent-Message-Id: <E1UTdhi-0005Z1-Md@frink.w3.org>
Received: from lisa.w3.org ([128.30.52.41]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <ynir@checkpoint.com>) id 1UTdhe-0005YH-VU for ietf-http-wg@listhub.w3.org; Sat, 20 Apr 2013 19:44:07 +0000
Received: from smtp.checkpoint.com ([194.29.34.68]) by lisa.w3.org with esmtp (Exim 4.72) (envelope-from <ynir@checkpoint.com>) id 1UTdhd-0002gZ-RW for ietf-http-wg@w3.org; Sat, 20 Apr 2013 19:44:06 +0000
Received: from DAG-EX10.ad.checkpoint.com ([194.29.34.150]) by smtp.checkpoint.com (8.13.8/8.13.8) with ESMTP id r3KJhZ3k021971; Sat, 20 Apr 2013 22:43:35 +0300
X-CheckPoint: {5172EF34-0-1B221DC2-1FFFF}
Received: from IL-EX10.ad.checkpoint.com ([169.254.2.54]) by DAG-EX10.ad.checkpoint.com ([169.254.3.48]) with mapi id 14.02.0342.003; Sat, 20 Apr 2013 22:43:34 +0300
From: Yoav Nir <ynir@checkpoint.com>
To: =?iso-8859-1?Q?Felix_Geisend=F6rfer?= <felix@transloadit.com>
CC: Mark Nottingham <mnot@mnot.net>, HTTP Working Group <ietf-http-wg@w3.org>
Thread-Topic: Resumable Uploads
Thread-Index: AQHOPFuQpYo0CfdL1USkJ2rjQnWqi5jebWyAgAAqOICAALwRAA==
Date: Sat, 20 Apr 2013 19:43:34 +0000
Message-ID: <2FD45C0A-1A7C-483B-B8E4-5F300B3EDA66@checkpoint.com>
References: <CADZbJ9dYFGyrceh03M3B0KdKto7160Dis_geh9um0BhVe1re0g@mail.gmail.com> <EA846138-6537-4709-AC44-149873716E29@mnot.net> <CADZbJ9f4wtaFQEsM_wQn-GaTz+fTKZNyfQk6hXG5OL=Lpkhpcw@mail.gmail.com>
In-Reply-To: <CADZbJ9f4wtaFQEsM_wQn-GaTz+fTKZNyfQk6hXG5OL=Lpkhpcw@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [172.31.21.134]
x-kse-antivirus-interceptor-info: scan successful
x-kse-antivirus-info: Clean
Content-Type: multipart/alternative; boundary="_000_2FD45C0A1A7C483BB8E45F300B3EDA66checkpointcom_"
MIME-Version: 1.0
Received-SPF: permerror client-ip=194.29.34.68; envelope-from=ynir@checkpoint.com; helo=smtp.checkpoint.com
X-W3C-Hub-Spam-Status: No, score=-6.3
X-W3C-Hub-Spam-Report: AWL=-0.599, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-0.702
X-W3C-Scan-Sig: lisa.w3.org 1UTdhd-0002gZ-RW c330f20c6bd2093d364e5c2e5daf13e4
X-Original-To: ietf-http-wg@w3.org
Subject: Re: Resumable Uploads
Archived-At: <http://www.w3.org/mid/2FD45C0A-1A7C-483B-B8E4-5F300B3EDA66@checkpoint.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/17432
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

On Apr 20, 2013, at 11:30 AM, Felix Geisendörfer <felix@transloadit.com<mailto:felix@transloadit.com>> wrote:

On Sat, Apr 20, 2013 at 7:59 AM, Mark Nottingham <mnot@mnot.net<mailto:mnot@mnot.net>> wrote:
Agreed, except a new PATCH format that's range-friendly would be necessary. That's not a huge undertaking, because it could reuse at least some of the existing syntax.

IMO the simplest solution would be an "Offset" header that simply gives the start offset where the data should be applied. The end offset is implicit through the message length.

How does the server know when the whole thing has been uploaded?  Wouldn't we need some kind of "total-length" header, perhaps in the initial PUT?

Or are we assuming that the initial PUT is trying to upload everything, and only failure leads to sending the PATCH?

Yoav