Bug #36026 Test funcs_1.<engine>_trig_03 failing on Windows
Submitted: 13 Apr 2008 15:11 Modified: 6 May 2008 18:35
Reporter: Patrick Crews Email Updates:
Status: Closed Impact on me:
None 
Category:Tests: Server Severity:S3 (Non-critical)
Version:5.1 OS:Windows
Assigned to: Patrick Crews CPU Architecture:Any
Tags: funcs_1, mysql-test-run, Tests, windows

[13 Apr 2008 15:11] Patrick Crews
Description:
Test funcs_1.<engine>_trig_03 failing on Windows systems

This appears to be a failure of mysql-test-run's --replace_result option.

The tests use this to try to mitigate results that vary on each run:
12887: -connect(localhost,test_noprivs,PWD,test,MASTER_MYPORT,MASTER_MYSOCK);
12888: -connect(localhost,test_yesprivs,PWD,test,MASTER_MYPORT,MASTER_MYSOCK);
12889: +connect(localhost,test_noprivs,PWD,test,MASTER_MYPORT,\tmp\fiAKHARxar\master.sock);
12890: +connect(localhost,test_yesprivs,PWD,test,MASTER_MYPORT,\tmp\fiAKHARxar\master.sock);

For some reason, the value of $MASTER_MYSOCK isn't being replaced.  (verified that this occurs with other variables as well:  $MYISAMPACK, $MYISAMCHK, etc -- will write a separate bug for this and refer to it here)

How to repeat:
Run innodb_trig_03.test on a Windows system using MySQL 5.1

From the mysql-test directory, execute the following command:

./mysql-test-run.pl --suite=funcs_1 innodb_trig_03

You will see failures as shown in the example above.  These appear to be the only differences between expected and actual results.

Suggested fix:
1)  Temp-fix - disable the failing sub-tests within this test so that some test functionality remains
2)  Fix mysql-test-run so that --replace_result will work for these path-containing variables
3)  Re-enable the original test once mysql-test-run is behaving properly.
[24 Apr 2008 23:38] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/45977

ChangeSet@1.2588, 2008-04-24 19:38:15-04:00, pcrews@pcrews-mac-local.local +10 -0
  Bug#36026 - Test funcs_1.<engine>_trig_03 failing on Windows
  Bug#36028 - Test funcs_1.<engine>_trig_03e failing on Windows
  Bug#36029 - Test funcs_1.<engine>_trig_0407 failing on Windows
  Bug#36030 - Test funcs_1.<engine>_trig_08 failing on Windows
  Bug#36032 - Test funcs_1.processlist_priv_ps fails on Windows
  Bug#36033 - Test funcs_1.processlist_val_ps fails on Windows
  Bug#36034 - Test parts.part_supported_sql_func_<eng> fails on Windows
  Bug#36036 - Test parts.partition_alter1_<eng> fails on Windows
  Bug#36037 - Test parts.partition_alter2_<eng> fails on Windows
  Bug#36038 - Test parts.partition_basic_<engine> failing on Windows
  Bug#36039 - Test parts.partition_engine_<eng> fails on Windows
  Bug#36040 - Test parts.partition_syntax_<eng> fails on Windows
  
  Changeset to fix multiple bugs.
[1 May 2008 1:20] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/46253

ChangeSet@1.2575, 2008-04-30 21:19:35-04:00, pcrews@pcrews-mac-local.local +1 -0
  Bug#36026 - Test funcs_1.<engine>_trig_03 failing on Windows
  Bug#36028 - Test funcs_1.<engine>_trig_03e failing on Windows
  Bug#36029 - Test funcs_1.<engine>_trig_0407 failing on Windows
  Bug#36030 - Test funcs_1.<engine>_trig_08 failing on Windows
  
  Added $MASTER_MYSOCK to init_win_path()
  When path names are long, master.sock end up in /tmp/<random_string>
  rather than MYSQL_TMP_DIR -- not as likely to fail on dev machines
  as it would on Pushbuild
  
  Without the patch, --replace fails due to difference in UNIX vs. Windows path delimiters
[1 May 2008 15:36] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/46264

ChangeSet@1.2613, 2008-05-01 11:36:03-04:00, pcrews@pcrews-mac-local.local +1 -0
  Bug#36026 - Test funcs_1.<engine>_trig_03 failing on Windows
  Bug#36028 - Test funcs_1.<engine>_trig_03e failing on Windows
  Bug#36029 - Test funcs_1.<engine>_trig_0407 failing on Windows
  Bug#36030 - Test funcs_1.<engine>_trig_08 failing on Windows
  
  Adding $MASTER_MYSOCK to init_win_path()
  When path names are short, master.sock ends up in MYSQL_TMP_DIR, but with longer path names,
  master.sock ends up in /tmp/<random_string>/ and these tests will fail due to path delimiter difference.
  
  New changeset to start with 5.0 -- Not all of these tests are present in 5.0, but want to keep mysqltest the same
[6 May 2008 0:25] Bugs System
Pushed into 5.0.62
[6 May 2008 0:29] Bugs System
Pushed into 5.1.25-rc
[6 May 2008 0:32] Bugs System
Pushed into 6.0.6-alpha
[6 May 2008 18:35] Paul DuBois
Test suite changes. No changelog entry needed.