20 Commits

Author SHA1 Message Date
José Varela
cc343fdf91 Improve cache performance by compressing records (#14833)
* Utils to compress/decompress data
Gzip was chosen because we want smaller data but quick algorithm since this will be ran for every request

* Compress system cache

* Decompress system cache

* Set/Get compressed cache for individual requests

* Switch from gzip to snappy, use json compression too

* Fix cache exp set/get

* Remove unused import

Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
2022-08-04 17:35:27 -04:00
Rijk van Zanten
3307bed5fd Improve cache reliability in DDL operations (#12400)
* Add TTL to schema cache

* Clear caches on unexpected errors in DDL

* Consistent return value use

* Don't set a default value for schema ttl
2022-04-01 13:24:20 -04:00
ian
5068ca096b Add lock for system cache (#12017)
* Add lock for system cache

* Add lock when forcing a flush

* Simplify code

Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
2022-03-18 15:54:02 -04:00
Rijk van Zanten
d84134c8a6 Don't force commandTimeout in redis based caches (#10773) 2021-12-30 15:32:05 -05:00
Rijk van Zanten
65291b95c4 Allow dynamic user variables to be used with filter rules (cont.) (#9376)
* Move permissions extraction to accountability

* Fix permissions retrieval for public user

* Fetch user / role context in permissions middleware

* Remove unnecessary parseFilter

* Rename schemaCache to systemCache

* Add permissions caching

* Add system cache invalidation on permission changes

* Improve caching perf by reducing scope

* Add note to docs

* Clarify compatibility with conditional fields/filters

* Fix lint warning

* Allow nested vars in system-filter-input

* Add custom getter function that resolves arrays

* Add is-dynamic-variable util

* Export new util

* Cleanup parse filter

* Fix build

* Move debounce up to use-items

* Remove unused prop

* 🧹

* Fix input pattern usage w/ vars

* Remove debounce from search-input, increase throttle
2021-11-03 16:56:16 -04:00
Rijk van Zanten
fb53ae6980 Don't flush schema cache on content update (#8056) 2021-09-15 15:46:12 -04:00
Azri Kahar
e29d803abe Align memcached configurations for multiple hosts (#7986)
* align memcached configurations for multiple hosts

* update reference
2021-09-13 12:48:26 -04:00
rijkvanzanten
3ec8d6443d Re-enable the default retrystrategy 2021-08-17 17:45:13 -04:00
Rijk van Zanten
917d575319 Flush caches on server (re)start (#7294) 2021-08-09 23:22:36 +02:00
Rijk van Zanten
faa71c7595 Add cache connection fallbacks (#7226) 2021-08-05 22:27:10 +02:00
rijkvanzanten
b9a857ccd7 Fix missing type signature 2021-06-22 21:08:28 -04:00
Rijk van Zanten
44082c60e1 Add schema caching (#6456)
* Rework cache handler to be function export

* Add default schema caching

* Add schema cache

* Auto purge schema cache on schema change from api

* Only set last_access value on login

* Add note on schema cache setting
2021-06-22 20:50:20 -04:00
rijkvanzanten
801e868554 Fix remaining eslint errors
h/t @paescuj
2021-04-29 15:55:12 -04:00
Nicola Krumschmidt
47b06dc99f Fix a typo in cache.ts 2020-12-01 18:48:26 +01:00
rijkvanzanten
5ddea5f74c Fix Redis cache 2020-11-10 16:43:40 -05:00
rijkvanzanten
9c9468798e Fix error logging in redis cache
Fixes #896
2020-11-05 14:18:42 -05:00
rijkvanzanten
85ca7b5d17 Run prettier 2020-09-22 16:11:28 -04:00
rijkvanzanten
e148583ed8 Support redis/memcached in cache 2020-09-08 19:08:46 -04:00
rijkvanzanten
a8552abc23 Treat sanitizedquery as frozen 2020-09-08 18:54:18 -04:00
rijkvanzanten
b19ffd960b Add response middleware and cache 2020-09-08 18:28:23 -04:00