mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
MDEV-14372: Fix and enable rocksdb.information_schema test
- Make Rdb_binlog_manager::unpack_value to not have a stack overrun when it is reading invalid data (which it currently does as we in MariaDB do not store binlog coordinates under BINLOG_INFO_INDEX_NUMBER, see comments in MDEV-14892 for details). - We may need to store these coordinates in the future, so instead of removing the call of this function, let's make it work properly for all possible inputs.
This commit is contained in:
@@ -46,6 +46,8 @@ class Rdb_field_packing;
|
||||
class Rdb_cf_manager;
|
||||
class Rdb_ddl_manager;
|
||||
|
||||
const uint32_t GTID_BUF_LEN = 60;
|
||||
|
||||
/*
|
||||
@brief
|
||||
Field packing context.
|
||||
@@ -1154,7 +1156,8 @@ private:
|
||||
rocksdb::Slice pack_value(uchar *const buf, const char *const binlog_name,
|
||||
const my_off_t &binlog_pos,
|
||||
const char *const binlog_gtid) const;
|
||||
bool unpack_value(const uchar *const value, char *const binlog_name,
|
||||
bool unpack_value(const uchar *const value, size_t value_size,
|
||||
char *const binlog_name,
|
||||
my_off_t *const binlog_pos, char *const binlog_gtid) const;
|
||||
|
||||
std::atomic<Rdb_tbl_def *> m_slave_gtid_info_tbl;
|
||||
|
Reference in New Issue
Block a user