diff options
Diffstat (limited to 'internal/cache/timeline/status.go')
| -rw-r--r-- | internal/cache/timeline/status.go | 37 |
1 files changed, 13 insertions, 24 deletions
diff --git a/internal/cache/timeline/status.go b/internal/cache/timeline/status.go index 59c339c91..6fe16c4a9 100644 --- a/internal/cache/timeline/status.go +++ b/internal/cache/timeline/status.go @@ -586,6 +586,9 @@ func (t *StatusTimeline) InsertOne(status *gtsmodel.Status, prepared *apimodel.S // status ID, including those that may be a boost of the given status. func (t *StatusTimeline) RemoveByStatusIDs(statusIDs ...string) { keys := make([]structr.Key, len(statusIDs)) + if len(keys) != len(statusIDs) { + panic(gtserror.New("BCE")) + } // Nil check indices outside loops. if t.idx_ID == nil || @@ -595,17 +598,12 @@ func (t *StatusTimeline) RemoveByStatusIDs(statusIDs ...string) { // Convert statusIDs to index keys. for i, id := range statusIDs { - keys[i] = t.idx_ID.Key(id) + keys[i] = structr.MakeKey(id) } // Invalidate all cached entries with IDs. t.cache.Invalidate(t.idx_ID, keys...) - // Convert statusIDs to index keys. - for i, id := range statusIDs { - keys[i] = t.idx_BoostOfID.Key(id) - } - // Invalidate all cached entries as boost of IDs. t.cache.Invalidate(t.idx_BoostOfID, keys...) } @@ -614,6 +612,9 @@ func (t *StatusTimeline) RemoveByStatusIDs(statusIDs ...string) { // account ID, including those that may be boosted by account ID. func (t *StatusTimeline) RemoveByAccountIDs(accountIDs ...string) { keys := make([]structr.Key, len(accountIDs)) + if len(keys) != len(accountIDs) { + panic(gtserror.New("BCE")) + } // Nil check indices outside loops. if t.idx_AccountID == nil || @@ -623,17 +624,12 @@ func (t *StatusTimeline) RemoveByAccountIDs(accountIDs ...string) { // Convert accountIDs to index keys. for i, id := range accountIDs { - keys[i] = t.idx_AccountID.Key(id) + keys[i] = structr.MakeKey(id) } // Invalidate all cached entries as by IDs. t.cache.Invalidate(t.idx_AccountID, keys...) - // Convert accountIDs to index keys. - for i, id := range accountIDs { - keys[i] = t.idx_BoostOfAccountID.Key(id) - } - // Invalidate all cached entries as boosted by IDs. t.cache.Invalidate(t.idx_BoostOfAccountID, keys...) } @@ -642,6 +638,9 @@ func (t *StatusTimeline) RemoveByAccountIDs(accountIDs ...string) { // timeline entries pertaining to status ID, including boosts of given status. func (t *StatusTimeline) UnprepareByStatusIDs(statusIDs ...string) { keys := make([]structr.Key, len(statusIDs)) + if len(keys) != len(statusIDs) { + panic(gtserror.New("BCE")) + } // Nil check indices outside loops. if t.idx_ID == nil || @@ -651,7 +650,7 @@ func (t *StatusTimeline) UnprepareByStatusIDs(statusIDs ...string) { // Convert statusIDs to index keys. for i, id := range statusIDs { - keys[i] = t.idx_ID.Key(id) + keys[i] = structr.MakeKey(id) } // Unprepare all statuses stored under StatusMeta.ID. @@ -659,11 +658,6 @@ func (t *StatusTimeline) UnprepareByStatusIDs(statusIDs ...string) { meta.prepared = nil } - // Convert statusIDs to index keys. - for i, id := range statusIDs { - keys[i] = t.idx_BoostOfID.Key(id) - } - // Unprepare all statuses stored under StatusMeta.BoostOfID. for meta := range t.cache.RangeKeysUnsafe(t.idx_BoostOfID, keys...) { meta.prepared = nil @@ -683,7 +677,7 @@ func (t *StatusTimeline) UnprepareByAccountIDs(accountIDs ...string) { // Convert accountIDs to index keys. for i, id := range accountIDs { - keys[i] = t.idx_AccountID.Key(id) + keys[i] = structr.MakeKey(id) } // Unprepare all statuses stored under StatusMeta.AccountID. @@ -691,11 +685,6 @@ func (t *StatusTimeline) UnprepareByAccountIDs(accountIDs ...string) { meta.prepared = nil } - // Convert accountIDs to index keys. - for i, id := range accountIDs { - keys[i] = t.idx_BoostOfAccountID.Key(id) - } - // Unprepare all statuses stored under StatusMeta.BoostOfAccountID. for meta := range t.cache.RangeKeysUnsafe(t.idx_BoostOfAccountID, keys...) { meta.prepared = nil |
