MySQL 8.0.40
Source Code Documentation
lob::zReader Struct Reference

Fetch compressed BLOB. More...

#include <lob0lob.h>

Public Member Functions

 zReader (const ReadContext &ctx)
 Constructor. More...
 
dberr_t fetch ()
 Fetch the BLOB. More...
 
dberr_t fetch_page ()
 Fetch one BLOB page. More...
 
ulint length () const
 Get the length of data that has been read. More...
 

Private Member Functions

int setup_zstream ()
 Do setup of the zlib stream. More...
 
bool assert_empty_local_prefix ()
 Assert that the local prefix is empty. More...
 

Private Attributes

ReadContext m_rctx
 
ulint m_remaining
 Bytes yet to be read. More...
 
z_stream m_stream
 The zlib stream used to uncompress while fetching blob. More...
 
mem_heap_tm_heap
 The memory heap that will be used by zlib allocator. More...
 
buf_page_tm_bpage
 
ulint m_page_type_ex
 The expected page type. More...
 

Detailed Description

Fetch compressed BLOB.

Constructor & Destructor Documentation

◆ zReader()

lob::zReader::zReader ( const ReadContext ctx)
inlineexplicit

Constructor.

Member Function Documentation

◆ assert_empty_local_prefix()

bool lob::zReader::assert_empty_local_prefix ( )
private

Assert that the local prefix is empty.

For compressed row format, there is no local prefix stored. This function doesn't return if the local prefix is non-empty.

Returns
true if local prefix is empty

◆ fetch()

dberr_t lob::zReader::fetch ( )

Fetch the BLOB.

Returns
DB_SUCCESS on success.
DB_SUCCESS on success, DB_FAIL on error.

◆ fetch_page()

dberr_t lob::zReader::fetch_page ( )

Fetch one BLOB page.

Returns
DB_SUCCESS on success.

◆ length()

ulint lob::zReader::length ( ) const
inline

Get the length of data that has been read.

Returns
the length of data that has been read.

◆ setup_zstream()

int lob::zReader::setup_zstream ( )
private

Do setup of the zlib stream.

Returns
code returned by zlib.

Member Data Documentation

◆ m_bpage

buf_page_t* lob::zReader::m_bpage
private

◆ m_heap

mem_heap_t* lob::zReader::m_heap
private

The memory heap that will be used by zlib allocator.

◆ m_page_type_ex

ulint lob::zReader::m_page_type_ex
private

The expected page type.

◆ m_rctx

ReadContext lob::zReader::m_rctx
private

◆ m_remaining

ulint lob::zReader::m_remaining
private

Bytes yet to be read.

◆ m_stream

z_stream lob::zReader::m_stream
private

The zlib stream used to uncompress while fetching blob.


The documentation for this struct was generated from the following files: