|
| Gtid_set_ref (Tsid_map *tsid_map, int64 parallel_applier_sequence_number) |
|
virtual | ~Gtid_set_ref ()=default |
|
size_t | link () |
| Increment the number of references by one. More...
|
|
size_t | unlink () |
| Decrement the number of references by one. More...
|
|
int64 | get_parallel_applier_sequence_number () const |
|
| Gtid_set (Tsid_map *tsid_map, Checkable_rwlock *tsid_lock=nullptr) |
| Constructs a new, empty Gtid_set. More...
|
|
| Gtid_set (Tsid_map *tsid_map, const char *text, enum_return_status *status, Checkable_rwlock *tsid_lock=nullptr) |
| Constructs a new Gtid_set that contains the gtids in the given string, in the same format as add_gtid_text(char *). More...
|
|
| ~Gtid_set () |
| Destroy this Gtid_set. More...
|
|
void | claim_memory_ownership (bool claim) |
| Claim ownership of memory. More...
|
|
void | clear () |
| Removes all gtids from this Gtid_set. More...
|
|
void | clear_set_and_tsid_map () |
| Removes all gtids from this Gtid_set and clear all the sidnos used by the Gtid_set and it's TSID map. More...
|
|
void | _add_gtid (rpl_sidno sidno, rpl_gno gno) |
| Adds the given GTID to this Gtid_set. More...
|
|
void | _remove_gtid (rpl_sidno sidno, rpl_gno gno) |
| Removes the given GTID from this Gtid_set. More...
|
|
void | _add_gtid (const Gtid >id) |
| Adds the given GTID to this Gtid_set. More...
|
|
void | _remove_gtid (const Gtid >id) |
| Removes the given GTID from this Gtid_set. More...
|
|
enum_return_status | add_gtid_set (const Gtid_set *other) |
| Adds all gtids from the given Gtid_set to this Gtid_set. More...
|
|
void | remove_gtid_set (const Gtid_set *other) |
| Removes all gtids in the given Gtid_set from this Gtid_set. More...
|
|
void | remove_intervals_for_sidno (Gtid_set *other, rpl_sidno sidno) |
| Removes all intervals of 'other' for a given SIDNO, from 'this'. More...
|
|
enum_return_status | add_gtid_text (const char *text, bool *anonymous=nullptr, bool *starts_with_plus=nullptr) |
| Adds the set of GTIDs represented by the given string to this Gtid_set. More...
|
|
enum_return_status | add_gtid (const mysql::gtid::Gtid >id) |
| Adds specified GTID (TSID+GNO) to this Gtid_set. More...
|
|
enum_return_status | add_gtid_encoding (const uchar *encoded, size_t length, size_t *actual_length=nullptr) |
| Decodes a Gtid_set from the given string. More...
|
|
bool | contains_gtid (rpl_sidno sidno, rpl_gno gno) const |
| Return true iff the given GTID exists in this set. More...
|
|
bool | contains_gtid (const Gtid >id) const |
| Return true iff the given GTID exists in this set. More...
|
|
rpl_gno | get_last_gno (rpl_sidno sidno) const |
|
rpl_sidno | get_max_sidno () const |
| Returns the maximal sidno that this Gtid_set currently has space for. More...
|
|
enum_return_status | ensure_sidno (rpl_sidno sidno) |
| Allocates space for all sidnos up to the given sidno in the array of intervals. More...
|
|
bool | is_subset (const Gtid_set *super) const |
| Returns true if this Gtid_set is a subset of the other Gtid_set. More...
|
|
bool | is_subset_not_equals (const Gtid_set *super) const |
| Returns true if this Gtid_set is a non equal subset of the other Gtid_set. More...
|
|
bool | is_subset_for_sidno (const Gtid_set *super, rpl_sidno superset_sidno, rpl_sidno subset_sidno) const |
| Returns true if this Gtid_set is a subset of the given gtid_set on the given superset_sidno and subset_sidno. More...
|
|
bool | is_subset_for_sid (const Gtid_set *super, const rpl_sid &sid) const |
| Returns true if this Gtid_set is a subset of the given gtid_set with respect to the given sid. More...
|
|
bool | is_intersection_nonempty (const Gtid_set *other) const |
| Returns true if there is a least one element of this Gtid_set in the other Gtid_set. More...
|
|
enum_return_status | intersection (const Gtid_set *other, Gtid_set *result) |
| Add the intersection of this Gtid_set and the other Gtid_set to result. More...
|
|
bool | is_empty () const |
| Returns true if this Gtid_set is empty. More...
|
|
bool | is_size_greater_than_or_equal (ulonglong num) const |
| Return true if the size of the set is greater than or equal to the given number. More...
|
|
ulonglong | get_gtid_count (rpl_sidno sidno) const |
| What is the count of all the GTIDs in all intervals for a sidno. More...
|
|
std::size_t | get_count () const |
| Returns the number of GTIDs. More...
|
|
bool | contains_sidno (rpl_sidno sidno) const |
| Returns true if this Gtid_set contains at least one GTID with the given SIDNO. More...
|
|
bool | contains_tags () const |
| Checks if this Gtid set contains any tagged GTIDs. More...
|
|
size_t | get_string_length (const String_format *string_format=nullptr) const |
| Returns the length of the output from to_string. More...
|
|
size_t | to_string (char *buf, bool need_lock=false, const String_format *string_format=nullptr) const |
| Formats this Gtid_set as a string and saves in a given buffer. More...
|
|
long | to_string (char **buf, bool need_lock=false, const String_format *string_format=nullptr) const |
| Formats a Gtid_set as a string and saves in a newly allocated buffer. More...
|
|
void | print (bool need_lock=false, const Gtid_set::String_format *sf=nullptr) const |
| Debug only: Print this Gtid_set to stdout. More...
|
|
void | dbug_print (const char *text="", bool need_lock=false, const Gtid_set::String_format *sf=nullptr) const |
| Print this Gtid_set to the trace file if debug is enabled; no-op otherwise. More...
|
|
void | get_gtid_intervals (std::list< Gtid_interval > *gtid_intervals) const |
| Gets all gtid intervals from this Gtid_set. More...
|
|
Tsid_map * | get_tsid_map () const |
| Return the Tsid_map associated with this Gtid_set. More...
|
|
void | add_interval_memory (int n_intervals, Interval *intervals_param) |
| Provides an array of Intervals that this Gtid_set can use when gtids are subsequently added. More...
|
|
void | encode (uchar *buf, bool skip_tagged_gtids=false) const |
| Encodes this Gtid_set as a binary string. More...
|
|
size_t | get_encoded_length (bool skip_tagged_gtids=false) const |
| Returns the length of this Gtid_set when encoded using the encode() function. More...
|
|
std::size_t | get_encoded_length (const mysql::gtid::Gtid_format &format, bool skip_tagged_gtids) const |
| Returns the length of this Gtid_set when encoded using the encode() function. More...
|
|
bool | equals (const Gtid_set *other) const |
| Returns true if this Gtid_set is equal to the other Gtid_set. More...
|
|
This class extends Gtid_set to include a reference counter.
It is for Certifier only, so it is single-threaded and no locks are needed since Certifier already ensures sequential use.
It is to be used to share by multiple entries in the certification info and released when the last reference to it needs to be freed.