mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-04 04:46:15 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			35 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
source include/not_windows.inc;
 | 
						|
 | 
						|
#
 | 
						|
# MDEV-23569 temporary tables can overwrite existing files
 | 
						|
#
 | 
						|
 | 
						|
let datadir=`select @@datadir`;
 | 
						|
create table d1 (a int);
 | 
						|
create temporary table t1 (a int);
 | 
						|
perl;
 | 
						|
chdir "$ENV{MYSQL_TMP_DIR}/mysqld.1/";
 | 
						|
for (<#sql*.MYI>) {
 | 
						|
  /^(#sql-temptable-[0-9a-f]+)(-[0-9a-f]+-)([0-9a-f]+)\.MYI$/ or die $_;
 | 
						|
  symlink "$ENV{datadir}/test/d1.MYI", sprintf "$1$2%x.MYI", hex($3)+1;
 | 
						|
  symlink "$ENV{datadir}/test/d1.MYI", sprintf "$1$2%x.MAI", hex($3)+2;
 | 
						|
  symlink "$ENV{datadir}/test/d1.MYI", sprintf "$1$2%x.MAI", hex($3)+3;
 | 
						|
  symlink "$ENV{datadir}/test/d1.MYI", sprintf "$1$2%x.MAI", hex($3)+4;
 | 
						|
  symlink "$ENV{datadir}/test/d1.MYI", "$1-0.MAI";
 | 
						|
}
 | 
						|
EOF
 | 
						|
 | 
						|
error 1,1030;
 | 
						|
create temporary table t2 (a int);
 | 
						|
error 1,1030;
 | 
						|
create temporary table t3 (a int) engine=Aria;
 | 
						|
--disable_view_protocol
 | 
						|
error 1,1030;
 | 
						|
select * from information_schema.columns where table_schema='test';
 | 
						|
--enable_view_protocol
 | 
						|
 | 
						|
flush tables;
 | 
						|
select * from d1;
 | 
						|
drop temporary table t1;
 | 
						|
remove_files_wildcard $MYSQL_TMP_DIR/mysqld.1 *sql*;
 | 
						|
drop table d1;
 |