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/relationship_block.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/relationship_block.go')
-rw-r--r-- | internal/db/bundb/relationship_block.go | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/internal/db/bundb/relationship_block.go b/internal/db/bundb/relationship_block.go index 4e5d4c254..99d77c745 100644 --- a/internal/db/bundb/relationship_block.go +++ b/internal/db/bundb/relationship_block.go @@ -105,8 +105,15 @@ func (r *relationshipDB) GetBlocksByIDs(ctx context.Context, ids []string) ([]*g blocks, err := r.state.Caches.DB.Block.LoadIDs("ID", ids, func(uncached []string) ([]*gtsmodel.Block, error) { + // Avoid querying + // if none uncached. + count := len(uncached) + if count == 0 { + return nil, nil + } + // Preallocate expected length of uncached blocks. - blocks := make([]*gtsmodel.Block, 0, len(uncached)) + blocks := make([]*gtsmodel.Block, 0, count) // Perform database query scanning // the remaining (uncached) IDs. |