mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 19:06:14 +01:00 
			
		
		
		
	 0812d0de8d
			
		
	
	
	0812d0de8d
	
	
	
		
			
			Problem: DECIMAL columns in I_S must be explicitly set of some value. I_S columns do not have `DEFAULT 0` (after MDEV-18918), so during restore_record() their record fragments pointed by Field::ptr are initialized to zero bytes 0x00. But an array of 0x00's is not a valid binary DECIMAL value. So val_decimal() called for such Field_new_decimal generated a warning when seeing a wrong binary encoded DECIMAL value in the record. Fix: Explicitly setting INFORMATION_SCHEMA.PROCESSLIST.PROGRESS to the decimal value of 0 if no progress information is available.
		
			
				
	
	
		
			62 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| SET DEBUG_SYNC = 'dispatch_command_before_set_time WAIT_FOR do_set_time';
 | |
| SELECT 1;
 | |
| connect  con1,localhost,root,,;
 | |
| SET DEBUG_SYNC = 'fill_schema_processlist_after_unow SIGNAL do_set_time WAIT_FOR fill_schema_proceed';
 | |
| SELECT ID, TIME,TIME_MS FROM INFORMATION_SCHEMA.PROCESSLIST WHERE CONCAT(":", ID, ":") = ":TID:";
 | |
| connection default;
 | |
| 1
 | |
| 1
 | |
| SET DEBUG_SYNC = 'now SIGNAL fill_schema_proceed';
 | |
| connection con1;
 | |
| ID	TIME	TIME_MS
 | |
| TID	0	0.000
 | |
| set debug_sync='reset';
 | |
| connection default;
 | |
| connection con1;
 | |
| SET debug_dbug="+d,sleep_inject_query_done_debug_sync";
 | |
| select sleep(5);
 | |
| sleep(5)
 | |
| 0
 | |
| connection default;
 | |
| SET DEBUG_SYNC = 'now WAIT_FOR query_done';
 | |
| select command, time < 5 from information_schema.processlist where id != connection_id();
 | |
| command	time < 5
 | |
| Sleep	1
 | |
| disconnect con1;
 | |
| connection default;
 | |
| set debug_sync='reset';
 | |
| End of 5.5 tests
 | |
| #
 | |
| # 10.1 tests
 | |
| #
 | |
| #
 | |
| # MDEV-7807 information_schema.processlist truncates queries with binary strings
 | |
| #
 | |
| SET NAMES utf8;
 | |
| SELECT INFO, INFO_BINARY, 'xxx😎yyy' AS utf8mb4_string FROM INFORMATION_SCHEMA.PROCESSLIST WHERE INFO LIKE '%xxx%yyy%';
 | |
| INFO	SELECT INFO, INFO_BINARY, 'xxx????yyy' AS utf8mb4_string FROM INFORMATION_SCHEMA.PROCESSLIST WHERE INFO LIKE '%xxx%yyy%'
 | |
| INFO_BINARY	SELECT INFO, INFO_BINARY, 'xxx😎yyy' AS utf8mb4_string FROM INFORMATION_SCHEMA.PROCESSLIST WHERE INFO LIKE '%xxx%yyy%'
 | |
| utf8mb4_string	xxx😎yyy
 | |
| #
 | |
| # End of 10.1 tests
 | |
| #
 | |
| #
 | |
| # Start of 10.3 tests
 | |
| #
 | |
| #
 | |
| # MDEV-28131 Unexpected warning while selecting from information_schema.processlist
 | |
| #
 | |
| connect  conn1, localhost, root,,;
 | |
| connection conn1;
 | |
| SELECT SLEEP(1000);
 | |
| connection default;
 | |
| SELECT progress FROM information_schema.processlist WHERE info='SELECT SLEEP(1000)';
 | |
| progress
 | |
| 0.000
 | |
| connection conn1;
 | |
| Got one of the listed errors
 | |
| connection default;
 | |
| disconnect conn1;
 | |
| #
 | |
| # End of 10.3 tests
 | |
| #
 |