-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Shared Chunk Cache for all DatasetArrays, CacheWeight for AlfuCache #7067
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe also change PR name?
util/src/main/scala/com/scalableminds/util/cache/LRUConcurrentCache.scala
Outdated
Show resolved
Hide resolved
...nossos-datastore/app/com/scalableminds/webknossos/datastore/services/BinaryDataService.scala
Show resolved
Hide resolved
...nossos-datastore/app/com/scalableminds/webknossos/datastore/services/BinaryDataService.scala
Show resolved
Hide resolved
|
||
bucketProviderCache.clear(bucketProviderPredicate) | ||
|
||
def chunkContentsPredicate(key: String): Boolean = |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not totally happy with this being placed here, since the definition of the key is somewhere else. Maybe move this predicate to where the key is defined and only use it here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm, yes I see what you mean. However, the same would be the case for the other two predicate functions here. So we could either extract each of those so that there is only one place for each cache, where cache key building happens. This would lead to less distributed knowledge on how the keys work. However, I also like all of these methods being together here, since it is less distributed knowledge about the fact that these caches should be cleared dataset-wise or layer-wise. So it’s some fragmentation either way. If you’re ok with it, I’d leave it as it is for the moment.
…esign-right-sidebar * 'master' of github.com:scalableminds/webknossos: added Youtube videos to docs Log dataset uploads (with no conversion) to slack (#7157) Added "Automation Tutorial" to docs (#7160) fix logo image in README.md Second try for “Async IO for HttpsDataVault, Fox Error Handling” (#7155) Revert "Async IO for HttpsDataVault, Fox Error Handling (#7137)" (#7154) Async IO for HttpsDataVault, Fox Error Handling (#7137) Fix vault path for precomputed datasets (#7151) Add extended keyboard shortcut mode via ctrl + k for tool shortcuts (#7112) Shared Chunk Cache for all DatasetArrays, CacheWeight for AlfuCache (#7067)
datastore.cache.imageArrayChunks.maxSizeBytes
. Default is 2 GB, consider increasing for production.TODO
URL of deployed dev instance (used for testing):
Steps to test:
Issues: