From 2e59d3c2ea4d5017be9b4e578b7da12c4da0e2fa Mon Sep 17 00:00:00 2001 From: Steffen Jost Date: Wed, 12 Jul 2023 11:19:21 +0000 Subject: [PATCH] fix(avs): background avs synch yielding undefined due to wrong monad --- src/Jobs/Handler/SynchroniseAvs.hs | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/src/Jobs/Handler/SynchroniseAvs.hs b/src/Jobs/Handler/SynchroniseAvs.hs index bdc2a3aab..0a3281f07 100644 --- a/src/Jobs/Handler/SynchroniseAvs.hs +++ b/src/Jobs/Handler/SynchroniseAvs.hs @@ -47,23 +47,20 @@ dispatchJobSynchroniseAvs numIterations epoch iteration pause dispatchJobSynchroniseAvsId :: AvsPersonId -> Maybe Day -> JobHandler UniWorX dispatchJobSynchroniseAvsId apid pause = JobHandlerException $ do - ok <- runDBJobs $ + ok <- runDB $ getBy (UniqueUserAvsId apid) >>= \case (Just Entity{entityVal=UserAvs{userAvsUser=uid}}) -> do -- known user workJobSychronizeAvs uid pause return True - Nothing -> -- unknown avsPersonId, attempt to create user + _ -> -- unknown avsPersonId, attempt to create user return False - -- flip (maybeM $ return False) (getBy $ UniqueUserAvsId apid) $ \Entity{entityVal=UserAvs{userAvsUser=uid}} -> do -- known user - -- workJobSychronizeAvs uid pause - -- return True unless ok $ void $ maybeCatchAll $ upsertAvsUserById apid dispatchJobSynchroniseAvsUser :: UserId -> Maybe Day -> JobHandler UniWorX -dispatchJobSynchroniseAvsUser uid pause = JobHandlerException $ runDBJobs $ workJobSychronizeAvs uid pause +dispatchJobSynchroniseAvsUser uid pause = JobHandlerException $ runDB $ workJobSychronizeAvs uid pause -workJobSychronizeAvs :: UserId -> Maybe Day -> JobDB () +workJobSychronizeAvs :: UserId -> Maybe Day -> DB () workJobSychronizeAvs uid pause = do now <- liftIO getCurrentTime void $ E.upsert @@ -72,7 +69,7 @@ workJobSychronizeAvs uid pause = do , avsSyncPause = pause } [ \oldSync -> (AvsSyncPause E.=. E.greatest (E.val pause) (oldSync E.^. AvsSyncPause)) oldSync ] - queueDBJob JobSynchroniseAvsQueue + queueJob' JobSynchroniseAvsQueue dispatchJobSynchroniseAvsQueue :: JobHandler UniWorX dispatchJobSynchroniseAvsQueue = JobHandlerException $ do