Bug #106144 Difference in table size on master and slave when having certain data types
Submitted: 12 Jan 2022 11:14 Modified: 12 Jan 2022 16:26
Reporter: Sukan M Email Updates:
Status: Not a Bug Impact on me:
None 
Category:MySQL Server Severity:S3 (Non-critical)
Version:all OS:Any
Assigned to: CPU Architecture:Any

[12 Jan 2022 11:14] Sukan M
Description:
When having certain data types in a table, we are seeing a difference in the storage between master and slaves.

Slaves is having more utilization of space than the master server. 

When running optimization for that table, both master and slaves reported similar space which is way higher than the current space.

This issue is common across different versions and the underlying hardware/configuration is the same. 

How to repeat:
1. Create a table with any of the following files, varchar(4096), longtext, text
2. Use any script to populate the data
3. Check the ibd file size on master and slaves.
[12 Jan 2022 13:05] MySQL Verification Team
Hi Mr. M,

Thank you for your bug report.

However, this is not a bug.

Size of the tablespaces is totally irrelevant. It depends on the character set, order of the read or write accesses,  filesystems and other factors beyond our control. Hard disks are now relatively inexpensive and we do not try to minimise the size of the files, we are just trying to improve the performance, reliability and the compliance with ACID requisites.

Not a bug.
[12 Jan 2022 16:26] Sukan M
Reopening, since it is reproducable.

I have seen this irrespective of the operating system, please reproduce 

1. Create a following table

CREATE TABLE `phonelog` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `message_id` varchar(100) NOT NULL,
  `relayed` tinyint(1) DEFAULT NULL,
  `relayed_at` datetime DEFAULT NULL,
  `message` mediumtext,
  `ibid` varchar(100) DEFAULT NULL,
  `app_id` varchar(50) DEFAULT NULL,
  `correlation_id` varchar(100) DEFAULT NULL,
  `group_id` varchar(100) NOT NULL,
  `method` varchar(10) DEFAULT NULL,
  `uri` varchar(4096) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `group_id_idx` (`group_id`),
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=latin1;

2. Generate data using any script.

Check the ibd size on master and slave.