import ok, modul aber nicht da
Verfasst: Donnerstag 21. Juli 2011, 11:29
Hallo,
ich habe einen Fehler, den ich mir so auf Anhieb nicht erklaeren kann.
Folgender Code schlaegt fehl mit einem "AttributeError: module object has no attribute submodule":
Das oben ist natuerlich paraphrasiert. Ein bisschen noch zum Kontext: das ganze passiert in einem mod_wsig-Application-Skript, mod_wsgi benutzt Daemon-Prozesse. Beim Start gibt es einen Fehler in "setup_all" - so weit, so gut.
Komischerweise versucht er dann, andere worker-daemons zu spawnen, und die haben dann das submodule schon gar nicht mehr zur Verfuegung. Die brechen dann weg mit obiger Fehlermeldung.
Darum die Frage: wie bringt man den Python-Interpreter in einen Zustand, in dem er ein Modul als importiert betrachtet (also import a.b durchlaeuft), aber kein Modulobjekt dahinter steckt? Normalerweise haette ich da an Nebenlaeufigkeit gedacht, aber erstens haben wir keine Threads, und zweitens gibt's ja auch ein import-lock.
Irgendwelche Ideen?
ich habe einen Fehler, den ich mir so auf Anhieb nicht erklaeren kann.
Folgender Code schlaegt fehl mit einem "AttributeError: module object has no attribute submodule":
Code: Alles auswählen
import base.submodule
# das verhalten ist so, als ob folgende Zeile einkommentiert waere
# del base.submodule
base.submodule.setup_all()
Komischerweise versucht er dann, andere worker-daemons zu spawnen, und die haben dann das submodule schon gar nicht mehr zur Verfuegung. Die brechen dann weg mit obiger Fehlermeldung.
Darum die Frage: wie bringt man den Python-Interpreter in einen Zustand, in dem er ein Modul als importiert betrachtet (also import a.b durchlaeuft), aber kein Modulobjekt dahinter steckt? Normalerweise haette ich da an Nebenlaeufigkeit gedacht, aber erstens haben wir keine Threads, und zweitens gibt's ja auch ein import-lock.
Irgendwelche Ideen?