Eu não chamei procs armazenados do SQLAlchemy, mas parece possível que isso possa estar dentro de uma transação porque você está usando a sessão. Talvez chamando
db.session.commit()
no final ajudaria? Se isso falhar, SQLAlchemy chama chamando procedimentos armazenados aqui. Talvez tente o método deles de usar
callproc
. Adaptando ao seu caso de uso, algo como:connection = db.session.connection()
try:
cursor = connection.cursor()
cursor.callproc("escalatelobalarm", [clientid])
results = list(cursor.fetchall())
cursor.close()
connection.commit()
finally:
connection.close()