mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2025-10-29 14:52:26 -05:00
[feature] Refactor tokens, allow multiple app redirect_uris (#3849)
* [feature] Refactor tokens, allow multiple app redirect_uris * move + tweak handlers a bit * return error for unset oauth2.ClientStore funcs * wrap UpdateToken with cache * panic handling * cheeky little time optimization * unlock on error
This commit is contained in:
parent
c80810eae8
commit
1b37944f8b
77 changed files with 963 additions and 594 deletions
29
internal/cache/db.go
vendored
29
internal/cache/db.go
vendored
|
|
@ -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.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue