activerecord的一个猴子补丁,用于在失去与mysql服务器的连接后重新连接

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了activerecord的一个猴子补丁,用于在失去与mysql服务器的连接后重新连接相关的知识,希望对你有一定的参考价值。

  1. # Patch mysql adapter so that it reconnects after discovering an lost connection error
  2.  
  3. module ActiveRecord::ConnectionAdapters
  4. class MysqlAdapter
  5. alias :orig_execute :execute
  6. def execute(sql,name=nil)
  7. orig_execute(sql,name)
  8. rescue ActiveRecord::StatementInvalid => exception
  9. if LOST_CONNECTION_ERROR_MESSAGES.any? { |msg| exception.message. =~ /#{msg}/ }
  10. reconnect!
  11. retry
  12. else
  13. raise
  14. end
  15. end
  16. end
  17. end

以上是关于activerecord的一个猴子补丁,用于在失去与mysql服务器的连接后重新连接的主要内容,如果未能解决你的问题,请参考以下文章

python boto的Decimal上下文的猴子补丁,允许浮动的不精确和圆形表示。用于在运行时存储DynamoDB中的任何浮动

Python 3:猴子补丁代码不能通过多处理重新导入

Python基础复习函数篇

猴子补丁(monkey patch)

Ruby 中的“猴子补丁”到底是啥意思?

猴子补丁的应用,猴子补丁来改变日志。