我在Flask上托管了一个API。它在Tornado服务器后面运行。发生的情况是,有时对UI所做的更改未反映在数据库中。另外,我运行的一些脚本给出了以下3个错误中的任何一个:
这是我的Flask API代码的片段:
class Type(Resource):
def put(self):
parser = reqparse.RequestParser()
parser.add_argument('id', type = int)
parser.add_argument('type', type = int)
args = parser.parse_args()
query = """
UPDATE myDb SET Type = ? WHERE Id = ?
"""
connection = pyodbc.connect(connectionString)
cursor = connection.cursor()
cursor.execute(query, [args['type'], args['id']])
connection.commit()
cursor.close()
connection.close()
api.add_resource(Type, '/type')
我可以在cursor.execute行上添加任何重试逻辑吗?我不知道如何使用python处理瞬态错误。请帮忙。
根据我的经验,我认为您可以尝试使用下面的代码来实现重试逻辑。
import time
retry_flag = True
retry_count = 0
while retry_flag and retry_count < 5:
try:
cursor.execute(query, [args['type'], args['id']])
retry_flag = False
except:
print "Retry after 1 sec"
retry_count = retry_count + 1
time.sleep(1)
希望能帮助到你。
我正在尝试在AWS3上托管一个面向公众的静态网站。 我从root帐户登录到AWS控制台 创建了一个新的存储桶并上载了几个静态HTML文件 在{Bucket-name}->权限->bucket策略下,我提供了以下策略 {“版本”:“2012-10-17”,“语句”:[{“效果”:“允许”,“主体”:“”,“操作”:“S3:GetObject”,“资源”:“arn:aws:S3:::[my-bucke
我在下面得到了三个多小时的例外。有人知道怎么摆脱它吗? javax。坚持不懈PersistenceException:Exception[EclipseLink-4002](Eclipse持久性服务-2.3.2.v20111125-r10461):org。日食坚持不懈例外。DatabaseException内部异常:java。sql。SQLException:暂时性错误,请重试。错误代码:1在组织
考虑代码: 最后一行抛出一个异常: 如何从模式创建?
问题内容: 我有两节课: 用户 还有另一个这样的类: 角色 : 我写了这样的集成测试: 此测试工作正常。但是,当我将以下行添加到上面的测试代码中时: 我收到这样的错误: 这是怎么回事?我哪里错了? 我正在使用Grails 2.0。 提前致谢。 问题答案: 出现此错误的原因是,当执行语句Role.findBy静态方法时,Hibernate(grails GORM使用)将检查是否需要“ autoFlu
问题内容: 在使用StackExchange.Redis客户端时,寻求有关处理临时网络问题的指导。 为了澄清起见,我并不是要首先使用ConnectionMultiplexer.Connect()连接到Redis服务器。我指的是在操作中间如何处理由于任何原因而中断的连接。(我们可以假设该命令是幂等的,StringSet,StringGet) 我问是因为我们正在从ServiceStack迁移到Stac