forked from microsoft/FluidFramework
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
server: add more Ephemeral Container optimizations (microsoft#19349)
## Description We need to trim down as many unnecessary Redis API calls as possible in the Ephemeral Container scenario. This PR adds the following optimizations: 1. **Stat Optimization** (behind flag): Uses `strlen` instead of `get` to check if a path exists and if it's a directory or file. Empty files are assumed to be directories. 2. **Disable Persist Latest Full Summary** (behind flag): Disables storing the latest full summary as its own blob in RedisFs, because it's redundant to Historian's Redis cache. 3. **Disable Delete Summary on Deli Close** (behind flag): Disables Deli's call to Historian/Gitrest to proactively delete an ephemeral container's summaries on session end because they will be cleaned up by TTL eventually. 4. **HashMap "rootDir" optimizations**: Don't bother getting/setting fields that are included in the hashmap's key, because those are always directories with an empty value. 5. **HashMap "expire" optmization**: Update expire once on hashmap creation and never again so that we don't keep calling `expire` everytime a recursive mkdir is called.
- Loading branch information
Showing
15 changed files
with
168 additions
and
43 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.