Skip to content

Commit cc8b9bc

Browse files
committed
Merge branch '10.9' into 10.10
2 parents e3e7264 + 260f1fe commit cc8b9bc

File tree

9 files changed

+85
-0
lines changed

9 files changed

+85
-0
lines changed

mysql-test/main/select,ps.rdiff

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
--- mysql-test/main/select.result 2023-01-31 09:30:58.151377805 +0100
2+
+++ mysql-test/main/select.reject 2023-02-01 13:44:11.026958614 +0100
3+
@@ -5661,6 +5661,8 @@
4+
Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1
5+
Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1
6+
Note 1249 Select 2 was reduced during optimization
7+
+Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1
8+
+Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1
9+
Note 1003 /* select#1 */ select `test`.`t1`.`a` AS `a` from `test`.`t1` where `test`.`t1`.`a` = 1 and (1 or <expr_cache><`test`.`t1`.`a`>((/* select#3 */ select 3 from DUAL where `test`.`t1`.`a` = `test`.`t1`.`a`)) = 3)
10+
PREPARE stmt FROM 'SELECT * FROM t1 WHERE a = 1 AND
11+
(3 = 0 OR (SELECT a = 1 OR (SELECT 3 WHERE a = a) = 3))';
12+

mysql-test/main/select.test

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
#
44

55
--source include/no_valgrind_without_big.inc
6+
--source include/protocol.inc
67

78
#
89
# Simple select test
@@ -4758,9 +4759,11 @@ INSERT INTO t1 VALUES (1),(2),(3);
47584759
SELECT * FROM t1 WHERE a = 1 AND
47594760
(3 = 0 OR (SELECT a = 1 OR (SELECT 3 WHERE a = a) = 3));
47604761

4762+
--enable_prepare_warnings
47614763
EXPLAIN EXTENDED
47624764
SELECT * FROM t1 WHERE a = 1 AND
47634765
(3 = 0 OR (SELECT a = 1 OR (SELECT 3 WHERE a = a) = 3));
4766+
--disable_prepare_warnings
47644767

47654768
PREPARE stmt FROM 'SELECT * FROM t1 WHERE a = 1 AND
47664769
(3 = 0 OR (SELECT a = 1 OR (SELECT 3 WHERE a = a) = 3))';

mysql-test/main/select_jcl6,ps.rdiff

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
--- mysql-test/main/select_jcl6.result 2023-01-31 09:30:58.151377805 +0100
2+
+++ mysql-test/main/select_jcl6.reject 2023-02-01 13:44:10.722958771 +0100
3+
@@ -5672,6 +5672,8 @@
4+
Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1
5+
Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1
6+
Note 1249 Select 2 was reduced during optimization
7+
+Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1
8+
+Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1
9+
Note 1003 /* select#1 */ select `test`.`t1`.`a` AS `a` from `test`.`t1` where `test`.`t1`.`a` = 1 and (1 or <expr_cache><`test`.`t1`.`a`>((/* select#3 */ select 3 from DUAL where `test`.`t1`.`a` = `test`.`t1`.`a`)) = 3)
10+
PREPARE stmt FROM 'SELECT * FROM t1 WHERE a = 1 AND
11+
(3 = 0 OR (SELECT a = 1 OR (SELECT 3 WHERE a = a) = 3))';
12+
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
--- mysql-test/main/select_pkeycache.result 2023-01-31 09:30:58.151377805 +0100
2+
+++ mysql-test/main/select_pkeycache.reject 2023-02-01 13:43:21.742985365 +0100
3+
@@ -5661,6 +5661,8 @@
4+
Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1
5+
Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1
6+
Note 1249 Select 2 was reduced during optimization
7+
+Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1
8+
+Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #1
9+
Note 1003 /* select#1 */ select `test`.`t1`.`a` AS `a` from `test`.`t1` where `test`.`t1`.`a` = 1 and (1 or <expr_cache><`test`.`t1`.`a`>((/* select#3 */ select 3 from DUAL where `test`.`t1`.`a` = `test`.`t1`.`a`)) = 3)
10+
PREPARE stmt FROM 'SELECT * FROM t1 WHERE a = 1 AND
11+
(3 = 0 OR (SELECT a = 1 OR (SELECT 3 WHERE a = a) = 3))';
12+

