>>> but this again doesn't restart the mule and the job if it dies.
>>
>> Are you sure the master is enabled ?
>>
>> mules are monitored like the other processes.
>>
>> Can you report what uWSGI says when a mule dies ?
>
> master is enabled
>
> This is my .ini file for testing:
>
>   [uwsgi]
>   master = true
>   harakiri = 30
>   http-socket = 127.0.0.1:4001
>   plugin = python27
>   wsgi-file = %d/app.wsgi
>   mules = 6
>
> This is app.wsgi for testing:
>
>   from uwsgidecorators import muleloop
>   import uwsgi
>   import time, random
>
>   def worker(s):
>       i = random.randint(0, 6)
>       x = 1 * 2 * 3 * 4 * 5 / i
>       time.sleep(10)
>       print 'Worker mule id %d: "%s" running. Result: %d' %
> (uwsgi.mule_id(), s, x)
>
>   muleloop(1)(lambda: worker('test-1'))
>   muleloop(2)(lambda: worker('test-2'))
>   muleloop(3)(lambda: worker('test-3'))
>   muleloop(4)(lambda: worker('test-4'))
>   muleloop(5)(lambda: worker('test-5'))
>
>   from werkzeug.testapp import test_app as application
>
>
> So I see workers start running, printing their results, and as they
> throw ZeroDivisionError exceptions the mules just sit there dormant.
> So the mule processes keep going - I can see them in 'ps', but they
> don't do anything.
>
> This is uwsgi 1.4.4
>
>

So the behaviour of the master is the right one, the problem are mules not
exiting after an exception ?


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

Reply via email to