Loading innobase/include/dict0dict.ic +0 −2 Original line number Diff line number Diff line Loading @@ -92,7 +92,6 @@ dict_table_get_n_user_cols( { ut_ad(table); ut_ad(table->magic_n == DICT_TABLE_MAGIC_N); ut_ad(table->cached); return(table->n_cols - DATA_N_SYS_COLS); } Loading Loading @@ -126,7 +125,6 @@ dict_table_get_n_cols( { ut_ad(table); ut_ad(table->magic_n == DICT_TABLE_MAGIC_N); ut_ad(table->cached); return(table->n_cols); } Loading mysql-test/r/ndb_blob.result +13 −5 Original line number Diff line number Diff line Loading @@ -481,14 +481,22 @@ msg text NOT NULL insert into t1 (msg) values( 'Tries to validate (8 byte length + inline bytes) as UTF8 :( Fast fix: removed validation for Text. It is not yet indexable so bad data will not crash kernel. Proper fix: Set inline bytes to multiple of mbmaxlen and validate it (after the 8 byte length).'); so bad data will not crash kernel.'); select * from t1; id msg 1 Tries to validate (8 byte length + inline bytes) as UTF8 :( Fast fix: removed validation for Text. It is not yet indexable so bad data will not crash kernel. Proper fix: Set inline bytes to multiple of mbmaxlen and validate it (after the 8 byte length). drop table t1; create table t1 ( a int primary key not null auto_increment, b text ) engine=ndbcluster; select count(*) from t1; count(*) 500 truncate t1; select count(*) from t1; count(*) 0 drop table t1; mysql-test/t/ndb_blob.test +22 −3 Original line number Diff line number Diff line Loading @@ -403,10 +403,29 @@ create table t1 ( insert into t1 (msg) values( 'Tries to validate (8 byte length + inline bytes) as UTF8 :( Fast fix: removed validation for Text. It is not yet indexable so bad data will not crash kernel. Proper fix: Set inline bytes to multiple of mbmaxlen and validate it (after the 8 byte length).'); so bad data will not crash kernel.'); select * from t1; drop table t1; # -- bug #19201 create table t1 ( a int primary key not null auto_increment, b text ) engine=ndbcluster; --disable_query_log set autocommit=1; # more rows than batch size (64) # for this bug no blob parts would be necessary let $1 = 500; while ($1) { insert into t1 (b) values (repeat('x',4000)); dec $1; } --enable_query_log select count(*) from t1; truncate t1; select count(*) from t1; drop table t1; # End of 4.1 tests ndb/include/kernel/signaldata/TcKeyReq.hpp +1 −0 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ class TcKeyReq { friend class NdbOperation; friend class NdbIndexOperation; friend class NdbScanOperation; friend class NdbBlob; friend class DbUtil; /** Loading ndb/include/ndbapi/NdbBlob.hpp +1 −0 Original line number Diff line number Diff line Loading @@ -290,6 +290,7 @@ private: bool isWriteOp(); bool isDeleteOp(); bool isScanOp(); bool isTakeOverOp(); // computations Uint32 getPartNumber(Uint64 pos); Uint32 getPartCount(); Loading Loading
innobase/include/dict0dict.ic +0 −2 Original line number Diff line number Diff line Loading @@ -92,7 +92,6 @@ dict_table_get_n_user_cols( { ut_ad(table); ut_ad(table->magic_n == DICT_TABLE_MAGIC_N); ut_ad(table->cached); return(table->n_cols - DATA_N_SYS_COLS); } Loading Loading @@ -126,7 +125,6 @@ dict_table_get_n_cols( { ut_ad(table); ut_ad(table->magic_n == DICT_TABLE_MAGIC_N); ut_ad(table->cached); return(table->n_cols); } Loading
mysql-test/r/ndb_blob.result +13 −5 Original line number Diff line number Diff line Loading @@ -481,14 +481,22 @@ msg text NOT NULL insert into t1 (msg) values( 'Tries to validate (8 byte length + inline bytes) as UTF8 :( Fast fix: removed validation for Text. It is not yet indexable so bad data will not crash kernel. Proper fix: Set inline bytes to multiple of mbmaxlen and validate it (after the 8 byte length).'); so bad data will not crash kernel.'); select * from t1; id msg 1 Tries to validate (8 byte length + inline bytes) as UTF8 :( Fast fix: removed validation for Text. It is not yet indexable so bad data will not crash kernel. Proper fix: Set inline bytes to multiple of mbmaxlen and validate it (after the 8 byte length). drop table t1; create table t1 ( a int primary key not null auto_increment, b text ) engine=ndbcluster; select count(*) from t1; count(*) 500 truncate t1; select count(*) from t1; count(*) 0 drop table t1;
mysql-test/t/ndb_blob.test +22 −3 Original line number Diff line number Diff line Loading @@ -403,10 +403,29 @@ create table t1 ( insert into t1 (msg) values( 'Tries to validate (8 byte length + inline bytes) as UTF8 :( Fast fix: removed validation for Text. It is not yet indexable so bad data will not crash kernel. Proper fix: Set inline bytes to multiple of mbmaxlen and validate it (after the 8 byte length).'); so bad data will not crash kernel.'); select * from t1; drop table t1; # -- bug #19201 create table t1 ( a int primary key not null auto_increment, b text ) engine=ndbcluster; --disable_query_log set autocommit=1; # more rows than batch size (64) # for this bug no blob parts would be necessary let $1 = 500; while ($1) { insert into t1 (b) values (repeat('x',4000)); dec $1; } --enable_query_log select count(*) from t1; truncate t1; select count(*) from t1; drop table t1; # End of 4.1 tests
ndb/include/kernel/signaldata/TcKeyReq.hpp +1 −0 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ class TcKeyReq { friend class NdbOperation; friend class NdbIndexOperation; friend class NdbScanOperation; friend class NdbBlob; friend class DbUtil; /** Loading
ndb/include/ndbapi/NdbBlob.hpp +1 −0 Original line number Diff line number Diff line Loading @@ -290,6 +290,7 @@ private: bool isWriteOp(); bool isDeleteOp(); bool isScanOp(); bool isTakeOverOp(); // computations Uint32 getPartNumber(Uint64 pos); Uint32 getPartCount(); Loading