Jorge Romeo escribió: > Bien, el caso es que por casualidad, he pillado una excepción en mi módulo de > base de datos, que hace sospechar que postgres podría estar implicado. El > mensaje de error es el siguiente: > > 15:55:41-> Fallo la consulta: WARNING: there is no transaction > inCANTE=2->error de sintaxis en o cerca de <WARNING> > > que viene del fragmento en Python: > > except Exception as msg: > if not "TRAMAS_RECIENTES" in query : > sys.stderr.write(time.asctime()[11:19] + "-> Fallo la > consulta: " \ > + query + "->" + str(msg) ) > self.reconexion() > return [] > > Lo que ha pasado aquí es que la query que he pasado a la función se ha > machacado con la "fusión" de un mensaje de advertencia de postgres (WARNING: > there is no transaction in) y una consulta antigua (query = "DELETE FROM > ORDENES WHERE ID_REPLICANTE=2"), que sólo hago al arranque del programa para > limpiar órdenes residuales. > > No quiero preguntar por qué Python aborta, sino simplemente si alguien sabe > cuando postgres lanza ese mensaje de advertencia para tener alguna pista de > por qué puede estar pasándome esto.
El mensaje completo en realidad es "there is no transaction in progress", y aparece cuando haces COMMIT o ROLLBACK y no se ha abierto una transacción (BEGIN) con anterioridad. -- Alvaro Herrera http://www.amazon.com/gp/registry/3BP7BYG9PUGI8 "Everybody understands Mickey Mouse. Few understand Hermann Hesse. Hardly anybody understands Einstein. And nobody understands Emperor Norton." -- TIP 6: ¿Has buscado en los archivos de nuestra lista de correo? http://archives.postgresql.org/pgsql-es-ayuda