~maria-captains/maria/mysql-6.0-backup

« back to all changes in this revision

Viewing changes to mysql-test/lib/v1/mysql-test-run.pl

  • Committer: Thava Alagu
  • Date: 2010-03-11 19:18:17 UTC
  • mfrom: (3719.14.62 mysql-6.0-codebase)
  • Revision ID: thavamuni.alagu@sun.com-20100311191817-5nigmq884xo9fuut
Merge from mysql-6.0-codebase

Show diffs side-by-side

added added

removed removed

Lines of Context:
109
109
our @glob_test_mode;
110
110
 
111
111
our $glob_basedir;
 
112
our $glob_bindir;
112
113
 
113
114
our $path_charsetsdir;
114
115
our $path_client_bindir;
157
158
our $exe_ndbd;
158
159
our $exe_ndb_mgmd;
159
160
our $exe_slave_mysqld;
160
 
our $exe_im;
161
161
our $exe_my_print_defaults;
162
162
our $exe_perror;
163
163
our $lib_udf_example;
721
721
    $glob_mysql_test_dir= `cygpath -m "$glob_mysql_test_dir"`;
722
722
    chomp($glob_mysql_test_dir);
723
723
  }
724
 
  $default_vardir= "$glob_mysql_test_dir/var";
 
724
  if (defined $ENV{MTR_BINDIR}) 
 
725
  {
 
726
    $default_vardir= "$ENV{MTR_BINDIR}/mysql-test/var";
 
727
  }
 
728
  else
 
729
  {
 
730
    $default_vardir= "$glob_mysql_test_dir/var";
 
731
  }
725
732
 
726
733
  # In most cases, the base directory we find everything relative to,
727
734
  # is the parent directory of the "mysql-test" directory. For source
728
735
  # distributions, TAR binary distributions and some other packages.
729
736
  $glob_basedir= dirname($glob_mysql_test_dir);
730
737
 
 
738
  $glob_bindir= $ENV{'MTR_BINDIR'} || $glob_basedir;
731
739
  # In the RPM case, binaries and libraries are installed in the
732
740
  # default system locations, instead of having our own private base
733
741
  # directory. And we install "/usr/share/mysql-test". Moving up one
793
801
  }
794
802
  else
795
803
  {
796
 
    $path_client_bindir= mtr_path_exists("$glob_basedir/client_release",
797
 
                                         "$glob_basedir/client_debug",
 
804
    $path_client_bindir= mtr_path_exists("$glob_bindir/client_release",
 
805
                                         "$glob_bindir/client_debug",
798
806
                                         vs_config_dirs('client', ''),
799
 
                                         "$glob_basedir/client",
800
 
                                         "$glob_basedir/bin");
 
807
                                         "$glob_bindir/client",
 
808
                                         "$glob_bindir/bin");
801
809
  }
802
810
  
803
811
  # Look for language files and charsetsdir, use same share
804
 
  $path_share=      mtr_path_exists("$glob_basedir/share/mysql",
805
 
                                    "$glob_basedir/sql/share",
806
 
                                    "$glob_basedir/share");
 
812
  $path_share=      mtr_path_exists("$glob_bindir/share/mysql",
 
813
                                    "$glob_bindir/sql/share",
 
814
                                    "$glob_bindir/share");
807
815
 
808
816
  $path_language=      mtr_path_exists("$path_share");
809
 
  $path_charsetsdir=   mtr_path_exists("$path_share/charsets");
810
 
 
 
817
  $path_charsetsdir =   mtr_path_exists("$glob_basedir/share/mysql/charsets",
 
818
                                    "$glob_basedir/sql/share/charsets",
 
819
                                    "$glob_basedir/share/charsets");
811
820
 
812
821
  if (!$opt_extern)
