Actions
Idea #13110
open[WebDAV] WebDAV performance enhancements
Start date:
Due date:
Story points:
-
Release:
Release relationship:
Auto
Description
From https://dev.arvados.org/issues/12483#note-38
- Cache filesystem objects in keep-web, instead of rebuilding from manifest on each request → less time, more RAM
- Reduce memory use (e.g., pass keepclient pointer into storedSegment methods instead of keeping a copy in the struct)
- Incremental loading (don't populate a dirnode until someone accesses it)
- Cache/evict partial data blocks
- Test/benchmark using a variety of webdav clients (Windows, linux davfs, OSX?)
From #13272:
Cache the filesystem layout, so a sequence of N webdav requests with the same token and same/overlapping paths don't need to retrieve the whole filesystem layout from API server N times
Use a single cache entry for any given {collection, token} tuple, regardless of whether it's accessed via /c=UUID/, /by_id/UUID/, /by_id/PDH/, /users/alice/foo/, etc.
Actions