• unknown's avatar
    Fix Windows test failures in binlog tests in certain time zones. · 80ac8858
    unknown authored
    On Unix systems TZ can be set to change the time zone for specific processes only.
    But on Windows this does not fully work. It changes some aspects of time zones
    in the system but not others (notably localtime() vs. file system time stamps).
    
    This causes test failures in Windows in certain time zones (but not all),
    where PURGE BEFORE DATE statements get the wrong files when TZ is set to
    +03:00 by default.
    
    Fix by only setting TZ in the small number of tests that really need it, and leave
    it untouched in the rest.
    
    Thanks to Alex Budovski for helping with this.
    
    mysql-test/include/ps_conv.inc:
      Explicitly set TIME_ZONE, as mysql-test-run.pl now does not set it.
    mysql-test/mysql-test-run.pl:
      Do not set TZ by default, as it causes problems on Windows.
    mysql-test/suite/binlog/r/binlog_unsafe.result:
      Explicitly set TIME_ZONE, as mysql-test-run.pl now does not set it.
    mysql-test/suite/binlog/t/binlog_unsafe.test:
      Explicitly set TIME_ZONE, as mysql-test-run.pl now does not set it.
    mysql-test/suite/rpl/r/rpl_mixed_ddl_dml.result:
      Explicitly set TIME_ZONE, as mysql-test-run.pl now does not set it.
    mysql-test/suite/rpl/t/rpl_mixed_ddl_dml.test:
      Explicitly set TIME_ZONE, as mysql-test-run.pl now does not set it.
    mysql-test/t/mysqlbinlog2-master.opt:
      mysql-test-run.pl no longer sets TZ by default, so set it explicitly for this particular test.
    80ac8858
ps_conv.inc 47.9 KB