actualizado Tengo un script que espera hasta que alguna fila en una base de datos se actualiza:Python no conseguir fila
con = MySQLdb.connect(server, user, pwd, db)
Cuando el guión comienza el valor de la fila es "running"
, y espera a que el valor para convertirse en "finished"
while(True):
sql = '''select value from table where some_condition'''
cur = self.getCursor()
cur.execute(sql)
r = cur.fetchone()
cur.close()
res = r['value']
if res == 'finished':
break
print res
time.sleep(5)
Cuando ejecuto este script, se cuelga para siempre. Aunque veo que el valor de la fila ha cambiado a "finished"
cuando consulto la tabla, la impresión de la secuencia de comandos sigue siendo "running"
.
¿Hay alguna configuración que no configuré?
EDITAR: El script de python solo consulta la tabla. La actualización de la tabla se lleva a cabo mediante una aplicación web tomcat, utilizando JDBC, que se configura en autocommit.
Es un InnoDB. Pero el script de python solo consulta la tabla. La actualización de la tabla se lleva a cabo mediante una aplicación web tomcat, utilizando JDBC, que * se * establece en autocommit. – olamundo
Agregué más detalles para explicar el comportamiento –