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 <svc.cloudjenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
This commit is contained in:
Jonathan Featherstone 2024-07-03 15:46:54 -06:00
parent 9a7c0f3027
commit b807cced82
2 changed files with 2 additions and 10 deletions

View File

@ -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

View File

@ -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