Current Path : /usr/opt/mysql57/mysql-test/suite/ndb/t/ |
FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64 |
Current File : //usr/opt/mysql57/mysql-test/suite/ndb/t/ndb_blob_big.test |
# The include statement below is a temp one for tests that are yet to #be ported to run with InnoDB, #but needs to be kept for tests that would need MyISAM in future. --source include/force_myisam_default.inc --source include/have_ndb.inc # Some tests with larger blobs --echo Larger MaxAllowedPacket as this limits the size of Blob MySQLD can handle show variables like 'max_allowed_packet'; use test; create table t1 (a int primary key, b longtext) engine=ndb; delimiter %; create procedure heavy_insert(times int, bytes int) begin set @x = 0; repeat insert into t1 values (1, repeat('B', bytes)); delete from t1 where a=1; set @x = @x + 1; until @x = times end repeat; insert into t1 values (1, repeat('B', bytes)); end % create procedure heavy_read(times int) begin set @x = 0; repeat select a, length(b) from t1 where a=1; set @x = @x + 1; until @x = times end repeat; end % delimiter ;% --echo Set unlimited batch size for reads+writes set ndb_blob_read_batch_bytes = 0; set ndb_blob_write_batch_bytes = 0; --echo Now try a heavy insert - idea is to show SendBufferMemory overload on insert --error 0,1297,1297 call heavy_insert(20, 5*1024*1024); # NOTE don't check for warnings...as it doesnt fail consistenly delete from t1; set ndb_blob_write_batch_bytes=100 * 1024; --echo Now heavy insert should succeed call heavy_insert(10, 5*1024*1024); --echo Now heavy read should fail --disable_result_log --error 0,1297,1297 call heavy_read(100); --enable_result_log # NOTE don't check for warnings...as it doesnt fail consistenly set ndb_blob_read_batch_bytes=100 * 1024; --echo Now heavy read should succeed --disable_result_log call heavy_read(100); --enable_result_log set ndb_blob_write_batch_bytes=0; set ndb_blob_read_batch_bytes=0; drop procedure heavy_insert; drop procedure heavy_read; drop table t1;