diff options
author | unknown <mats@romeo.(none)> | 2006-09-13 19:25:12 +0200 |
---|---|---|
committer | unknown <mats@romeo.(none)> | 2006-09-13 19:25:12 +0200 |
commit | 3936ce19d20e085cb5317d2fc024ee6818e4bbf4 (patch) | |
tree | a66b9bd59add75c92a1ec41646e6f0d3aa5baeb1 /sql/field.h | |
parent | d4d01d5906d09ac23ae6f46e71377ea2786505fc (diff) | |
download | mariadb-git-3936ce19d20e085cb5317d2fc024ee6818e4bbf4.tar.gz |
WL#3259 (RBR with more columns on slave than master):
Incorporating changes from review.
Fixing one bug that surfaced.
mysql-test/extra/rpl_tests/rpl_row_tabledefs.test:
Adding tests that UPDATE and DELETE does not generate an error.
mysql-test/r/rpl_row_tabledefs_2myisam.result:
Result change.
mysql-test/r/rpl_row_tabledefs_3innodb.result:
Result change.
mysql-test/t/disabled.def:
Enabling rpl_sp_effects (even though it gives a result mismatch currently).
sql/field.cc:
Using constant to denote undefined last null byte.
sql/field.h:
Using constant to denote undefined last null byte.
Adding documentation.
sql/log_event.cc:
Not generating error for non-NULL no-DEFAULT columns when updating or deleting row.
Better documentation and comments.
sql/rpl_utility.cc:
Moving documentation to header file.
sql/rpl_utility.h:
Documenting class and members.
Diffstat (limited to 'sql/field.h')
-rw-r--r-- | sql/field.h | 31 |
1 files changed, 28 insertions, 3 deletions
diff --git a/sql/field.h b/sql/field.h index 51b624b799f..26a9cd0b465 100644 --- a/sql/field.h +++ b/sql/field.h @@ -208,10 +208,24 @@ public: inline bool maybe_null(void) { return null_ptr != 0 || table->maybe_null; } inline bool real_maybe_null(void) { return null_ptr != 0; } + enum { + LAST_NULL_BYTE_UNDEF= 0 + }; + /* - Return a pointer to the last byte of the null bytes where the - field conceptually is placed. In the case that the field does not - use any bits of the null bytes, a null pointer is returned. + Find the position of the last null byte for the field. + + SYNOPSIS + last_null_byte() + + DESCRIPTION + Return a pointer to the last byte of the null bytes where the + field conceptually is placed. + + RETURN VALUE + The position of the last null byte relative to the beginning of + the record. If the field does not use any bits of the null + bytes, the value 0 (LAST_NULL_BYTE_UNDEF) is returned. */ my_size_t last_null_byte() const { my_size_t bytes= do_last_null_byte(); @@ -384,6 +398,17 @@ public: friend class Item_func_group_concat; private: + /* + Primitive for implementing last_null_byte(). + + SYNOPSIS + do_last_null_byte() + + DESCRIPTION + Primitive for the implementation of the last_null_byte() + function. This represents the inheritance interface and can be + overridden by subclasses. + */ virtual my_size_t do_last_null_byte() const; }; |