Go to the documentation of this file. 1 #ifndef STORAGE_FILEMANAGER_PRIVATE_H
2 #define STORAGE_FILEMANAGER_PRIVATE_H
25 constexpr
size_t MaxFileSize = (size_t) 64 * 1024 * 1024 * 1024;
55 static_assert(
FileIdBits <= 19,
"we support at most 2^19 files at this time");
88 #define DataFileNameLength 3
144 #endif // STORAGE_FILEMANAGER_PRIVATE_H
constexpr PageNumber DataFileIdAndPageIdGetPageNumber(uint64_t fsfileid, PageNumber fspid)
Definition: FileManager_private.h:78
constexpr const size_t PAGE_SIZE
Definition: tdb_base.h:159
constexpr PageNumber INVALID_PID
The invalid page number.
Definition: tdb_base.h:236
constexpr PageNumber PageGroupSize
Size of allocation in pages.
Definition: FileManager_private.h:19
constexpr PageNumber MaxNumPagesPerFile
Maximum number of pages in a single data file.
Definition: FileManager_private.h:28
constexpr PageNumber RESERVED_PID
An invalid page number reserved for file manager internal use.
Definition: tdb_base.h:243
PageNumber m_fdir1_pid
Definition: FileManager_private.h:102
atomic< PageNumber > m_last_pg
Definition: FileManager_private.h:93
PageNumber m_first_pid
The first page ID of this file.
Definition: FileManager_private.h:128
Definition: FileManager_private.h:91
atomic< PageNumber > m_fp_list
Definition: FileManager_private.h:96
constexpr int FileIdBits
Definition: FileManager.h:105
atomic< PageNumber > m_pid[1023]
Definition: FileManager_private.h:117
constexpr size_t MaxFileSize
Maximum size of a single data file.
Definition: FileManager_private.h:25
constexpr FileId FileIdGetDir1Offset(FileId fid)
Definition: FileManager_private.h:58
MetaPageHeaderData m_ph
Definition: FileManager_private.h:100
constexpr uint64_t DBFILE_MAGIC
Definition: FileManager_private.h:8
Definition: FileManager_private.h:115
constexpr uint64_t MaxNumDataFiles
Maximum number of data files.
Definition: FileManager_private.h:31
constexpr PageNumber FM_META_PID
The FM meta page is always the first page in the file.
Definition: FileManager_private.h:16
uint32_t FileId
The file ID.
Definition: tdb_base.h:222
PageHeaderData m_ph
Definition: FileManager_private.h:122
atomic< PageNumber > m_last_pid
The last page ID of this file.
Definition: FileManager_private.h:136
constexpr PageNumber PageNumberGetDataFilePageId(PageNumber pid)
Definition: FileManager_private.h:73
constexpr FileId FileIdGetDir2Offset(FileId fid)
Definition: FileManager_private.h:63
uint64_t m_magic
Definition: FileManager_private.h:101
#define DataFileNameLength
The length of the file name of main data files.
Definition: FileManager_private.h:88
Definition: FileManager_private.h:99
MetaPageHeaderData m_ph
Definition: FileManager_private.h:116
FreePageList m_fpl
Definition: FileManager_private.h:103
atomic< FileId > m_last_free_fid
m_last_free_fid serves as a hint to locate the last allocated free file id.
Definition: FileManager_private.h:112
constexpr PageNumber PENDING_CREATION_PID
Definition: FileManager_private.h:9
constexpr uint64_t PageNumberGetDataFileId(PageNumber pid)
Definition: FileManager_private.h:68
Definition: FileManager_private.h:121
FreePageList m_fpl
The free page list of this file.
Definition: FileManager_private.h:139
constexpr PageNumber MaxPageNumber
The maximum valid page number.
Definition: tdb_base.h:248
atomic< PageNumber > m_next_fp_in_last_pg
Definition: FileManager_private.h:92
uint32_t PageNumber
Definition: tdb_base.h:214