I have about 12 httpd processes running for an RHEL aws box that no one is hitting in the browser (shared team dev box). These processes together are consuming over 1.8 GB on the dev box, and I have seen it up to 6 GB on production. Each one of those processes consumes about 800 MB as per ps aux. I did an strace on one of them and left it for a while to find:
<venv>/django/contrib/flatpages/templatetags/analytical 0x7fff37ef41a0) = -1 ENOENT (No such file or directory)
<venv>/django/contrib/flatpages/templatetags/analytical.py, O_RDONLY) = -1 ENOENT (No such file or directory)
<venv>/pagination/templatetags/expert_tags.py, O_RDONLY) = -1 ENOENT (No such file or directory)
<venv>/django/templatetags/raven.py, O_RDONLY) = -1 ENOENT (No such file or directory)
<vevn>/django_extensions/templatetags/raven.py O_RDONLY) = -1 ENOENT (No such file or directory)
There are; with out a joke, thousands of these ENOENT messages over a span of just 5 minutes. All types of different files.
An strace of 3 other processes shows something also interesting
read(4, 0x7fff37efa00f, 1) = -1 EAGAIN (Resource temporarily unavailable)
Any way to find out which Resource is being referenced here?
I'm not an OS programming expert, but I presume this is not normal? Any idea how I can I find out what's causing this? How to prevent it?
Strangely this raven.py is of course truly a missing file, but we have a third party library in the virtual env called
raven (3.5.1)