Ok, now that I am actually at my machine I get the following lines
repeated many times in my log (with a different pid each time -- this
is before forking in the uwsgi_example_spooler function):
*** start log snip ****
I am the spooler -- my pid is39320
This is very bad!!!
Return from execve(): -1
Err (2): No such file or directoryunable to find the spooler function,
have you loaded it into the spooler process ?
kevent(): Bad file descriptor [event.c line 446]
[spooler] managing request
uwsgi_spoolfile_on_x-134-84-172-44.hsci.umn.edu_39280_1_0_1327518821_426577
...
*** end log snip ****

After some limit is reached (probably max num processes), fork will
fail and the following is printed to the log
*** start log snip ***
I am the spooler -- my pid is39498
Blargh -- fork() failed!]
[spooler] done with task
uwsgi_spoolfile_on_x-134-84-172-44.hsci.umn.edu_39280_1_0_1327518821_426577
after 0 seconds
*** end log snip ***

After fork fails, I then get spammed with a seemingly infinite number
of lines of:
"kevent(): Bad file descriptor [event.c line 446]"

Oh, oops... near the top of the log is this
*** start log snip ***
[spooler] written 437 bytes to file
/Users/jvanvoorst/code/drugsite-dev/myspool/uwsgi_spoolfile_on_x-134-84-172-44.hsci.umn.edu_39280_1_0_1327518821_426577
kevent(): Interrupted system call [event.c line 446]
i am the DrugSite Search plugin after request function
[spooler] managing request
uwsgi_spoolfile_on_x-134-84-172-44.hsci.umn.edu_39280_1_0_1327518821_426577
...
*** end log snip ***

First, I have little experience with fork and execve.  What is the
proper way to exit if execve fails (is calling exit()) sufficient)?

Second, given the trouble others have had with kqueue/poll/select on
Mac OS, it may not be useful to even try to fix such an issue as we
don't know what apple will break in the next releases of Mac OS.  Or
maybe the problem is my code sucks in this case ....

I think better handling of execve failure on my part would help, but I
don't like the line
"kevent(): Interrupted system call [event.c line 446]"

Again, this is primarily for your information if you want to support
Mac OS, as I generally run my code on linux and my production
environment is linux.

--Jeff
_______________________________________________
uWSGI mailing list
[email protected]
http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi

Reply via email to