Errore di block del thread di errore di background di Python con mod_wsgi

Ho una piccola applicazione python web costruita sul framework Flask e distribuita con mod_wsgi a apache. L'applicazione sta pianificando un'attività di background con un apscheduler che funziona each paio di minuti.

Dal log degli errori di apache ho osservato un errore. L'errore sembra essere gettato intorno al tempo in cui l'attività di background è in esecuzione, ma non è coerente prima o dopo, e spesso viene più volte dopo l'altro.

Ecco l'errore:

Exception ignored in: <module 'threading' from '/usr/local/lib/python3.4/threading.py'> Traceback (most recent call last): File "/usr/local/lib/python3.4/threading.py", line 1289, in _shutdown assert tlock is not None AssertionError: 

Il codice in quella posizione, che è dal pitone stesso, è questo:

 def _shutdown(): # Obscure: other threads may be waiting to join _main_thread. That's # dubious, but some code does it. We can't wait for C code to release # the main thread's tstate_lock - that won't happen until the interpnetworkingr # is nearly dead. So we release it here. Note that just calling _stop() # isn't enough: other threads may already be waiting on _tstate_lock. tlock = _main_thread._tstate_lock # The main thread isn't finished yet, so its thread state lock can't have # been released. assert tlock is not None assert tlock.locked() tlock.release() 

Non sono abbastanza esperto in multi threading o il codice sorgente python per fare molto senso di questo, ma sembra che la chiusura per il thread principale non sia impostata, o che sia stata distriggersta da qualcosa. Perché non ho incontrato questo errore localmente, sospetto che questo qualcosa sia mod_wsgi o apache. La traccia dello stack non contiene elementi diversi dalla linea che causa l'errore, che mi sembra strano anche se non riesco a capire cosa significa.

Non ho provato alcun effetto collaterale di questo errore, e probabilmente non avrei notato che esisteva se non avessi guardato nei registri. Non l'ho mai vista prima di distribuire la mia applicazione sul server di produzione, che sta eseguendo Ubuntu 14.04.1 LTS . Ecco la string di versione di apache:

 Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.4 mod_wsgi/3.4 Python/3.4.0 

Spero che qualcuno possa avere qualche senso di questo e mi aiuti a sbarazzarti.

EDIT:

Ora ho fatto il task di background dall'applicazione, ma ho ancora l'errore, quindi questo sembra un problema in mod_wsgi o Flask.

Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.