-
Notifications
You must be signed in to change notification settings - Fork 719
Clone Metadata Protocol
sunshine-Chun edited this page Mar 19, 2023
·
2 revisions

All metadata packets share the common header, which also matches the InnoDB clone metadata header format, coincidentally. There is no technical requirement to have the same format as InnoDB.
-
uint32_t version: currently constant1. -
uint32_t payload_len: the payload length without this header. -
uint32_t type: one ofLOCATOR_V1(constant0),FILE_NAME_MAP_V1(constant1),FILE_CHUNK_V1(constant2),ADD_ESTIMATE_V1(constant3).
This metadata packet does not have an associated data packet.
-
uint64_t id: a single monotonic ID, assigned to each created RocksDB snapshot, starting with1. The ID of0is reserver for the client-created locator that is used for version negotiation, in which case it is the sole payload field in the packet.
The id field, if non-zero, may be followed by the applier state which consists of a variable number of pairs. The number of pairs is determined by the payload_len field in the header.
-
uint64_t file_id: a clone file ID as established by aFILE_NAME_MAP_V1packet. -
uint64_t applied_offset: the clone has fully applied data up to this offset.
This metadata packet does not have an associated data packet.
uint64_t file_iduint64_t file_sizeuint32_t file_name_lengthchar[file_name_length] file_name
This metadata packet is associated with the data packet that carries the file data payload.
uint64_t file_iduint64_t chunk_length
This metadata packet does not have an associated data packet.
-
uint64_t estimate_delta: the size in bytes of clone MyRocks data, to be added to the clone size estimate value inperformance_schema.clone_progresstable.
Documentation license here.
Installation
MyRocks
- Overview
- Transaction
- Backup
- Performance Tuning
- Monitoring
- Migration
- Internals
- Vector Database
DocStore
- Document column type
- Document Path: a new way to query JSON data
- Built-in Functions for JSON documents
MySQL/InnoDB Enhancements