Transients.h
Go to the documentation of this file.
API for adjusting external state when dirty map slice is being freed.
Definition: StoreMap.h:398
Definition: StoreMap.h:219
Definition: Store.h:42
High-level store statistics used by mgr:info action. Used inside PODs!
Definition: StoreStats.h:14
Definition: Controlled.h:19
Definition: Transients.h:28
int readers(const StoreEntry &e) const
number of entry readers some time ago
Definition: Transients.cc:297
bool hasWriter(const StoreEntry &)
whether we or somebody else is in the "writing to Transients" I/O state
Definition: Transients.cc:260
void monitorIo(StoreEntry *, const cache_key *, const Store::IoStatus)
Definition: Transients.cc:192
void addReaderEntry(StoreEntry &, const cache_key *)
Definition: Transients.cc:248
void noteFreeMapSlice(const Ipc::StoreMapSliceId sliceId) override
adjust slice-linked state before a locked Readable slice is erased
Definition: Transients.cc:268
TransientsMap * map
shared packed info indexed by Store keys, for creating new StoreEntries
Definition: Transients.h:103
void addWriterEntry(StoreEntry &, const cache_key *)
addEntry() helper used for cache entry creators/writers
Definition: Transients.cc:228
bool isWriter(const StoreEntry &) const
whether the entry is in "writing to Transients" I/O state
Definition: Transients.cc:376
void disconnect(StoreEntry &)
the caller is done writing or reading the given entry
Definition: Transients.cc:332
StoreEntry * findCollapsed(const sfileno xitIndex)
return a local, previously collapsed entry
Definition: Transients.cc:176
int64_t maxObjectSize() const override
the maximum size of a storable object; -1 if unlimited
Definition: Transients.cc:126
void addEntry(StoreEntry *, const cache_key *, const Store::IoStatus)
creates a new Transients entry
Definition: Transients.cc:211
bool markedForDeletion(const cache_key *) const
Definition: Transients.cc:363
void status(const StoreEntry &e, EntryStatus &entryStatus) const
copies current shared entry metadata into entryStatus
Definition: Transients.cc:274
uint64_t minSize() const override
the minimum size the store will shrink to via normal housekeeping
Definition: Transients.cc:99
void reference(StoreEntry &e) override
somebody needs this entry (many cache replacement policies need to know)
Definition: Transients.cc:133
void create() override
create system resources needed for this store to operate in the future
Definition: Transients.h:62
void maintain() override
perform regular periodic maintenance; TODO: move to UFSSwapDir::Maintain
Definition: Transients.cc:93
static int64_t EntryLimit()
calculates maximum number of entries we need to store and map
Definition: Transients.cc:356
bool isReader(const StoreEntry &) const
whether the entry is in "reading from Transients" I/O state
Definition: Transients.cc:370
void completeWriting(const StoreEntry &e)
called when the in-transit entry has been successfully cached
Definition: Transients.cc:286
uint64_t currentCount() const override
the total number of objects stored right now
Definition: Transients.cc:120
class Ping::pingStats_ stats