1

ActiveRecordを使用すると、データベースのread_timeout値とwrite_timeout値を構成できます。次に例を示します。

production:
  adapter: mysql
  encoding: utf8
  database: mydb
  pool: 5
  username: myuser
  password: mypass
  host: myhost
  write_timeout: 2
  read_timeout: 10

read_timeoutとwrite_timeoutはActiveRecordに固有ですか、それともmysql仕様の一部ですか?mysqlにinnodb_lock_wait_timeoutの概念があることは知っていますが、それがクエリのタイムアウトと同じであるとは思いません。

ありがとう!

4

1 に答える 1

-1

私は mysql gem を使ったことがありません。しかし、このように ActiveRecord で使用される mysql 変数を確認できると思います。

> ActiveRecord::Base.connection.execute('show variables like "%timeout%"').to_a
=> [["connect_timeout", "10"],
 ["delayed_insert_timeout", "300"],
 ["innodb_flush_log_at_timeout", "1"],
 ["innodb_lock_wait_timeout", "50"],
 ["innodb_rollback_on_timeout", "OFF"],
 ["interactive_timeout", "28800"],
 ["lock_wait_timeout", "31536000"],
 ["net_read_timeout", "30"],
 ["net_write_timeout", "60"],
 ["rpl_stop_slave_timeout", "31536000"],
 ["slave_net_timeout", "3600"],
 ["wait_timeout", "2147483"]]
于 2014-09-13T11:57:32.253 に答える