813
822
  {
814
823
    $exe_mysqld=       mtr_exe_exists (vs_config_dirs('sql', 'mysqld'),
815
824
                                       vs_config_dirs('sql', 'mysqld-debug'),
816
 
                                       "$glob_basedir/sql/mysqld",
 
825
                                       "$glob_bindir/sql/mysqld",
817
826
                                       "$path_client_bindir/mysqld-max-nt",
818
827
                                       "$path_client_bindir/mysqld-max",
819
828
                                       "$path_client_bindir/mysqld-nt",
820
829
                                       "$path_client_bindir/mysqld",
821
830
                                       "$path_client_bindir/mysqld-debug",
822
831
                                       "$path_client_bindir/mysqld-max",
823
 
                                       "$glob_basedir/libexec/mysqld",
824
 
                                       "$glob_basedir/bin/mysqld",
825
 
                                       "$glob_basedir/sbin/mysqld");
 
832
                                       "$glob_bindir/libexec/mysqld",
 
833
                                       "$glob_bindir/bin/mysqld",
 
834
                                       "$glob_bindir/sbin/mysqld");
826
835
 
827
836
    # Use the mysqld found above to find out what features are available
828
837
    collect_mysqld_features();
1564
1573
  }
1565
1574
}
1566
1575
 
1567
 
sub executable_setup_im () {
1568
 
 
1569
 
  # Look for instance manager binary - mysqlmanager
1570
 
  $exe_im=
1571
 
    mtr_exe_maybe_exists(
1572
 
      "$glob_basedir/server-tools/instance-manager/mysqlmanager",
1573
 
      "$glob_basedir/libexec/mysqlmanager",
1574
 
      "$glob_basedir/bin/mysqlmanager",
1575
 
      "$glob_basedir/sbin/mysqlmanager");
1576
 
 
1577
 
  return ($exe_im eq "");
1578
 
}
1579
 
 
1580
1576
sub executable_setup_ndb () {
1581
1577
 
1582
1578
  # Look for ndb tols and binaries
1583
 
  my $ndb_path= mtr_file_exists("$glob_basedir/ndb",
1584
 
                                "$glob_basedir/storage/ndb",
1585
 
                                "$glob_basedir/bin");
 
1579
  my $ndb_path= mtr_file_exists("$glob_bindir/ndb",
 
1580
                                "$glob_bindir/storage/ndb",
 
1581
                                "$glob_bindir/bin");
1586
1582
 
1587
1583
  # Some might be found in sbin, not bin.
1588
 
  my $daemon_path= mtr_file_exists("$glob_basedir/ndb",
1589
 
                                   "$glob_basedir/storage/ndb",
1590
 
                                   "$glob_basedir/sbin",
1591
 
                                   "$glob_basedir/bin");
 
1584
  my $daemon_path= mtr_file_exists("$glob_bindir/ndb",
 
1585
                                   "$glob_bindir/storage/ndb",
 
1586
                                   "$glob_bindir/sbin",
 
1587
                                   "$glob_bindir/bin");
1592
1588
 
1593
1589
  $exe_ndbd=
1594
1590
    mtr_exe_maybe_exists("$ndb_path/src/kernel/ndbd",
1595
1591
                         "$daemon_path/ndbd",
1596
 
                         "$glob_basedir/libexec/ndbd");
 
1592
                         "$glob_bindir/libexec/ndbd");
1597
1593
  $exe_ndb_mgm=
1598
1594
    mtr_exe_maybe_exists("$ndb_path/src/mgmclient/ndb_mgm",
1599
1595
                         "$ndb_path/ndb_mgm");
1600
1596
  $exe_ndb_mgmd=
1601
1597
    mtr_exe_maybe_exists("$ndb_path/src/mgmsrv/ndb_mgmd",
1602
1598
                         "$daemon_path/ndb_mgmd",
1603
 
                         "$glob_basedir/libexec/ndb_mgmd");
 
1599
                         "$glob_bindir/libexec/ndb_mgmd");
1604
1600
  $exe_ndb_waiter=
1605
1601
    mtr_exe_maybe_exists("$ndb_path/tools/ndb_waiter",
1606
1602
                         "$ndb_path/ndb_waiter");
1643
1639
  $exe_my_print_defaults=
1644
1640
    mtr_exe_exists(vs_config_dirs('extra', 'my_print_defaults'),
1645
1641
                           "$path_client_bindir/my_print_defaults",
1646
 
                           "$glob_basedir/extra/my_print_defaults");
 
