X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/44ac569d286ce1159f49b2cded184ff0cc4475f5..a8db515f13d56c29ec5613365defffabaee1808c:/app/controllers/application_controller.rb diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 1d6865405..d3f57f086 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -231,6 +231,7 @@ class ApplicationController < ActionController::Base def api_call_timeout(&block) Timeout.timeout(Settings.api_timeout, Timeout::Error, &block) rescue Timeout::Error + ActiveRecord::Base.connection.raw_connection.cancel raise OSM::APITimeoutError end @@ -243,11 +244,13 @@ class ApplicationController < ActionController::Base if e.is_a?(Timeout::Error) || (e.is_a?(ActiveRecord::StatementInvalid) && e.message.include?("execution expired")) + ActiveRecord::Base.connection.raw_connection.cancel render :action => "timeout" else raise end rescue Timeout::Error + ActiveRecord::Base.connection.raw_connection.cancel render :action => "timeout" end