mirror of
https://github.com/matrix-org/dendrite
synced 2024-12-18 00:43:43 +01:00
a466e9e9cc
* Experimental LRU cache for room versions * Don't accidentally try to type-assert nil * Also reduce hits on query API * Use hashicorp implementation which mutexes for us * Define const for max cache entries * Rename to be specifically immutable, panic if we try to mutate a cache entry * Review comments * Remove nil guards, give roomserver integration test a cache * go mod tidy
12 lines
291 B
Go
12 lines
291 B
Go
package caching
|
|
|
|
import "github.com/matrix-org/gomatrixserverlib"
|
|
|
|
const (
|
|
RoomVersionMaxCacheEntries = 128
|
|
)
|
|
|
|
type ImmutableCache interface {
|
|
GetRoomVersion(roomId string) (gomatrixserverlib.RoomVersion, bool)
|
|
StoreRoomVersion(roomId string, roomVersion gomatrixserverlib.RoomVersion)
|
|
}
|