Details
-
Bug
-
Status: Needs Feedback (View Workflow)
-
Critical
-
Resolution: Unresolved
-
10.11
-
Unexpected results
Description
SET @@SESSION.default_master_connection= 'A\0C'; |
SELECT @@SESSION.default_master_connection , #=> expected: A␀C, actual: A␀␀ |
LENGTHB(@@SESSION.default_master_connection); #=> 3
|
Analysis
Sys_var_session_lexstring tracks a pointer-size pair, but copies the bytes with the null-terminated string function strmake() in ::session_update().
(Inconsistently, THD::strmake() uses memcpy(), which is a pointer-size function.)
Sys_var_session_lexstring has been merged away in 11.3 (Commit 6151bde48c); its only instance was @@default_master_connection.
Attachments
Issue Links
- causes
-
MDEV-39757 use-of-uninitialized-value in skip_trailing_space
-
- Closed
-
-
MDEV-39759 use-of-uninitialized-value in bcmp
-
- Closed
-
- relates to
-
MDEV-40270 @@default_master_connection does not convert character sets
-
- In Review
-
- split from
-
MDEV-39757 use-of-uninitialized-value in skip_trailing_space
-
- Closed
-
- split to
-
MDEV-40272 @@debug_dbug and @@debug_sync accept null bytes
-
- Open
-