diff options
Diffstat (limited to 'internal/cache')
| -rw-r--r-- | internal/cache/cache.go | 2 | ||||
| -rw-r--r-- | internal/cache/db.go | 29 | ||||
| -rw-r--r-- | internal/cache/invalidate.go | 8 | ||||
| -rw-r--r-- | internal/cache/size.go | 31 |
4 files changed, 10 insertions, 60 deletions
diff --git a/internal/cache/cache.go b/internal/cache/cache.go index 5771b4e95..e57fbb569 100644 --- a/internal/cache/cache.go +++ b/internal/cache/cache.go @@ -69,7 +69,6 @@ func (c *Caches) Init() { c.initBlock() c.initBlockIDs() c.initBoostOfIDs() - c.initClient() c.initConversation() c.initConversationLastStatusIDs() c.initDomainAllow() @@ -161,7 +160,6 @@ func (c *Caches) Sweep(threshold float64) { c.DB.Block.Trim(threshold) c.DB.BlockIDs.Trim(threshold) c.DB.BoostOfIDs.Trim(threshold) - c.DB.Client.Trim(threshold) c.DB.Conversation.Trim(threshold) c.DB.ConversationLastStatusIDs.Trim(threshold) c.DB.Emoji.Trim(threshold) diff --git a/internal/cache/db.go b/internal/cache/db.go index 180d81907..695b19b8f 100644 --- a/internal/cache/db.go +++ b/internal/cache/db.go @@ -52,9 +52,6 @@ type DBCaches struct { // BoostOfIDs provides access to the boost of IDs list database cache. BoostOfIDs SliceCache[string] - // Client provides access to the gtsmodel Client database cache. - Client StructCache[*gtsmodel.Client] - // Conversation provides access to the gtsmodel Conversation database cache. Conversation StructCache[*gtsmodel.Conversation] @@ -489,32 +486,6 @@ func (c *Caches) initBoostOfIDs() { c.DB.BoostOfIDs.Init(0, cap) } -func (c *Caches) initClient() { - // Calculate maximum cache size. - cap := calculateResultCacheMax( - sizeofClient(), // model in-mem size. - config.GetCacheClientMemRatio(), - ) - - log.Infof(nil, "cache size = %d", cap) - - copyF := func(c1 *gtsmodel.Client) *gtsmodel.Client { - c2 := new(gtsmodel.Client) - *c2 = *c1 - return c2 - } - - c.DB.Client.Init(structr.CacheConfig[*gtsmodel.Client]{ - Indices: []structr.IndexConfig{ - {Fields: "ID"}, - }, - MaxSize: cap, - IgnoreErr: ignoreErrors, - Copy: copyF, - Invalidate: c.OnInvalidateClient, - }) -} - func (c *Caches) initConversation() { cap := calculateResultCacheMax( sizeofConversation(), // model in-mem size. diff --git a/internal/cache/invalidate.go b/internal/cache/invalidate.go index 555c73cd7..949238ec6 100644 --- a/internal/cache/invalidate.go +++ b/internal/cache/invalidate.go @@ -62,8 +62,7 @@ func (c *Caches) OnInvalidateAccount(account *gtsmodel.Account) { } func (c *Caches) OnInvalidateApplication(app *gtsmodel.Application) { - // Invalidate cached client of this application. - c.DB.Client.Invalidate("ID", app.ClientID) + // TODO: invalidate tokens? } func (c *Caches) OnInvalidateBlock(block *gtsmodel.Block) { @@ -79,11 +78,6 @@ func (c *Caches) OnInvalidateBlock(block *gtsmodel.Block) { c.DB.BlockIDs.Invalidate(block.AccountID) } -func (c *Caches) OnInvalidateClient(client *gtsmodel.Client) { - // Invalidate any tokens under this client. - c.DB.Token.Invalidate("ClientID", client.ID) -} - func (c *Caches) OnInvalidateConversation(conversation *gtsmodel.Conversation) { // Invalidate owning account's conversation list. c.DB.ConversationLastStatusIDs.Invalidate(conversation.AccountID) diff --git a/internal/cache/size.go b/internal/cache/size.go index c96a3cd2e..1c8c5fe2e 100644 --- a/internal/cache/size.go +++ b/internal/cache/size.go @@ -302,15 +302,14 @@ func sizeofAccountStats() uintptr { func sizeofApplication() uintptr { return uintptr(size.Of(>smodel.Application{ - ID: exampleID, - CreatedAt: exampleTime, - UpdatedAt: exampleTime, - Name: exampleUsername, - Website: exampleURI, - RedirectURI: exampleURI, - ClientID: exampleID, - ClientSecret: exampleID, - Scopes: exampleTextSmall, + ID: exampleID, + Name: exampleUsername, + Website: exampleURI, + RedirectURIs: []string{exampleURI}, + ClientID: exampleID, + ClientSecret: exampleID, + Scopes: exampleTextSmall, + ManagedByUserID: exampleID, })) } @@ -325,17 +324,6 @@ func sizeofBlock() uintptr { })) } -func sizeofClient() uintptr { - return uintptr(size.Of(>smodel.Client{ - ID: exampleID, - CreatedAt: exampleTime, - UpdatedAt: exampleTime, - Secret: exampleID, - Domain: exampleURI, - UserID: exampleID, - })) -} - func sizeofConversation() uintptr { return uintptr(size.Of(>smodel.Conversation{ ID: exampleID, @@ -752,8 +740,7 @@ func sizeofThreadMute() uintptr { func sizeofToken() uintptr { return uintptr(size.Of(>smodel.Token{ ID: exampleID, - CreatedAt: exampleTime, - UpdatedAt: exampleTime, + LastUsed: exampleTime, ClientID: exampleID, UserID: exampleID, RedirectURI: exampleURI, |
