Re: apreqXXXXXX temp files remain after processing uploads greater than 256kb. Further large upload fails
Steve Hay <[email protected]>
| Newsgroups | gmane.comp.apache.apreq |
|---|---|
| Message-ID | <[email protected]> |
Randy Kobes wrote: > On Wed, 14 Mar 2007, Steve Hay wrote: > >> I tried your patch with the current svn version (revision 518242), but >> I'm still seeing intermittent failures (usually in tests 15, 16 and/or >> 20) either when I run "nmake test" from the top-level, or when I run: >> perl -Iblib/arch -Iblib/lib t/TEST -verbose=1 t/apreq/upload.t from >> the glue/perl sub-directory :-( I'm running perl-5.8.8, apache-2.2.2 >> and mod_perl-2.0.3 (RC3, I think). Do I need to update anything there? > > I don't think so - I ran the tests against essentially the > same setup, and didn't see any failures when run a number > of times. > > Perhaps just to narrow things down, could you try the > attached C file (a VC++ Makefile is also attached)? > This uses the relevant parts of libapreq2 to create > and cleanup a temp file; the Makefile produces 4 .exes: > apr_temp: don't enable APR_FILE_NOCLEANUP nor > APR_SHARELOCK > apr_temp_nc: enable only APR_FILE_NOCLEANUP > apr_temp_sh: enable only APR_SHARELOCK > apr_temp_nc_sh: enable both APR_FILE_NOCLEANUP and > APR_SHARELOCK > These are run, for example > apr_temp 20 > which will go in a loop and create, and then remove, 20 > temp files (with no arguments, the default is 10. > > Are there any problems with the cleanup in any of these? > If not, then it looks like the problem is somewhere > within the Perl glue. Apologies for the slow response. I ran each program with an argument of 500 for good measure. All four programs successfully create and then delete a large number (presumably 500, I didn't count 'em!) of apreq* temp files. apr_temp and apr_temp_sh both deleted all those files about as quickly as they were made (i.e. very quickly), while apr_temp_nc and apr_temp_nc_sh both output loads of CLEANUP messages in the console quickly but then seemed to hang for nearly a minute, during which time loads of apreq* files were visible in the temp directory, and then eventually exited and all the files disappeared. --