LLVM: llvm::cas::ondisk Namespace Reference (original) (raw)
| Classes | |
|---|---|
| class | DatabaseFile |
| Encapsulate a database file, which: More... | |
| class | InternalRef |
| Standard 8 byte reference inside OnDiskGraphDB. More... | |
| class | InternalRef4B |
| Compact 4 byte reference inside OnDiskGraphDB for smaller references. More... | |
| class | InternalRefArrayRef |
| Array of internal node references. More... | |
| class | object_refs_iterator |
| Iterator for ObjectID. More... | |
| class | ObjectHandle |
| Handle for a loaded node object. More... | |
| class | ObjectID |
| Reference to a node. More... | |
| class | OnDiskGraphDB |
| On-disk CAS nodes database, independent of a particular hashing algorithm. More... | |
| class | OnDiskKeyValueDB |
| An on-disk key-value data store with the following properties: More... | |
| class | TableHandle |
| Generic handle for a table. More... | |
| class | UnifiedOnDiskCache |
| A unified CAS nodes and key-value database, using on-disk storage for both. More... |
| Functions | |
|---|---|
| Error | createTableConfigError (std::errc ErrC, StringRef Path, StringRef TableName, const Twine &Msg) |
| Error | checkTable (StringRef Label, size_t Expected, size_t Observed, StringRef Path, StringRef TrieName) |
| Expected< std::optional< uint64_t > > | getOverriddenMaxMappingSize () |
| Retrieves an overridden maximum mapping size for CAS files, if any, speicified by LLVM_CAS_MAX_MAPPING_SIZE in the environment or set by setMaxMappingSize(). | |
| LLVM_ABI_FOR_TEST void | setMaxMappingSize (uint64_t Size) |
| Set MaxMappingSize for ondisk CAS. | |
| bool | useSmallMappingSize (const Twine &Path) |
| Whether to use a small file mapping for ondisk databases created in Path. | |
| std::error_code | lockFileThreadSafe (int FD, llvm::sys::fs::LockKind Kind) |
| Thread-safe alternative to sys::fs::lockFile. | |
| std::error_code | unlockFileThreadSafe (int FD) |
| Thread-safe alternative to sys::fs::unlockFile. | |
| std::error_code | tryLockFileThreadSafe (int FD, std::chrono::milliseconds Timeout=std::chrono::milliseconds(0), llvm::sys::fs::LockKind Kind=llvm::sys::fs::LockKind::Exclusive) |
| Thread-safe alternative to sys::fs::tryLockFile. | |
| Expected< size_t > | preallocateFileTail (int FD, size_t CurrentSize, size_t NewSize) |
| Allocate space for the file FD on disk, if the filesystem supports it. | |
| Expected< uint64_t > | getBootTime () |
| Get boot time for the OS. |
| Variables | |
|---|---|
| constexpr StringLiteral | CASFormatVersion = "v1" |
| The version for all the ondisk database files. |
◆ MappedFileRegion
◆ object_refs_range
◆ checkTable()
◆ createTableConfigError()
◆ getBootTime()
◆ getOverriddenMaxMappingSize()
| Expected< std::optional< uint64_t > > llvm::cas::ondisk::getOverriddenMaxMappingSize | ( | ) |
|---|
Retrieves an overridden maximum mapping size for CAS files, if any, speicified by LLVM_CAS_MAX_MAPPING_SIZE in the environment or set by setMaxMappingSize().
If the value from environment is unreadable, returns an error.
Definition at line 43 of file OnDiskCommon.cpp.
References llvm::createStringError(), llvm::StringRef::getAsInteger(), llvm::sys::Process::GetEnv(), llvm::inconvertibleErrorCode(), OnDiskCASMaxMappingSize, Size, and llvm::Error::success().
Referenced by llvm::cas::ondisk::OnDiskGraphDB::open(), and llvm::cas::ondisk::OnDiskKeyValueDB::open().
◆ lockFileThreadSafe()
◆ preallocateFileTail()
| Expected< size_t > llvm::cas::ondisk::preallocateFileTail | ( | int | FD, |
|---|---|---|---|
| size_t | CurrentSize, | ||
| size_t | NewSize ) |
◆ setMaxMappingSize()
| void llvm::cas::ondisk::setMaxMappingSize | ( | uint64_t | Size | ) |
|---|
Set MaxMappingSize for ondisk CAS.
This function is not thread-safe and should be set before creaing any ondisk CAS and does not affect CAS already created. Set value 0 to use default size.
Definition at line 69 of file OnDiskCommon.cpp.
References OnDiskCASMaxMappingSize, and Size.
◆ tryLockFileThreadSafe()
◆ unlockFileThreadSafe()
| std::error_code llvm::cas::ondisk::unlockFileThreadSafe | ( | int | FD | ) |
|---|
◆ useSmallMappingSize()
Whether to use a small file mapping for ondisk databases created in Path.
For some file system that doesn't support sparse file, use a smaller file mapping to avoid consuming too much disk space on creation.
Definition at line 172 of file OnDiskCommon.cpp.
References P.
Referenced by llvm::cas::ondisk::OnDiskGraphDB::open().