HEX
Server: Apache
System: FreeBSD www860.sakura.ne.jp 13.0-RELEASE-p14 FreeBSD 13.0-RELEASE-p14 #2: Mon Dec 9 13:54:55 JST 2024 root@www5301.sakura.ne.jp:/usr/obj/usr/src/amd64.amd64/sys/GENERIC amd64
User: yoyo0427 (1306)
PHP: 8.3.8
Disabled: NONE
Upload Files
File: //home/rs/mysql/5.1/mysql-test/t/myisam-blob.test
#
# Test bugs in the MyISAM code with blobs
#

--disable_warnings
drop table if exists t1;
--enable_warnings

# Bug #2159 (Problem with update of blob to > 16M)

CREATE TABLE t1 (data LONGBLOB) ENGINE=myisam;
INSERT INTO t1 (data) VALUES (NULL);
UPDATE t1 set data=repeat('a',18*1024*1024);
select length(data) from t1;
delete from t1 where left(data,1)='a';
check table t1;
truncate table t1;
INSERT INTO t1 (data) VALUES (repeat('a',1*1024*1024));
INSERT INTO t1 (data) VALUES (repeat('b',16*1024*1024-1024));
delete from t1 where left(data,1)='b';
check table t1;

# now we have two blocks in the table, first is a 1M record and second is
# a 16M delete block.

UPDATE t1 set data=repeat('c',17*1024*1024);
check table t1;
delete from t1 where left(data,1)='c';
check table t1;

INSERT INTO t1 set data=repeat('a',18*1024*1024);
select length(data) from t1;
alter table t1 modify data blob;
select length(data) from t1;
drop table t1;

CREATE TABLE t1 (data BLOB) ENGINE=myisam;
INSERT INTO t1 (data) VALUES (NULL);
UPDATE t1 set data=repeat('a',18*1024*1024);
select length(data) from t1;
drop table t1;

# End of 4.1 tests