No he dicho nada, os.path.isfile funciona perfectamente, era otro problema
El 3 de junio de 2013 20:48, Txema Vicente <[email protected]> escribió: > > Buenas. > > Tengo un problemilla que no se a que puede deberse, a ver si alguien me > ilumina. > > Estoy haciendo un framework WSGI (si, ya, otro), que todavia no esta > presentable pero ya va cogiendo forma [1]. El objetivo es crear un paquete > para utilizar Dojo Toolkit desde python, de la manera mas sencilla posible. > Hace muchos años lo hice con Dojo 0.4 y PHP, y ahora voy a intentarlo con > python y Dojo 2.0. Empece sobre webapp2, luego con web2py, pero al final me > he hecho mi propio framework sencillito, para poder probar las cosas a mi > manera, aunque al final es para que genere javascript para otro. Uso > wsgiref para servir la app, y selenium para testear. > > El problema es que al arrancar, Dojo Toolkit carga muchos archivos > javascript, y algunas veces me pasa que os.path.isfile da False sobre > archivos que si que existen, lo que hace que la página se rompa. Esto > provoca que los test fallen de vez en cuando, y es muy molesto. Puedo > evitarlo cargardo Dojo desde un CDN, pero me revienta no saber por qué pasa. > > Leo por ahi que os.path no es seguro en wsgi, asi que en vez de eso voy > con un try:open, pero casca igual y de vez en cuando tampoco encuentra el > archivo. [2] > > Pense que al ser multihilo, y como Dojo al arrancar lanza unas 30 > peticiones a la vez, podria ser que a veces pillara el disco muy ocupado y > por eso no pudiera cargarlo, asi que me hago un Cache [3] y cargo todos los > js en memoria y asi los mando sin tocar el disco. Y sorpresa, tambien > falla, aunque ya habia cargado antes el archivo! > > Siempre falla en los mismos dos archivos: dojo/dojo.js y dijit/dijit.js, y > si falla uno el otro tambien. No es extraño, ya que son los que hacen que > se carguen todos los demas. > > He leido algo sobre "race condition", pero no me parece que sea mi > problema. He echado un vistazo a algunos framework y usan isfile > tranquilamente. > > Y lo que pregunto es: > > - A alguien se le ocurre por donde puede venir el problema? > - Que cosas no son seguras de usar en una aplicacion WSGI? Documentacion > sobre esto? > > Por otro lado, si a alguien le apetece echarle un vistazo al paquete y > comentar algo, encantado de recibir sugerencias, criticas, o modulos que me > puedan ayudar en la generacion de javascript (existe algun validador?). En > Examples/TEST hay un ejemplo de como funciona. > > Saludos. > > [1] http://code.google.com/p/pyojo/ > [2] http://www.pyojo.com/doc/_modules/pyojo.html#Request.static > [3] http://www.pyojo.com/doc/_modules/pyojo/content.html#CachedText > > > > >
_______________________________________________ Python-es mailing list [email protected] http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
