I'm pretty sure the reason you are seeing this behavior is that CGI is processing the uploaded file (i.e. reading the HTTP stream) at the time you create the CGI object (i.e. my $req = new CGI;)

This suggests that putting my $req = new CGI; only in the child process might fix your problem. However, I would very surprised if that works. You need the client's browser to run two requests at the same time: one which is uploading the file and another which is querying the status of the upload. The querying request will be the 'visible' one whereas the uploading one is hidden (if only for aesthetic purposes.) So I think it's the client's browser which has to fork() (in a sense). When the file upload is initiated, the browser has to create another page (via javascript) which queries the status of the upload periodically. The file upload request isn't going to display the page returned to it until the file upload is complete.


In reply to Re: forking large file uploads by pc88mxer
in thread forking large file uploads by sstevens

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.