From e3cbeeae9453a0108733316e5119d0038abab760 Mon Sep 17 00:00:00 2001 From: Tom Hughes Date: Thu, 21 May 2009 09:57:21 +0000 Subject: [PATCH 1/1] Monkey patch rails to ensure OSM::APITimeoutError exceptions are not lost. --- config/initializers/abstract_adapter.rb | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 config/initializers/abstract_adapter.rb diff --git a/config/initializers/abstract_adapter.rb b/config/initializers/abstract_adapter.rb new file mode 100644 index 000000000..7b22a3cc6 --- /dev/null +++ b/config/initializers/abstract_adapter.rb @@ -0,0 +1,24 @@ +module ActiveRecord + module ConnectionAdapters + class AbstractAdapter + protected + alias_method :old_log, :log + + def log(sql, name) + if block_given? + old_log(sql, name) do + yield + end + else + old_log(sql, name) + end + rescue ActiveRecord::StatementInvalid => ex + if ex =~ /^OSM::APITimeoutError: / + raise OSM::APITimeoutError + else + raise + end + end + end + end +end -- 2.43.2