From a8e6bdfa33f3232ebc8f241b9c90e4da9191a627 Mon Sep 17 00:00:00 2001 From: kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com> Date: Fri, 3 Mar 2023 23:02:23 +0000 Subject: [performance] cache media attachments (#1525) * replace concurrency worker pools with base models in State.Workers, update code and tests accordingly * add media attachment caching, slightly tweak default cache config * further tweak default cache config values * replace other media attachment db calls to go through cache * update envparsing test * fix delete media attachment sql * fix media sql query * invalidate cached media entries during status create / update * fix envparsing test * fix typo in panic log message... * add 'updated_at' column during UpdateAttachment * remove unused func --------- Signed-off-by: kim --- internal/config/helpers.gen.go | 75 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) (limited to 'internal/config/helpers.gen.go') diff --git a/internal/config/helpers.gen.go b/internal/config/helpers.gen.go index 41c56a571..5ea7b61b6 100644 --- a/internal/config/helpers.gen.go +++ b/internal/config/helpers.gen.go @@ -2426,6 +2426,81 @@ func GetCacheGTSEmojiCategorySweepFreq() time.Duration { // SetCacheGTSEmojiCategorySweepFreq safely sets the value for global configuration 'Cache.GTS.EmojiCategorySweepFreq' field func SetCacheGTSEmojiCategorySweepFreq(v time.Duration) { global.SetCacheGTSEmojiCategorySweepFreq(v) } +// GetCacheGTSMediaMaxSize safely fetches the Configuration value for state's 'Cache.GTS.MediaMaxSize' field +func (st *ConfigState) GetCacheGTSMediaMaxSize() (v int) { + st.mutex.Lock() + v = st.config.Cache.GTS.MediaMaxSize + st.mutex.Unlock() + return +} + +// SetCacheGTSMediaMaxSize safely sets the Configuration value for state's 'Cache.GTS.MediaMaxSize' field +func (st *ConfigState) SetCacheGTSMediaMaxSize(v int) { + st.mutex.Lock() + defer st.mutex.Unlock() + st.config.Cache.GTS.MediaMaxSize = v + st.reloadToViper() +} + +// CacheGTSMediaMaxSizeFlag returns the flag name for the 'Cache.GTS.MediaMaxSize' field +func CacheGTSMediaMaxSizeFlag() string { return "cache-gts-media-max-size" } + +// GetCacheGTSMediaMaxSize safely fetches the value for global configuration 'Cache.GTS.MediaMaxSize' field +func GetCacheGTSMediaMaxSize() int { return global.GetCacheGTSMediaMaxSize() } + +// SetCacheGTSMediaMaxSize safely sets the value for global configuration 'Cache.GTS.MediaMaxSize' field +func SetCacheGTSMediaMaxSize(v int) { global.SetCacheGTSMediaMaxSize(v) } + +// GetCacheGTSMediaTTL safely fetches the Configuration value for state's 'Cache.GTS.MediaTTL' field +func (st *ConfigState) GetCacheGTSMediaTTL() (v time.Duration) { + st.mutex.Lock() + v = st.config.Cache.GTS.MediaTTL + st.mutex.Unlock() + return +} + +// SetCacheGTSMediaTTL safely sets the Configuration value for state's 'Cache.GTS.MediaTTL' field +func (st *ConfigState) SetCacheGTSMediaTTL(v time.Duration) { + st.mutex.Lock() + defer st.mutex.Unlock() + st.config.Cache.GTS.MediaTTL = v + st.reloadToViper() +} + +// CacheGTSMediaTTLFlag returns the flag name for the 'Cache.GTS.MediaTTL' field +func CacheGTSMediaTTLFlag() string { return "cache-gts-media-ttl" } + +// GetCacheGTSMediaTTL safely fetches the value for global configuration 'Cache.GTS.MediaTTL' field +func GetCacheGTSMediaTTL() time.Duration { return global.GetCacheGTSMediaTTL() } + +// SetCacheGTSMediaTTL safely sets the value for global configuration 'Cache.GTS.MediaTTL' field +func SetCacheGTSMediaTTL(v time.Duration) { global.SetCacheGTSMediaTTL(v) } + +// GetCacheGTSMediaSweepFreq safely fetches the Configuration value for state's 'Cache.GTS.MediaSweepFreq' field +func (st *ConfigState) GetCacheGTSMediaSweepFreq() (v time.Duration) { + st.mutex.Lock() + v = st.config.Cache.GTS.MediaSweepFreq + st.mutex.Unlock() + return +} + +// SetCacheGTSMediaSweepFreq safely sets the Configuration value for state's 'Cache.GTS.MediaSweepFreq' field +func (st *ConfigState) SetCacheGTSMediaSweepFreq(v time.Duration) { + st.mutex.Lock() + defer st.mutex.Unlock() + st.config.Cache.GTS.MediaSweepFreq = v + st.reloadToViper() +} + +// CacheGTSMediaSweepFreqFlag returns the flag name for the 'Cache.GTS.MediaSweepFreq' field +func CacheGTSMediaSweepFreqFlag() string { return "cache-gts-media-sweep-freq" } + +// GetCacheGTSMediaSweepFreq safely fetches the value for global configuration 'Cache.GTS.MediaSweepFreq' field +func GetCacheGTSMediaSweepFreq() time.Duration { return global.GetCacheGTSMediaSweepFreq() } + +// SetCacheGTSMediaSweepFreq safely sets the value for global configuration 'Cache.GTS.MediaSweepFreq' field +func SetCacheGTSMediaSweepFreq(v time.Duration) { global.SetCacheGTSMediaSweepFreq(v) } + // GetCacheGTSMentionMaxSize safely fetches the Configuration value for state's 'Cache.GTS.MentionMaxSize' field func (st *ConfigState) GetCacheGTSMentionMaxSize() (v int) { st.mutex.Lock() -- cgit v1.2.3