Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

On my development box, I have configured uWSGI to reload every time a file gets touched (using the --touch-reload command line argument). When I specify a non-existent file, I get a warning in the uWSGI logs. If I specify an existing file (say, /data/reload.uwsgi), I get nothing in the logs, meaning the settings might be OK.

Here's the problem: whenever I touch /data/reload.uwsgi, uWSGI doesn't reload. Logs don't show anything special (browsing the sources show I should get some kind of acknowledgment that the monitored file has been touched).

There is one thing though: all uwsgi processes start taking all available CPU power, until I stop the service.

uWSGI still works, but with the "old" Python code, not the reloaded one.

What am I missing? Is this a bug or something?

Thanks in advance,

Romain


By the way I'm running uWSGI 0.9.7.2 on FreeBSD 8.2 AMD64 with Python 2.7.1. uWSGI and Python are running inside a jail.

I've tried files like /data/reload.uwsgi or /tmp/reload.uwsgi, none of them work. I even tried to chown those files to the www user (the one who's running uwsgi processes), without success. For the record, here's the command line in /etc/rc.conf to run the uWSGI service:

uwsgi_flags="-p 2 -M -t 30 -C --pythonpath /data/app -w <APPNAME> --uid www --gid www -L -d /var/log/uwsgi.log --post-buffering 8192 --touch-reload /data/reload.uwsgi"
share|improve this question

1 Answer 1

up vote 0 down vote accepted

It is a bug with FreeBSD, check the latest tip, it has been fixed

share|improve this answer
    
Oh yeah, a very small change indeed! Thanks, I'll check that once the 0.9.7.3 port is available! –  Romain May 20 '11 at 6:35

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.