On Tue, 28 Nov 2006 14:20:06 -0600
[EMAIL PROTECTED] wrote:

> 
> On Nov 28, 2006, at 1:50 PM, Matt White wrote:
> 
> > Rogelio,
> >
> > It will arrive in Rails just like any other uploaded file... It  
> > will show up in params[:model][:file_field], or whatever you've  
> > named your input file field. Until you do something else with it,  
> > it only lives as a file in /tmp/. You need to move it somewhere  
> > else, though, because Rails will do away with it once the request  
> > is complete :)
> >
> > Something like:
> >
> > @file = params[:model][:file_field]
> > File.open("/path/to/[EMAIL PROTECTED]", "wb") { |file|  
> > file.write(@file.read) }

Matt, don't do this.  In fact, if there's code in Mongrel doing this then point 
it out to me.

You already have the fully formed file handle, all you need to do is use 
fileutils to just rename it.  This is an ultra fast operation.  Don't copy it 
in a loop inside ruby.

> This is what I'd like to improve in Mongrel. It's really wasteful to  
> write the file to a TempFile and then rewrite it again elsewhere. For  
> really big files (multi-gigabyte) the performance hit would be  
> tremendous.

Matt's mistaken Cremes, this isn't how it's done.
 
> I'm thinking furiously about how to properly manage this. If anyone  
> has any ideas, feel free to share them on the list.

You probably have been missing the entire chunk of code I and Ezra have been 
working on to solve this problem.  Including a modified string search algorithm 
that will find the mime boundaries.  If you wanna help on this, e-mail me off 
line with your ideas and I'll help you check out the source.

I haven't been ignoring your other ideas, they're just kind of secondary to the 
Mongrel 1.0 RC1 release.  I'm pushing for this stuff in more of a Mongrel 1.1 
or later release.

-- 
Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu
http://www.zedshaw.com/
http://www.awprofessional.com/title/0321483502 -- The Mongrel Book
http://mongrel.rubyforge.org/
http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help.
_______________________________________________
Mongrel-users mailing list
Mongrel-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/mongrel-users

Reply via email to