1 #ifndef __LOGARCHIVE_WRITER_H 2 #define __LOGARCHIVE_WRITER_H 58 maxLSNInRun(
lsn_t::null),
109 bool hasPendingBlocks();
112 writer->resetCurrentRun();
122 static lsn_t getLSNFromBlock(
const char* b);
124 static size_t getEndOfBlock(
const char* b);
126 static PageID getMaxPIDFromBlock(
const char* b);
185 #endif // __LOGARCHIVE_WRITER_H
size_t pos
Definition: logarchive_writer.h:139
void resetCurrentRun()
Definition: logarchive_writer.h:48
PageID currentPID
Definition: logarchive_writer.h:149
lsn_t maxLSNInRun
Definition: logarchive_writer.h:30
Definition: ringbuffer.h:38
run_number_t lastRun
Definition: logarchive_writer.h:147
WriterThread * writer
Definition: logarchive_writer.h:133
ArchiveIndex * archIndex
Definition: logarchive_writer.h:135
run_number_t currentRun
Definition: logarchive_writer.h:32
Definition: thread_wrapper.h:16
Asynchronous writer thread to produce run files on disk.
Definition: logarchive_writer.h:23
AsyncRingBuffer * writebuf
Definition: logarchive_writer.h:131
std::vector< pair< PageID, size_t > > buckets
Definition: logarchive_writer.h:164
static const lsn_t null
Definition: lsn.h:371
lsn_t maxLSNInBlock
Definition: logarchive_writer.h:143
size_t currentPIDfpos
Definition: logarchive_writer.h:153
int32_t run_number_t
Definition: basics.h:50
Component that consumes a partially-sorted log record stream and generates indexed runs from it...
Definition: logarchive_writer.h:95
Encapsulates all file and I/O operations on the log archive.
Definition: logarchive_index.h:94
virtual void run()
Definition: logarchive_writer.cpp:205
Represents a transactional log record.
Definition: logrec.h:143
unsigned level
Definition: logarchive_writer.h:34
size_t currentPIDpos
Definition: logarchive_writer.h:151
PageID maxPIDInRun
Definition: logarchive_writer.h:36
WriterThread(AsyncRingBuffer *writebuf, ArchiveIndex *index, unsigned level)
Definition: logarchive_writer.h:54
size_t nextBucket
Definition: logarchive_writer.h:167
uint32_t PageID
Definition: basics.h:45
Log Sequence Number. See Log Sequence Numbers (LSN).
Definition: lsn.h:243
size_t fpos
Definition: logarchive_writer.h:141
virtual ~WriterThread()
Definition: logarchive_writer.h:63
size_t blockSize
Definition: logarchive_writer.h:137
bool enableCompression
Definition: logarchive_writer.h:157
PageID getCurrentMaxPID()
Definition: logarchive_writer.h:115
ArchiveIndex * getIndex()
Definition: logarchive_writer.h:41
lsn_t currentPIDprevLSN
Definition: logarchive_writer.h:155
int maxLSNLength
Definition: logarchive_writer.h:145
unsigned level
Definition: logarchive_writer.h:169
char * dest
Definition: logarchive_writer.h:129
AsyncRingBuffer * buf
Definition: logarchive_writer.h:26
size_t bucketSize
Definition: logarchive_writer.h:161
size_t spaceToReserve
Definition: logarchive_writer.h:174
void resetWriter()
Definition: logarchive_writer.h:111
const T min(const T x, const T y)
Definition: w_minmax.h:52
ArchiveIndex * index
Definition: logarchive_writer.h:28
PageID maxPID
Definition: logarchive_writer.h:171