diff options
author | 2024-09-02 14:00:17 +0200 | |
---|---|---|
committer | 2024-09-02 14:00:17 +0200 | |
commit | 25a815a8a438b19a5eafe4243093803129d4c49a (patch) | |
tree | d0515324b196927c69ff69c2bb4db66ac0e270ac /internal/db/bundb/account.go | |
parent | [chore]: Bump github.com/minio/minio-go/v7 from 7.0.75 to 7.0.76 (#3262) (diff) | |
download | gotosocial-25a815a8a438b19a5eafe4243093803129d4c49a.tar.xz |
[chore/performance] Avoid unnecessary "uncached" queries (#3265)
* [chore/performance] Avoid unnecessary "uncached" queries
* go fmt
Diffstat (limited to 'internal/db/bundb/account.go')
-rw-r--r-- | internal/db/bundb/account.go | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/internal/db/bundb/account.go b/internal/db/bundb/account.go index b57dcb57b..d8ec26291 100644 --- a/internal/db/bundb/account.go +++ b/internal/db/bundb/account.go @@ -64,8 +64,15 @@ func (a *accountDB) GetAccountsByIDs(ctx context.Context, ids []string) ([]*gtsm accounts, err := a.state.Caches.DB.Account.LoadIDs("ID", ids, func(uncached []string) ([]*gtsmodel.Account, error) { + // Avoid querying + // if none uncached. + count := len(uncached) + if count == 0 { + return nil, nil + } + // Preallocate expected length of uncached accounts. - accounts := make([]*gtsmodel.Account, 0, len(uncached)) + accounts := make([]*gtsmodel.Account, 0, count) // Perform database query scanning // the remaining (uncached) account IDs. |