From a5c2b337f4d07d974f4b004bb5001f0f07c75412 Mon Sep 17 00:00:00 2001 From: Tigor Hutasuhut Date: Tue, 4 Jun 2024 00:23:13 +0700 Subject: [PATCH] Revert "fix: database lock by adding lock function when set schedule" This reverts commit 0c784b4cc908b41fb16f967616ce5762d86597b8. --- api/pubsub_download.go | 40 +++++++++++++++++++--------------------- 1 file changed, 19 insertions(+), 21 deletions(-) diff --git a/api/pubsub_download.go b/api/pubsub_download.go index e47d09f..687309a 100644 --- a/api/pubsub_download.go +++ b/api/pubsub_download.go @@ -96,28 +96,26 @@ func (api *API) PubsubStartDownloadSubreddit(ctx context.Context, params PubsubS return errs.Wrapw(err, "failed to verify subreddit existence", "params", params) } - api.lockf(func() { - err = api.withTransaction(ctx, func(exec bob.Executor) error { - _, err := api.scheduleSet(ctx, exec, ScheduleSetParams{ - Subreddit: subreddit.Name, - Status: ScheduleStatusEnqueued, - }) - if err != nil { - return err - } - - payload, err := json.Marshal(subreddit) - if err != nil { - return errs.Wrapw(err, "failed to marshal subreddit") - } - - err = api.publisher.Publish(downloadTopic, message.NewMessage(watermill.NewUUID(), payload)) - if err != nil { - return errs.Wrapw(err, "failed to enqueue reddit download", "params", params) - } - return nil + err = api.withTransaction(ctx, func(exec bob.Executor) error { + _, err := api.scheduleSet(ctx, exec, ScheduleSetParams{ + Subreddit: subreddit.Name, + Status: ScheduleStatusEnqueued, }) + if err != nil { + return err + } + + payload, err := json.Marshal(subreddit) + if err != nil { + return errs.Wrapw(err, "failed to marshal subreddit") + } + + err = api.publisher.Publish(downloadTopic, message.NewMessage(watermill.NewUUID(), payload)) + if err != nil { + return errs.Wrapw(err, "failed to enqueue reddit download", "params", params) + } + return nil }) - return err + return nil }