logo
Apache Lounge
Webmasters

 

About Forum Index Downloads Search Register Log in RSS X


Keep Server Online

If you find the Apache Lounge, the downloads and overall help useful, please express your satisfaction with a donation.

or

Bitcoin

A donation makes a contribution towards the costs, the time and effort that's going in this site and building.

Thank You! Steffen

Your donations will help to keep this site alive and well, and continuing building binaries. Apache Lounge is not sponsored.
Post new topic   Forum Index -> Apache View previous topic :: View next topic
Reply to topic   Topic: Apache error log flooded with AH00035 and AH00127 errors
Author
cbj4074



Joined: 02 Nov 2012
Posts: 24
Location: United States

PostPosted: Wed 07 Nov '12 18:02    Post subject: Apache error log flooded with AH00035 and AH00127 errors Reply with quote

I see entries like the following in Apache's error log whenever I simulate a relatively heavy load with highly-concurrent requests (e.g., by holding-down the browser's Refresh key):

Code:

[Wed Nov 07 09:51:20.924342 2012] [core:error] [pid 824:tid 1056] (OS 32)The process cannot access the file because it is being used by another process.  : [client fe80::1ddc:6806:70b6:8546:63916] AH00035: access to /project/ denied (filesystem path 'C:/Users/User/Documents/Apache/project') because search permissions are missing on a component of the path, referer: https://localhost/

[Wed Nov 07 09:51:22.823451 2012] [core:error] [pid 824:tid 1052] (OS 32)The process cannot access the file because it is being used by another process.  : [client fe80::1ddc:6806:70b6:8546:63924] AH00127: Cannot map GET /project/js/jquery.accordion.js HTTP/1.1 to file, referer: https://localhost/project/


These errors still occur under "normal" browsing conditions, although far less frequently than they do when I "hammer on the page".

This happens with Apache 2.2 and 2.4, as well as with every recent, major version of PHP (5.2, 5.3, and 5.4).

The requests in the log excerpts above are to PHP files that use PHP's require() function liberally. The URLs are mapped to PHP files using Apache's mod_rewrite module (and the QSA flag, in particular), coupled with internal application logic.

While the entries do not correspond directly, at about the time that these errors appear in Apache's error log, similar, related errors appear in PHP's error log:

Code:

[07-Nov-2012 10:24:40] PHP Warning:  require(C:/Users/User/Documents/Apache/project/protected/constants.inc.php): failed to open stream: No such file or directory in C:\Users\User\Documents\Projects\My Project\my-project\trunk\public\include\global.inc.php on line 18

[07-Nov-2012 10:24:40] PHP Stack trace:

[07-Nov-2012 10:24:40] PHP   1. {main}() C:\Users\User\Documents\Projects\My Project\my-project\trunk\public\auxiliary\css.php:0

[07-Nov-2012 10:24:40] PHP   2. require() C:\Users\User\Documents\Projects\My Project\my-project\trunk\public\auxiliary\css.php:5

[07-Nov-2012 10:24:40] PHP Fatal error:  require(): Failed opening required 'C:/Users/User/Documents/Apache/project/protected/constants.inc.php' (include_path='.;C:\Program Files\php\includes;C:\Program Files\php\PEAR\pear') in C:\Users\User\Documents\Projects\My Project\my-project\trunk\public\include\global.inc.php on line 18

[07-Nov-2012 10:24:40] PHP Stack trace:

[07-Nov-2012 10:24:40] PHP   1. {main}() C:\Users\User\Documents\Projects\My Project\my-project\trunk\public\auxiliary\css.php:0

[07-Nov-2012 10:24:40] PHP   2. require() C:\Users\User\Documents\Projects\My Project\my-project\trunk\public\auxiliary\css.php:5


The file that is being passed to require() does exist on the filesystem. And the particular file that fails to be required changes sporadically.

The bottom line seems to be that something -- whether a third-party program/utility or Apache itself -- is causing files on the filesystem to be read-locked sporadically.

I am able to reproduce this issue in Windows' Safe Mode, too, which seems to eliminate many potential causes, like virus scanner, filter drivers, etc.

I am also able to reproduce this issue on a second, similarly-configured workstation.

Might anyone have any thoughts on this? Thanks in advance.

EDIT TO ADD:

Could the observed behavior be related to using Apache's "worker" MPM, instead of the older, more stable "prefork" MPM?
Back to top
cbj4074



Joined: 02 Nov 2012
Posts: 24
Location: United States

PostPosted: Wed 20 Feb '13 23:28    Post subject: Reply with quote

I believe to have identified the observed behavior's cause: include() and require() calls across NTFS junction points.

I have opened a PHP bug report: https://bugs.php.net/bug.php?id=63413 .

Case closed (for now).
Back to top


Reply to topic   Topic: Apache error log flooded with AH00035 and AH00127 errors View previous topic :: View next topic
Post new topic   Forum Index -> Apache