From b807cced820b3812948d760a67adca77450d9908 Mon Sep 17 00:00:00 2001 From: Jonathan Featherstone Date: Wed, 3 Jul 2024 15:46:54 -0600 Subject: [PATCH] Fix redis "multi" use for discussion summarization We can't use redis "multi" in prod. Remove it. Test plan: Discussion summarization should now work in prod flag=discussion_summary refs ADV-159 Change-Id: I40eb0e69a42cdbcf12040346501c5e824d2ea3c6 Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/351959 Tested-by: Service Cloud Jenkins Reviewed-by: Jeremy Stanley QA-Review: Jeremy Stanley Product-Review: Jeremy Stanley --- app/helpers/inst_llm_helper.rb | 6 ++---- spec/helpers/inst_llm_helper_spec.rb | 6 ------ 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/app/helpers/inst_llm_helper.rb b/app/helpers/inst_llm_helper.rb index adb0446835c..840bc78f998 100644 --- a/app/helpers/inst_llm_helper.rb +++ b/app/helpers/inst_llm_helper.rb @@ -51,10 +51,8 @@ module InstLLMHelper raise RateLimitExceededError.new(limit:) end - Canvas.redis.multi do |multi| - multi.incr(cache_key) - multi.expire(cache_key, 24.hours.to_i) - end + Canvas.redis.incr(cache_key) + Canvas.redis.expire(cache_key, 24.hours.to_i) begin yield diff --git a/spec/helpers/inst_llm_helper_spec.rb b/spec/helpers/inst_llm_helper_spec.rb index c56c6709f62..42e82001e10 100644 --- a/spec/helpers/inst_llm_helper_spec.rb +++ b/spec/helpers/inst_llm_helper_spec.rb @@ -56,10 +56,6 @@ describe InstLLMHelper do let(:user) { double(uuid: "user123") } let(:llm_config) { double(rate_limit: { limit: 10, period: "day" }, name: "test") } - before do - allow(Canvas.redis).to receive(:multi).and_yield(double("multi", incr: true, expire: true)) - end - it "yields if rate limit is not set" do llm_config = double(rate_limit: nil) expect { |b| InstLLMHelper.with_rate_limit(user:, llm_config:, &b) }.to yield_control @@ -108,7 +104,6 @@ describe InstLLMHelper do Time.now.utc.strftime("%Y%m%d") ].cache_key allow(Canvas.redis).to receive(:get).with(cache_key).and_return("5") - expect(Canvas.redis).to receive(:multi) expect { |b| InstLLMHelper.with_rate_limit(user:, llm_config:, &b) }.to yield_control end @@ -121,7 +116,6 @@ describe InstLLMHelper do Time.now.utc.strftime("%Y%m%d") ].cache_key allow(Canvas.redis).to receive(:get).with(cache_key).and_return("5") - expect(Canvas.redis).to receive(:multi) expect(Canvas.redis).to receive(:decr).with(cache_key) expect do