gpt4 book ai didi

ruby-on-rails - 如何延长 activerecord 和 tinytds 超时?

转载 作者:行者123 更新时间:2023-12-04 07:32:37 27 4
gpt4 key购买 nike

症状是:

TinyTds::Error: Adaptive Server connection timed out: EXEC some_stored_procedure

它是 execute_procedure 通过 tinytds 上的 ActiveRecord 在慢速 MSSQL 服务器上运行的慢速存储过程。如果我在 SQL 查询分析器中 EXEC 存储过程,它需要 29 到 30 才能完成。

所以我补充说:

timeout = 60

/etc/freetds.conf 和:

read_timeout: 60
write_timeout: 60

database.yml

仍然出现同样的错误。我是否遗漏了任何其他配置?

附注我确实测量了 何时 在按下返回键后超时错误出现在计时器上,大约是 30 秒。我感觉 30 秒可能不是 freetdsactiverecord 的默认超时时间,并且想知道为什么错误显示的时间有点接近 sql 完成的时间 ...

最佳答案

已经很长时间了,但有人可能需要这个。我通过传递 timeout: 选项解决了这个问题,创建 tiny_tds 客户端取决于 git doc ,请参阅以下内容:

client = TinyTds::Client.new username: 'sa', password: 'secret', host: 'mydb.host.net', timeout: 30

关于ruby-on-rails - 如何延长 activerecord 和 tinytds 超时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27539003/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com