Gcache exposes seqno_max and seqno_locked. The transaction mapping is done at higher levels I think.
However, I see
std::ostringstream pstream;
pstream << "* GCache data file *" << std::endl << "--------------------" << std::endl << "Version : " << header[HEADER_VERSION] << std::endl << "Size : " << header[FILE_SIZE] << "bytes" << std::endl << "Closed : " << (header[FILE_OPEN]?"no":"yes") << std::endl << "Data offset : " << header[DATA_OFFSET] << std::endl << "First buffer : " << header[FIRST_OFFSET] << std::endl << "Next buffer : " << header[NEXT_OFFSET] << std::endl << "Min. seqno : " << header[SEQNO_MIN] << std::endl << "Max. seqno : " << header[SEQNO_MAX] << std::endl << "Ordered buffers : " << (header[SEQNO_MAX] - header[SEQNO_MIN]) << std::endl << "--------------------" << std::endl;
strncpy (preamble, pstream.str().c_str(), PREAMBLE_LEN - 1); preamble[PREAMBLE_LEN - 1] = '\0';
which is unused, probably can be used to dump to log.
Gcache exposes seqno_max and seqno_locked. The transaction mapping is done at higher levels I think.
However, I see
pstream ------- ------- " << std::endl HEADER_ VERSION] << std::endl FILE_OPEN] ?"no":" yes") << std::endl FIRST_OFFSET] << std::endl ------- ------- " << std::endl;
<< "* GCache data file *" << std::endl
<< "------
<< "Version : " << header[
<< "Size : " << header[FILE_SIZE] << "bytes" << std::endl
<< "Closed : " << (header[
<< "Data offset : " << header[DATA_OFFSET] << std::endl
<< "First buffer : " << header[
<< "Next buffer : " << header[NEXT_OFFSET] << std::endl
<< "Min. seqno : " << header[SEQNO_MIN] << std::endl
<< "Max. seqno : " << header[SEQNO_MAX] << std::endl
<< "Ordered buffers : " << (header[SEQNO_MAX] - header[SEQNO_MIN]) << std::endl
<< "------
strncpy (preamble, pstream. str().c_ str(), PREAMBLE_LEN - 1);
preamble[ PREAMBLE_ LEN - 1] = '\0';
which is unused, probably can be used to dump to log.