mysql-test/suite/galera/disabled.def

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,4 @@ galera_var_ignore_apply_errors : 28: "Server did not transition to READY state"
2626
galera_bf_kill_debug : timeout after 900 seconds
2727
galera_ssl_upgrade : [Warning] Failed to load slave replication state from table mysql.gtid_slave_pos: 130: Incorrect file format 'gtid_slave_pos'
2828
galera_parallel_simple : timeout related to wsrep_sync_wait
29+
galera_insert_bulk : MDEV-30536 no expected deadlock in galera_insert_bulk test

mysql-test/suite/innodb/r/innodb_scrub.result

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,18 @@ FLUSH TABLE t1 FOR EXPORT;
1010
UNLOCK TABLES;
1111
NOT FOUND /unicycle|repairman/ in t1.ibd
1212
DROP TABLE t1;
13+
#
14+
# MDEV-30527 Assertion !m_freed_pages in mtr_t::start()
15+
# on DROP TEMPORARY TABLE
16+
#
17+
SET @scrub= @@GLOBAL.innodb_immediate_scrub_data_uncompressed;
18+
SET GLOBAL innodb_immediate_scrub_data_uncompressed= 1;
19+
SET @fpt=@@GLOBAL.innodb_file_per_table;
20+
SET GLOBAL innodb_file_per_table=0;
21+
CREATE TABLE t ENGINE=InnoDB AS SELECT 1;
22+
DROP TABLE t;
23+
SET GLOBAL innodb_file_per_table=@fpt;
24+
CREATE TEMPORARY TABLE tmp ENGINE=InnoDB AS SELECT 1;
25+
DROP TABLE tmp;
26+
SET GLOBAL INNODB_IMMEDIATE_SCRUB_DATA_UNCOMPRESSED= @scrub;
27+
# End of 10.6 tests

mysql-test/suite/innodb/t/innodb_scrub.test

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,3 +27,19 @@ FLUSH TABLE t1 FOR EXPORT;
2727
UNLOCK TABLES;
2828
-- source include/search_pattern_in_file.inc
2929
DROP TABLE t1;
30+
31+
--echo #
32+
--echo # MDEV-30527 Assertion !m_freed_pages in mtr_t::start()
33+
--echo # on DROP TEMPORARY TABLE
34+
--echo #
35+
SET @scrub= @@GLOBAL.innodb_immediate_scrub_data_uncompressed;
36+
SET GLOBAL innodb_immediate_scrub_data_uncompressed= 1;
37+
SET @fpt=@@GLOBAL.innodb_file_per_table;
38+
SET GLOBAL innodb_file_per_table=0;
39+
CREATE TABLE t ENGINE=InnoDB AS SELECT 1;
40+
DROP TABLE t;
41+
SET GLOBAL innodb_file_per_table=@fpt;
42+
CREATE TEMPORARY TABLE tmp ENGINE=InnoDB AS SELECT 1;
43+
DROP TABLE tmp;
44+
SET GLOBAL INNODB_IMMEDIATE_SCRUB_DATA_UNCOMPRESSED= @scrub;
45+
--echo # End of 10.6 tests

storage/innobase/btr/btr0cur.cc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1890,6 +1890,7 @@ dberr_t btr_cur_t::open_leaf(bool first, dict_index_t *index,
18901890
ut_ad(root_leaf_rw_latch != RW_NO_LATCH);
18911891
upper_rw_latch= root_leaf_rw_latch;
18921892
mtr->rollback_to_savepoint(savepoint);
1893+
height= ULINT_UNDEFINED;
18931894
continue;
18941895
}
18951896
else

storage/innobase/mtr/mtr0mtr.cc

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -459,7 +459,20 @@ void mtr_t::commit()
459459
buf_flush_ahead(m_commit_lsn, lsns.second == PAGE_FLUSH_SYNC);
460460
}
461461
else
462+
{
463+
if (m_freed_pages)
464+
{
465+
ut_ad(!m_freed_pages->empty());
466+
ut_ad(m_freed_space == fil_system.temp_space);
467+
ut_ad(!m_trim_pages);
468+
for (const auto &range : *m_freed_pages)
469+
m_freed_space->add_free_range(range);
470+
delete m_freed_pages;
471+
m_freed_pages= nullptr;
472+
m_freed_space= nullptr;
473+
}
462474
release();
475+
}
463476

464477
func_exit:
465478
release_resources();

0 commit comments

Comments
 (0)