mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2025-11-16 21:07:29 -06:00
[performance] add caching of status fave, boost of, in reply to ID lists (#2060)
This commit is contained in:
parent
00adf18c24
commit
9a291dea84
27 changed files with 610 additions and 406 deletions
|
|
@ -600,17 +600,17 @@ func (c *converter) StatusToAPIStatus(ctx context.Context, s *gtsmodel.Status, r
|
|||
return nil, fmt.Errorf("error converting status author: %w", err)
|
||||
}
|
||||
|
||||
repliesCount, err := c.db.CountStatusReplies(ctx, s)
|
||||
repliesCount, err := c.db.CountStatusReplies(ctx, s.ID)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error counting replies: %w", err)
|
||||
}
|
||||
|
||||
reblogsCount, err := c.db.CountStatusReblogs(ctx, s)
|
||||
reblogsCount, err := c.db.CountStatusBoosts(ctx, s.ID)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error counting reblogs: %w", err)
|
||||
}
|
||||
|
||||
favesCount, err := c.db.CountStatusFaves(ctx, s)
|
||||
favesCount, err := c.db.CountStatusFaves(ctx, s.ID)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error counting faves: %w", err)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -40,13 +40,13 @@ func (c *converter) interactionsWithStatusForAccount(ctx context.Context, s *gts
|
|||
si := &statusInteractions{}
|
||||
|
||||
if requestingAccount != nil {
|
||||
faved, err := c.db.IsStatusFavedBy(ctx, s, requestingAccount.ID)
|
||||
faved, err := c.db.IsStatusFavedBy(ctx, s.ID, requestingAccount.ID)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error checking if requesting account has faved status: %s", err)
|
||||
}
|
||||
si.Faved = faved
|
||||
|
||||
reblogged, err := c.db.IsStatusRebloggedBy(ctx, s, requestingAccount.ID)
|
||||
reblogged, err := c.db.IsStatusBoostedBy(ctx, s.ID, requestingAccount.ID)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error checking if requesting account has reblogged status: %s", err)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue