httpd-apreq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Philip M. Gollucci" <>
Subject Re: [RELEASE CANDIDATE] libapreq2 2.08-RC4
Date Fri, 21 Jul 2006 10:57:28 GMT
Randy Kobes wrote:
> [Thu Jul 20 23:45:45 2006] [error] [client]
> (OS 80)The file exists.  :
>  apreq_brigade_concat failed; TempDir problem?
> which is coming from about line 288 of
> module/apache2/filter.c. The "file exists" message
> I think comes from the fact that, when the test
> fails, there's old temp files left over from
> a previous run. So perhaps the cleanup discussed
> in library/util.c at around line 797 is failing
> occasionally?

If I had to guess, I'd say this did it in 2.04-dev:
- C API [Markus Wichitill, randyk, joes]
  Drop APR_DELONCLOSE from apreq_file_mktemp implementation and install
  apreq_file_cleanup. When passed to apr_file_open on Win32, APR_DELONCLOSE
  sets the FILE_SHARED_DELETE flag, which is, unfortunately, a property that
  is preserved across NTFS "hard" links.  This breaks apps that link()
  the temp file to a permanent location, and subsequently expect to open it
  without FILE_SHARED_DELETE before the original tempfile is closed+deleted.
  In fact, even Apache::Upload does this, so it is a common enough event that
  the apreq_file_cleanup workaround is necessary.

Philip M. Gollucci ( 323.219.4708
Consultant /
Senior Software Engineer - TicketMaster -
1024D/A79997FA F357 0FDD 2301 6296 690F  6A47 D55A 7172 A799 97F

"In all that I've done wrong I know I must have done something right to
deserve a hug every morning and butterfly kisses at night."

View raw message