on master help sign in
Fix server build: inline activeByExpiry and pendingRemoteAcks
26f4907iko
server.knot+5−9
@@ -571,12 +571,12 @@ sendToEach = \servers action ->
571
571
572pruneExpired = \t -> do
572pruneExpired = \t -> do
573 challenges <- *challenges
573 challenges <- *challenges
574− set *challenges = activeByExpiry challenges t
574+ set *challenges = do x <- challenges; where x.expiresAt > t; yield x
575 sessions <- *sessions
575 sessions <- *sessions
576− set *sessions = activeByExpiry sessions t
576+ set *sessions = do x <- sessions; where x.expiresAt > t; yield x
577 presenceBefore <- *presence
577 presenceBefore <- *presence
578 let peerServersBefore = collectPeerServers presenceBefore (\p -> p.server)
578 let peerServersBefore = collectPeerServers presenceBefore (\p -> p.server)
579− let presenceAfter = activeByExpiry presenceBefore t
579+ let presenceAfter = do x <- presenceBefore; where x.expiresAt > t; yield x
580 set *presence = presenceAfter
580 set *presence = presenceAfter
581 let messageCutoff = t - messageMaxAge
581 let messageCutoff = t - messageMaxAge
582 messages <- *messages
582 messages <- *messages
@@ -760,7 +760,8 @@ pruneAndRetry = \t -> do
760 set *lastPrunedAt = t
760 set *lastPrunedAt = t
761 pr <- pruneExpired t
761 pr <- pruneExpired t
762 forwards <- *forwards
762 forwards <- *forwards
763− pendingAcks <- &pendingRemoteAcks
763+ ackedIds2 <- *ackedIds
764+ let pendingAcks = do a <- ackedIds2; where not (isLocalServer a.originServer); yield a
764 yield {expiredLocal: pr.expiredLocal, peerServers: pr.peerServers, pendingForwards: forwards, pendingAcks: pendingAcks}
765 yield {expiredLocal: pr.expiredLocal, peerServers: pr.peerServers, pendingForwards: forwards, pendingAcks: pendingAcks}
765 broadcastOfflineGossip t result.peerServers result.expiredLocal
766 broadcastOfflineGossip t result.peerServers result.expiredLocal
766 when federationEnabled (do
767 when federationEnabled (do
@@ -881,7 +882,6 @@ forwardCandidates = \targets messages forwards t ->
881 yield {messageId: m.messageId, toServer: target.server, createdAt: t,
882 yield {messageId: m.messageId, toServer: target.server, createdAt: t,
882 toKey: m.toKey, encryptedBlob: m.encryptedBlob, timestamp: m.timestamp}
883 toKey: m.toKey, encryptedBlob: m.encryptedBlob, timestamp: m.timestamp}
883
884
884−activeByExpiry = \items t -> do x <- items; where x.expiresAt > t; yield x
885
885
886challengeMatch = \challenges pubkey challenge t ->
886challengeMatch = \challenges pubkey challenge t ->
887 any challenges (\c -> c.pubkey == pubkey && c.challenge == challenge && c.expiresAt > t)
887 any challenges (\c -> c.pubkey == pubkey && c.challenge == challenge && c.expiresAt > t)
@@ -891,10 +891,6 @@ challengesExcluding = \challenges pubkey challenge ->
891
891
892hasLocalPresence = \entries -> any entries (\p -> isLocalServer p.server)
892hasLocalPresence = \entries -> any entries (\p -> isLocalServer p.server)
893
893
894−&pendingRemoteAcks = do
895− ackedIds <- *ackedIds
896− yield (do a <- ackedIds; where not (isLocalServer a.originServer); yield a)
897−
898ackedIdsExcludingBatch = \ackedIds server batch ->
894ackedIdsExcludingBatch = \ackedIds server batch ->
899 do a <- ackedIds; where not (a.originServer == server && hasMessage a.messageId a.toKey batch); yield a
895 do a <- ackedIds; where not (a.originServer == server && hasMessage a.messageId a.toKey batch); yield a
900
896