From 67feb008c2c6ccf5dc00651f06dbf2269139d3d0 Mon Sep 17 00:00:00 2001 From: Andy Wallace Date: Thu, 14 Mar 2024 12:47:21 -0400 Subject: [PATCH] in Californica::Deleter, recover from RSolr http errors (#960) https://uclalibrary.atlassian.net/browse/APPS-2612 --- app/lib/californica/deleter.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/lib/californica/deleter.rb b/app/lib/californica/deleter.rb index 79201b36..4758e17f 100644 --- a/app/lib/californica/deleter.rb +++ b/app/lib/californica/deleter.rb @@ -82,12 +82,13 @@ def destroy_and_eradicate Hyrax.config.callback.run(:after_destroy, record.id, User.batch_user) log("Deleted #{record.class} #{record.id} in #{ActiveSupport::Duration.build(Time.current - start_time)}") log("deleted item ark is: #{record.ark}") - rescue Ldp::HttpError, Faraday::TimeoutError, Faraday::ConnectionFailed => e + rescue Ldp::HttpError, Faraday::TimeoutError, Faraday::ConnectionFailed, RSolr::Error::Http => e log("#{e.class}: #{e.message}") retries ||= 0 if (retries += 1) > 3 return false # Explicitly return false after retries are exhausted else + sleep(10**(retries - 1)) retry end end