Bug #76361 Some MTR tests fail if hostname is localhost
Submitted: 17 Mar 2015 22:54 Modified: 23 Mar 2015 12:39
Reporter: Elena Stepanova Email Updates:
Status: Verified Impact on me:
None 
Category:Tests Severity:S3 (Non-critical)
Version:5.6 OS:Any
Assigned to: CPU Architecture:Any

[17 Mar 2015 22:54] Elena Stepanova
Description:
Example of a failing test is below (probably there are more, I don't have a list). It's also possible there are failing tests on 5.5.

Sorry if it's a duplicate of something; I only found a similar bug# 69539, but it's closed. 

perfschema.privilege_table_io            [ fail ]
        Test ended at 2015-03-18 01:49:00

CURRENT_TEST: perfschema.privilege_table_io
--- /data/repo/git/mysql-5.6/mysql-test/suite/perfschema/r/privilege_table_io.result	2015-02-14 00:29:34.000000000 +0300
+++ /data/repo/git/mysql-5.6/mysql-test/var/log/privilege_table_io.reject	2015-03-18 01:49:00.000000000 +0300
@@ -96,13 +96,11 @@
 wait/io/table/sql/handler	handler.cc:	TABLE	mysql	user	fetch	NULL
 wait/io/table/sql/handler	handler.cc:	TABLE	mysql	user	fetch	NULL
 wait/io/table/sql/handler	handler.cc:	TABLE	mysql	user	fetch	NULL
-wait/io/table/sql/handler	handler.cc:	TABLE	mysql	user	fetch	NULL
 wait/io/table/sql/handler	handler.cc:	TABLE	mysql	db	fetch	NULL
 wait/io/table/sql/handler	handler.cc:	TABLE	mysql	db	fetch	NULL
 wait/io/table/sql/handler	handler.cc:	TABLE	mysql	db	fetch	NULL
 wait/io/table/sql/handler	handler.cc:	TABLE	mysql	proxies_priv	fetch	NULL
 wait/io/table/sql/handler	handler.cc:	TABLE	mysql	proxies_priv	fetch	NULL
-wait/io/table/sql/handler	handler.cc:	TABLE	mysql	proxies_priv	fetch	NULL
 wait/io/table/sql/handler	handler.cc:	TABLE	mysql	tables_priv	fetch	NULL
 wait/io/table/sql/handler	handler.cc:	TABLE	mysql	procs_priv	fetch	NULL
 wait/io/table/sql/handler	handler.cc:	TABLE	mysql	servers	fetch	NULL

How to repeat:
sudo hostname localhost

perl ./mtr perfschema.privilege_table_io
[17 Mar 2015 23:02] MySQL Verification Team
Thank you for the bug report.

perfschema.privilege_table_io            [ fail ]
        Test ended at 2015-03-17 20:00:09

CURRENT_TEST: perfschema.privilege_table_io
--- /home/miguel/dbs/5.6/mysql-test/suite/perfschema/r/privilege_table_io.result        2015-03-10 21:25:24.000000000 +0300
+++ /home/miguel/dbs/5.6/mysql-test/var/log/privilege_table_io.reject   2015-03-18 02:00:09.492051918 +0300
@@ -96,13 +96,11 @@
 wait/io/table/sql/handler      handler.cc:     TABLE   mysql   user    fetch   NULL
 wait/io/table/sql/handler      handler.cc:     TABLE   mysql   user    fetch   NULL
 wait/io/table/sql/handler      handler.cc:     TABLE   mysql   user    fetch   NULL
-wait/io/table/sql/handler      handler.cc:     TABLE   mysql   user    fetch   NULL
 wait/io/table/sql/handler      handler.cc:     TABLE   mysql   db      fetch   NULL
 wait/io/table/sql/handler      handler.cc:     TABLE   mysql   db      fetch   NULL
 wait/io/table/sql/handler      handler.cc:     TABLE   mysql   db      fetch   NULL
 wait/io/table/sql/handler      handler.cc:     TABLE   mysql   proxies_priv    fetch   NULL
 wait/io/table/sql/handler      handler.cc:     TABLE   mysql   proxies_priv    fetch   NULL
-wait/io/table/sql/handler      handler.cc:     TABLE   mysql   proxies_priv    fetch   NULL
 wait/io/table/sql/handler      handler.cc:     TABLE   mysql   tables_priv     fetch   NULL
 wait/io/table/sql/handler      handler.cc:     TABLE   mysql   procs_priv      fetch   NULL
 wait/io/table/sql/handler      handler.cc:     TABLE   mysql   servers fetch   NULL
[23 Mar 2015 12:31] Bjørn Munch
According to RFC 6761 https://tools.ietf.org/html/rfc6761 'localhost' always resolves to the IP loopback address 127.0.0.1. It will *not* resolve to the IP address of the host, as you would normally expect the host name to do.

This can lead to unexpected behavior. Without looking at the specific tests in detail and exactly why they fail, I will say this is Not a Bug. You cannot really expect such a system to behave normally in all respects. Or for that matter, tests to be adapted to it as a special case. :-)
[23 Mar 2015 12:39] Elena Stepanova
It's totally fine not to fix it, but it would be nice to have it documented somewhere. MTR documentation maybe? It doesn't have a "limitations" section or such, maybe it should.