RockIoState.cc
Go to the documentation of this file.
152Rock::IoState::handleReadCompletion(Rock::ReadRequest &request, const int rlen, const int errFlag)
162 debugs(79, 5, '#' << request.id << " read " << rlen << " bytes at " << offset_ << " for " << *e);
416 StoreIOStateCb(StoreIOState::STIOCB *cb, void *data, int err, const Rock::IoState::Pointer &anSio):
RefCount< AsyncCallT< Dialer > > asyncCall(int aDebugSection, int aDebugLevel, const char *aName, const Dialer &aDialer)
Definition: AsyncCall.h:155
std::ostream & CurrentException(std::ostream &os)
prints active (i.e., thrown but not yet handled) exception
Definition: TextException.cc:69
Definition: AsyncCall.h:40
Definition: AsyncCall.h:106
static void Broadcast(const StoreEntry &e, const bool includingThisWorker=false)
notify other workers about changes in entry state (e.g., new data)
Definition: CollapsedForwarding.cc:70
Definition: StoreMap.h:57
Definition: StoreMap.h:29
Definition: ReadRequest.h:16
Definition: RefCount.h:27
Definition: RockDbCell.h:23
bool write(char const *buf, size_t size, off_t offset, FREE *free_func) override
wraps tryWrite() to handle deep write failures centrally and safely
Definition: RockIoState.cc:186
const Ipc::StoreMapSlice & currentReadableSlice() const
convenience wrapper returning the map slot we are reading now
Definition: RockIoState.cc:93
const Ipc::StoreMapAnchor & readAnchor() const
Definition: RockIoState.cc:78
bool expectedReply(const IoXactionId receivedId)
Definition: RockIoState.cc:335
void read_(char *buf, size_t size, off_t offset, STRCB *callback, void *callback_data) override
Definition: RockIoState.cc:99
size_t writeToBuffer(char const *buf, size_t size)
Definition: RockIoState.cc:249
IoState(Rock::SwapDir::Pointer &aDir, StoreEntry *e, StoreIOState::STFNCB *cbFile, StoreIOState::STIOCB *cbIo, void *data)
Definition: RockIoState.cc:25
void callReaderBack(const char *buf, int rlen)
report (already sanitized/checked) I/O results to the read initiator
Definition: RockIoState.cc:169
void finishedWriting(const int errFlag)
called by SwapDir::writeCompleted() after the last write and on error
Definition: RockIoState.cc:351
void tryWrite(char const *buf, size_t size, off_t offset)
Definition: RockIoState.cc:214
void handleReadCompletion(Rock::ReadRequest &request, const int rlen, const int errFlag)
forwards read data (or an error) to the reader that initiated this I/O
Definition: RockIoState.cc:152
Definition: RockIoRequests.h:23
IoXactionId id
identifies this read transaction for the requesting IoState
Definition: RockIoRequests.h:31
Definition: RockIoRequests.h:35
SlotId sidPrevious
slot that will point to sidCurrent in the cache_dir map
Definition: RockIoRequests.h:45
Definition: Store.h:42
Definition: RockIoState.cc:414
StoreIOStateCb(StoreIOState::STIOCB *cb, void *data, int err, const Rock::IoState::Pointer &anSio)
Definition: RockIoState.cc:416
StoreIOStateCb(const StoreIOStateCb &cb)
Definition: RockIoState.cc:426
Definition: StoreIOState.h:18
void STFNCB(void *their_data, int errflag, StoreIOState::Pointer self)
Definition: StoreIOState.h:41
void STRCB(void *their_data, const char *buf, ssize_t len, StoreIOState::Pointer self)
Definition: StoreIOState.h:29
void STIOCB(void *their_data, int errflag, StoreIOState::Pointer self)
Definition: StoreIOState.h:51
Definition: WriteRequest.h:17
Definition: cbdata.cc:38
int store_open_disk_fd
uint64_t IoXactionId
unique (within a given IoState object scope) I/O transaction identifier
Definition: forward.h:36