我们使用以下命令为所有查询设置了会话超时时间:
'default': {
'ENGINE': 'django.db.backends.postgresql',
...
'OPTIONS': {
'options': '-c statement_timeout=5000',
...
}
}
}但是,有一个查询的运行时间要长得多。我想覆盖这个特定查询的5秒约束。我该怎么做呢?我尝试使用connection.alias来分离查询类型,但我仍然感到困惑。
具体地说,有人可以详细说明本文使用connection.alias描述的内容,以限制同一服务器上的不同查询吗?https://medium.com/squad-engineering/configure-postgres-statement-timeouts-from-within-django-6ce4cd33678a
发布于 2021-10-12 14:56:15
您可以在运行查询之前通过原始SQL覆盖它:
with connection.cursor() as cursor:
cursor.execute("SET statement_timeout = 123;")请注意,您可能希望在以后将其设置回去,因为该连接将保留该值,直到它关闭。
https://stackoverflow.com/questions/67678201
复制相似问题