1642
                           "$glob_bindir/extra/my_print_defaults");
1647
1643
 
1648
1644
  # Look for perror
1649
1645
  $exe_perror= mtr_exe_exists(vs_config_dirs('extra', 'perror'),
1650
 
                                          "$glob_basedir/extra/perror",
 
1646
                                          "$glob_bindir/extra/perror",
1651
1647
                                          "$path_client_bindir/perror");
1652
1648
 
1653
1649
  # Look for the client binaries
1704
1700
      }
1705
1701
    }
1706
1702
 
1707
 
    if ( ! $opt_skip_im and executable_setup_im())
1708
 
    {
1709
 
      mtr_warning("Could not find all required instance manager binaries, " .
1710
 
                "all im tests will fail, use --skip-im to " .
1711
 
                "continue without instance manager");
1712
 
      $instance_manager->{"executable_setup_failed"}= 1;
1713
 
    }
1714
 
 
1715
1703
    # Look for the udf_example library
1716
1704
    $lib_udf_example=
1717
1705
      mtr_file_exists(vs_config_dirs('sql', 'udf_example.dll'),
1718
 
                      "$glob_basedir/sql/.libs/udf_example.so",);
 
1706
                      "$glob_bindir/sql/.libs/udf_example.so",);
1719
1707
 
1720
1708
    # Look for the ha_example library
1721
1709
    $lib_example_plugin=
1722
1710
      mtr_file_exists(vs_config_dirs('storage/example', 'ha_example.dll'),
1723
 
                      "$glob_basedir/storage/example/.libs/ha_example.so",);
 
1711
                      "$glob_bindir/storage/example/.libs/ha_example.so",);
1724
1712
 
1725
1713
  }
1726
1714
 
1729
1717
  {
1730
1718
    $exe_mysqltest=
1731
1719
      mtr_exe_exists(vs_config_dirs('libmysqld/examples','mysqltest_embedded'),
1732
 
                     "$glob_basedir/libmysqld/examples/mysqltest_embedded",
 
1720
                     "$glob_bindir/libmysqld/examples/mysqltest_embedded",
1733
1721
                     "$path_client_bindir/mysqltest_embedded");
1734
1722
  }
1735
1723
  else
1744
1732
    $exe_mysql_client_test=
1745
1733
      mtr_exe_maybe_exists(
1746
1734
        vs_config_dirs('libmysqld/examples', 'mysql_client_test_embedded'),
1747
 
        "$glob_basedir/libmysqld/examples/mysql_client_test_embedded");
 
1735
        "$glob_bindir/libmysqld/examples/mysql_client_test_embedded");
1748
1736
  }
1749
1737
  else
1750
1738
  {
1751
1739
    $exe_mysql_client_test=
1752
1740
      mtr_exe_maybe_exists(vs_config_dirs('tests', 'mysql_client_test'),
1753
 
                           "$glob_basedir/tests/mysql_client_test",
1754
 
                           "$glob_basedir/bin/mysql_client_test");
 
1741
                           "$glob_bindir/tests/mysql_client_test",
 
1742
                           "$glob_bindir/bin/mysql_client_test");
1755
1743
  }
1756
1744
 
1757
1745
  # Look for bug25714 executable which may _not_ exist in
1758
1746
  # some versions, test using it should be skipped
1759
1747
  $exe_bug25714=
1760
1748
      mtr_exe_maybe_exists(vs_config_dirs('tests', 'bug25714'),
1761
 
                           "$glob_basedir/tests/bug25714");
 
1749
                           "$glob_bindir/tests/bug25714");
1762
1750
}
1763
1751
 
1764
1752
 
1867
1855
    # are used in favor of the system installed ones
1868
1856
    if ( $source_dist )
