Index: storage/common/blob_storage/blob_storage_constants.h |
diff --git a/storage/common/blob_storage/blob_storage_constants.h b/storage/common/blob_storage/blob_storage_constants.h |
index f51b012bc07c7b9570688eb9d516b4dd557b4516..ec354bc0d343b12d9af4af5a7f651f9f6bf7db38 100644 |
--- a/storage/common/blob_storage/blob_storage_constants.h |
+++ b/storage/common/blob_storage/blob_storage_constants.h |
@@ -23,8 +23,10 @@ constexpr uint64_t kDefaultMaxPageFileSize = 100ull * 1024 * 1024; |
#if defined(OS_ANDROID) |
// On minimal Android maximum in-memory space can be as low as 5MB. |
constexpr uint64_t kDefaultMinPageFileSize = 5ull * 1024 * 1024 / 2; |
+constexpr uint64_t kDefaultMinPageFileSizeUnderPressure = 100 * 1024; |
#else |
constexpr uint64_t kDefaultMinPageFileSize = 5ull * 1024 * 1024; |
+constexpr uint64_t kDefaultMinPageFileSizeUnderPressure = 1ull * 1024 * 1024; |
#endif |
// All sizes are in bytes. |
@@ -61,6 +63,10 @@ struct STORAGE_COMMON_EXPORT BlobStorageLimits { |
// This is the minimum file size we can use when paging blob items to disk. |
// We combine items until we reach at least this size. |
uint64_t min_page_file_size = kDefaultMinPageFileSize; |
+ // Minimum page file size to use when under memory pressure (to avoid causing |
+ // peaks due to file write buffers). |
+ uint64_t min_page_file_size_under_pressure = |
+ kDefaultMinPageFileSizeUnderPressure; |
// This is the maximum file size we can create. |
uint64_t max_file_size = kDefaultMaxPageFileSize; |
}; |