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