1869
1857
    {
1870
 
      push(@ld_library_paths, "$glob_basedir/libmysql/.libs/",
1871
 
           "$glob_basedir/libmysql_r/.libs/",
1872
 
           "$glob_basedir/zlib.libs/");
 
1858
      push(@ld_library_paths, "$glob_bindir/libmysql/.libs/",
 
1859
           "$glob_bindir/libmysql_r/.libs/",
 
1860
           "$glob_bindir/zlib.libs/");
1873
1861
    }
1874
1862
    else
1875
1863
    {
1876
 
      push(@ld_library_paths, "$glob_basedir/lib");
 
1864
      push(@ld_library_paths, "$glob_bindir/lib");
1877
1865
    }
1878
1866
  }
1879
1867
 
1882
1870
  # --------------------------------------------------------------------------
1883
1871
  if ( $glob_ndbcluster_supported )
1884
1872
  {
1885
 
    push(@ld_library_paths,  "$glob_basedir/storage/ndb/src/.libs");
 
1873
    push(@ld_library_paths,  "$glob_bindir/storage/ndb/src/.libs");
1886
1874
  }
1887
1875
 
1888
1876
  # --------------------------------------------------------------------------
2000
1988
  # ----------------------------------------------------
2001
1989
  if ( ! $opt_skip_im )
2002
1990
  {
2003
 
    $ENV{'IM_EXE'}=             $exe_im;
2004
1991
    $ENV{'IM_PATH_PID'}=        $instance_manager->{path_pid};
2005
1992
    $ENV{'IM_PATH_ANGEL_PID'}=  $instance_manager->{path_angel_pid};
2006
1993
    $ENV{'IM_PORT'}=            $instance_manager->{port};
2197
2184
                       vs_config_dirs('storage/myisam', 'myisamchk'),
2198
2185
                       vs_config_dirs('myisam', 'myisamchk'),
2199
2186
                       "$path_client_bindir/myisamchk",
2200
 
                       "$glob_basedir/storage/myisam/myisamchk",
2201
 
                       "$glob_basedir/myisam/myisamchk"));
 
2187
                       "$glob_bindir/storage/myisam/myisamchk",
 
2188
                       "$glob_bindir/myisam/myisamchk"));
2202
2189
  $ENV{'MYISAMPACK'}= mtr_native_path(mtr_exe_exists(
2203
2190
                        vs_config_dirs('storage/myisam', 'myisampack'),
2204
2191
                        vs_config_dirs('myisam', 'myisampack'),
2205
2192
                        "$path_client_bindir/myisampack",
2206
 
                        "$glob_basedir/storage/myisam/myisampack",
2207
 
                        "$glob_basedir/myisam/myisampack"));
 
2193
                        "$glob_bindir/storage/myisam/myisampack",
 
2194
                        "$glob_bindir/myisam/myisampack"));
2208
2195
 
2209
2196
  # ----------------------------------------------------
2210
2197
  # We are nice and report a bit about our settings
2555
2542
 
2556
2543
  if ($opt_vs_config)
2557
2544
  {
2558
 
    return ("$glob_basedir/$path_part/$opt_vs_config/$exe");
 
2545
    return ("$glob_bindir/$path_part/$opt_vs_config/$exe");
2559
2546
  }
2560
2547
 
2561
 
  return ("$glob_basedir/$path_part/release/$exe",
2562
 
          "$glob_basedir/$path_part/relwithdebinfo/$exe",
2563
 
          "$glob_basedir/$path_part/debug/$exe");
 
2548
  return ("$glob_bindir/$path_part/release/$exe",
 
2549
          "$glob_bindir/$path_part/relwithdebinfo/$exe",
 
2550
          "$glob_bindir/$path_part/debug/$exe");
2564
2551
}
2565
2552
 
2566
2553
##############################################################################
4007
3994
    my $slave_load_path= "../tmp";
4008
3995
    mtr_add_arg($args, "%s--slave-load-tmpdir=%s", $prefix,
4009
3996
                $slave_load_path);
4010
 
    mtr_add_arg($args, "%s--set-variable=slave_net_timeout=120", $prefix);
 
3997
    mtr_add_arg($args, "%s--slave_net_timeout=120", $prefix);
4011
3998
 
4012
3999
    if ( @$slave_master_info )
4013
4000
    {