libfoedus-core
FOEDUS Core Library
|
Definitions of IDs in this package and a few related constant values. More...
Definitions of IDs in this package and a few related constant values.
Definition in file hash_id.hpp.
#include <stdint.h>
#include <iosfwd>
#include "foedus/cxx11.hpp"
#include "foedus/storage/storage_id.hpp"
Go to the source code of this file.
Classes | |
struct | foedus::storage::hash::HashBinRange |
Represents a range of hash bins in a hash storage, such as what an intermediate page is responsible for. More... | |
Namespaces | |
foedus | |
Root package of FOEDUS (Fast Optimistic Engine for Data Unification Services). | |
foedus::storage | |
Storage Manager, which implements a couple of key/value stores. | |
foedus::storage::hash | |
Hashtable Storage, a concurrent hashtable. | |
Typedefs | |
typedef uint64_t | foedus::storage::hash::HashValue |
Represents a full 64-bit hash value calculated from a key. More... | |
typedef uint64_t | foedus::storage::hash::HashBin |
Represents a bin of a hash value. More... | |
typedef uint16_t | foedus::storage::hash::DataPageSlotIndex |
typedef uint16_t | foedus::storage::hash::KeyLength |
Represents a byte-length of a key in this package. More... | |
typedef uint16_t | foedus::storage::hash::PayloadLength |
Represents a byte-length of a payload in this package. More... | |
Functions | |
uint64_t | foedus::storage::hash::fanout_power (uint8_t exponent) |
uint8_t | foedus::storage::hash::bins_to_level (uint64_t bins) |
Variables | |
const uint16_t | foedus::storage::hash::kHashIntermediatePageHeaderSize = 64 |
Byte size of header in an intermediate page of hash storage. More... | |
const uint8_t | foedus::storage::hash::kHashIntermediatePageFanout |
Number of pointers in an intermediate page of hash storage. More... | |
const uint64_t | foedus::storage::hash::kFanout64 = kHashIntermediatePageFanout |
just to write the following concisely More... | |
const uint64_t | foedus::storage::hash::kHashMaxBins [] |
kHashTotalBins[n] gives the maximum number of hash bins n-level hash can hold. More... | |
const uint8_t | foedus::storage::hash::kHashMaxLevels = 8 |
Max level of intermediate pages. More... | |
const uint16_t | foedus::storage::hash::kHashDataPageHeaderSize = 128 |
Byte size of header in data page of hash storage. More... | |
const uint16_t | foedus::storage::hash::kHashDataPageDataSize = kPageSize - kHashDataPageHeaderSize |
Body data byte size in data page of hash storage. More... | |
const uint8_t | foedus::storage::hash::kHashMinBinBits = 7U |
Minimum number allowed for bin-bits. More... | |
const uint8_t | foedus::storage::hash::kHashMaxBinBits = 48U |
Maximum number allowed for bin-bits. More... | |
const HashBin | foedus::storage::hash::kInvalidHashBin = 1ULL << kHashMaxBinBits |
This value or larger never appears as a valid HashBin. More... | |
const DataPageSlotIndex | foedus::storage::hash::kSlotNotFound = 0xFFFFU |