mirror of
https://github.com/MariaDB/server.git
synced 2025-05-29 21:42:28 +03:00
BUG#32050 - table logging gone wrong.
INSERT/UPDATE against CSV table created by MySQL earlier than 5.1.23 with NULL-able column results in server crash in debug builds. Starting with 5.1.23 CSV doesn't permit creation of NULL-able columns, but it is still possible to get such table from older MySQL versions. Fixed by removing excessive DBUG_ASSERT(). scripts/mysql_system_tables_fix.sql: Starting with 5.1.23 CSV doesn't permit creation of NULL-able columns. Alter system CSV tables structure so that all columns are NOT NULL. storage/csv/ha_tina.cc: Starting with 5.1.23 CSV doesn't permit creation of NULL-able columns, but it is still possible to get such table from older MySQL versions. Removed excessive DBUG_ASSERT().
This commit is contained in:
parent
c20245d2e7
commit
f3bb583c3e
@ -513,6 +513,22 @@ ALTER TABLE tables_priv MODIFY Table_priv set('Select','Insert','Update','Delete
|
|||||||
|
|
||||||
UPDATE user SET Trigger_priv=Super_priv WHERE @hadTriggerPriv = 0;
|
UPDATE user SET Trigger_priv=Super_priv WHERE @hadTriggerPriv = 0;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Log Table
|
||||||
|
#
|
||||||
|
|
||||||
|
ALTER TABLE general_log
|
||||||
|
MODIFY COLUMN user_host MEDIUMTEXT NOT NULL,
|
||||||
|
MODIFY COLUMN thread_id INTEGER NOT NULL,
|
||||||
|
MODIFY COLUMN server_id INTEGER NOT NULL,
|
||||||
|
MODIFY COLUMN command_type VARCHAR(64) NOT NULL,
|
||||||
|
MODIFY COLUMN argument MEDIUMTEXT NOT NULL;
|
||||||
|
ALTER TABLE slow_log
|
||||||
|
MODIFY COLUMN db VARCHAR(512) NOT NULL,
|
||||||
|
MODIFY COLUMN last_insert_id INTEGER NOT NULL,
|
||||||
|
MODIFY COLUMN insert_id INTEGER NOT NULL,
|
||||||
|
MODIFY COLUMN server_id INTEGER NOT NULL;
|
||||||
|
|
||||||
# Activate the new, possible modified privilege tables
|
# Activate the new, possible modified privilege tables
|
||||||
# This should not be needed, but gives us some extra testing that the above
|
# This should not be needed, but gives us some extra testing that the above
|
||||||
# changes was correct
|
# changes was correct
|
||||||
|
@ -472,14 +472,6 @@ int ha_tina::encode_quote(uchar *buf)
|
|||||||
const char *ptr;
|
const char *ptr;
|
||||||
const char *end_ptr;
|
const char *end_ptr;
|
||||||
const bool was_null= (*field)->is_null();
|
const bool was_null= (*field)->is_null();
|
||||||
|
|
||||||
/*
|
|
||||||
CSV does not support nulls. ::create() prevents creation of a table
|
|
||||||
with nullable columns so if we encounter them here, there is a bug.
|
|
||||||
This may only occur if the frm was created by an older version of
|
|
||||||
mysqld which permitted table creation with nullable columns.
|
|
||||||
*/
|
|
||||||
DBUG_ASSERT(!(*field)->maybe_null());
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
assistance for backwards compatibility in production builds.
|
assistance for backwards compatibility in production builds.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user