From mboxrd@z Thu Jan 1 00:00:00 1970 Delivered-To: chneukirchen@gmail.com Received: by 10.103.181.8 with SMTP id i8cs343067mup; Mon, 8 Mar 2010 09:24:59 -0800 (PST) Received-SPF: pass (google.com: domain of 36TKVSwYKCvwlsrkpmtlywmsr.rpvego-hizipksskpikvsytw.gsq@groups.bounces.google.com designates 10.101.179.37 as permitted sender) client-ip=10.101.179.37; Authentication-Results: mr.google.com; spf=pass (google.com: domain of 36TKVSwYKCvwlsrkpmtlywmsr.rpvego-hizipksskpikvsytw.gsq@groups.bounces.google.com designates 10.101.179.37 as permitted sender) smtp.mail=36TKVSwYKCvwlsrkpmtlywmsr.rpvego-hizipksskpikvsytw.gsq@groups.bounces.google.com; dkim=pass header.i=36TKVSwYKCvwlsrkpmtlywmsr.rpvego-hizipksskpikvsytw.gsq@groups.bounces.google.com Received: from mr.google.com ([10.101.179.37]) by 10.101.179.37 with SMTP id g37mr1987220anp.45.1268069098625 (num_hops = 1); Mon, 08 Mar 2010 09:24:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=beta; h=domainkey-signature:received:x-beenthere:received:received:received :received:received-spf:received:mime-version:received:date :in-reply-to:x-ip:references:user-agent:x-http-useragent:message-id :subject:from:to:x-original-authentication-results:x-original-sender :reply-to:precedence:mailing-list:list-id:list-post:list-help :list-archive:x-thread-url:x-message-url:sender:list-subscribe :list-unsubscribe:content-type:content-transfer-encoding; bh=t9TGwkgCRbYI5oNfwpXFWm9/EcnFKSCtq9y52igKS8M=; b=Qn8W56BjAPFMMAVW4q68c/mS4QVJoOqZ/4BLsgSNklBT530yULFNTVpEpCHjF/CxJs WKBhVsfA9dpakv7HG6X0udG8eAOs9WjQKMML/Ybd7C7Y62IDAYF8gDQ/3E+mLoGpjiNJ oMnu109YklkZefiiD4wIB/GFE0LDLl2qe6qHo= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlegroups.com; s=beta; h=x-beenthere:received-spf:mime-version:date:in-reply-to:x-ip :references:user-agent:x-http-useragent:message-id:subject:from:to :x-original-authentication-results:x-original-sender:reply-to :precedence:mailing-list:list-id:list-post:list-help:list-archive :x-thread-url:x-message-url:sender:list-subscribe:list-unsubscribe :content-type:content-transfer-encoding; b=JC2ewPfcUQ3P2AvleSKv4feC6lfoQcU9SlfIPJvx5BipGvQyOo4a9WHHlfPApAI2wO Tlqy777bRuIC79sNl6u1dLOAHOu2WTtjTm0IJ2oyyTQ2HHMyLibiDGjQ0VuJbAiTjCfR iBrZiFAnufO4q+Q+xYFVoHk0zknfYtkVG4CTw= Received: by 10.101.179.37 with SMTP id g37mr148543anp.45.1268069097377; Mon, 08 Mar 2010 09:24:57 -0800 (PST) X-BeenThere: rack-devel@googlegroups.com Received: by 10.101.146.35 with SMTP id y35ls1625005ann.7.p; Mon, 08 Mar 2010 09:24:55 -0800 (PST) Received: by 10.101.182.17 with SMTP id j17mr4921397anp.25.1268069095100; Mon, 08 Mar 2010 09:24:55 -0800 (PST) Received: by 10.101.182.17 with SMTP id j17mr4921395anp.25.1268069095072; Mon, 08 Mar 2010 09:24:55 -0800 (PST) Return-Path: Received: from mail-yx0-f141.google.com (mail-yx0-f141.google.com [209.85.210.141]) by gmr-mx.google.com with ESMTP id 19si817784ywh.0.2010.03.08.09.24.54; Mon, 08 Mar 2010 09:24:54 -0800 (PST) Received-SPF: pass (google.com: domain of hongli@phusion.nl designates 209.85.210.141 as permitted sender) client-ip=209.85.210.141; Received: by mail-yx0-f141.google.com with SMTP id 5so2056381yxe.11 for ; Mon, 08 Mar 2010 09:24:54 -0800 (PST) MIME-Version: 1.0 Received: by 10.101.131.36 with SMTP id i36mr147900ann.32.1268069094671; Mon, 08 Mar 2010 09:24:54 -0800 (PST) Date: Mon, 8 Mar 2010 09:24:54 -0800 (PST) In-Reply-To: <910BFBA2-7FD4-4985-99CC-A1764EB92179@gmail.com> X-IP: 77.250.47.10 References: <20100306075548.GB6474@dcvr.yhbt.net> <44f3f951-889e-45ec-ae46-40a371329a9e@e1g2000yqh.googlegroups.com> <20100307235337.GA15381@dcvr.yhbt.net> <927006e5-332c-4e59-aca6-4963bdcbea2a@q16g2000yqq.googlegroups.com> <910BFBA2-7FD4-4985-99CC-A1764EB92179@gmail.com> User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6,gzip(gfe),gzip(gfe) Message-ID: Subject: Re: Not cleaning up tempfiles for multipart? From: Hongli Lai To: Rack Development X-Original-Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of hongli@phusion.nl designates 209.85.210.141 as permitted sender) smtp.mail=hongli@phusion.nl X-Original-Sender: hongli@phusion.nl Reply-To: rack-devel@googlegroups.com Precedence: list Mailing-list: list rack-devel@googlegroups.com; contact rack-devel+owners@googlegroups.com List-ID: List-Post: , List-Help: , List-Archive: X-Thread-Url: http://groups.google.com/group/rack-devel/t/6eb2bc7a1f8c072c X-Message-Url: http://groups.google.com/group/rack-devel/msg/505f2faed02052a9 Sender: rack-devel@googlegroups.com List-Subscribe: , List-Unsubscribe: , Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On Mar 8, 3:42=A0pm, James Tucker wrote: > Just to be clear, I don't disagree at all that this needs to be fixed. I = think handlers/servers should close any tempfiles they create, and the requ= irement for middleware should be the same. Glad we're on the same page. :) Phusion Passenger does clean up its own tempfiles. As for the link you posted, I think that's for cleaning up the rack.input buffer file, not multipart files. Charles Nutter: > I don't think it should be specified behavior that a tempfile *ever* > exists on disk. The mechanism of temporary storage for a large > incoming post should be a black box. Consider systems that won't > actually have a writable filesystem, like GAE; there, the "tempfile" > data would be stored in memory or in BigTable. Agreed. However I think it should be *possible* to access the on-disk file directly as an optimization for apps that need it, they just musn't rely on it to be available. For example if your app deals with 2 GB file uploads then you really want to avoid that extra copy when storing the file upload in a storage location on the same filesystem, whenever possible.