summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--BitKeeper/etc/logging_ok3
-rwxr-xr-xBuild-tools/Do-compile267
-rw-r--r--Docs/manual.texi61
-rw-r--r--VC++Files/bdb/bdb.dsp166
-rw-r--r--VC++Files/bdb/build_win32/db_static1.dsp85
-rw-r--r--VC++Files/bdb/build_win32/libdb.def151
-rw-r--r--VC++Files/bdb/build_win32/libdb_tcl.def35
-rw-r--r--VC++Files/client/mysql.dsp7
-rw-r--r--VC++Files/client/mysqladmin.dsp3
-rw-r--r--VC++Files/client/mysqlclient.dsp7
-rw-r--r--VC++Files/client/mysqldump.dsp5
-rw-r--r--VC++Files/client/mysqlimport.dsp5
-rw-r--r--VC++Files/client/mysqlshow.dsp5
-rw-r--r--VC++Files/innobase/innobase.dsp64
-rw-r--r--VC++Files/libmysql/libmysql.def118
-rw-r--r--VC++Files/libmysql/libmysql.dsp (renamed from VC++Files/libmysql/libmySQL.dsp)13
-rw-r--r--VC++Files/libmysqld/libmysqld.def65
-rw-r--r--VC++Files/libmysqld/libmysqld.dsp20
-rw-r--r--VC++Files/libmysqltest/myTest.dsp3
-rw-r--r--VC++Files/libmysqltest/mytest.c2
-rw-r--r--VC++Files/mysql.dsw86
-rw-r--r--VC++Files/mysqlbinlog/mysqlbinlog.dsp2
-rw-r--r--VC++Files/mysqlcheck/mysqlcheck.dsp8
-rw-r--r--VC++Files/mysqlmanager/MySqlManager.dsp3
-rw-r--r--VC++Files/mysys/mysys.dsp3
-rw-r--r--VC++Files/pack_isam/pack_isam.dsp3
-rw-r--r--VC++Files/perror/perror.dsp4
-rw-r--r--VC++Files/replace/replace.dsp3
-rw-r--r--VC++Files/sql/mysqld.dsp23
-rw-r--r--VC++Files/test1/test1.dsp3
-rw-r--r--VC++Files/thr_insert_test/thr_insert_test.dsp4
-rw-r--r--VC++Files/thr_test/thr_test.dsp3
-rw-r--r--VC++Files/vio/vio.dsp2
-rw-r--r--innobase/btr/btr0btr.c19
-rw-r--r--innobase/dict/dict0dict.c21
-rw-r--r--innobase/include/dict0dict.h13
-rw-r--r--libmysqld/lib_load.cc44
-rw-r--r--myisam/mi_check.c4
-rw-r--r--mysql-test/r/create.result5
-rw-r--r--mysql-test/r/distinct.result15
-rw-r--r--mysql-test/r/innodb.result2
-rw-r--r--mysql-test/t/create.test3
-rw-r--r--mysql-test/t/distinct.test15
-rw-r--r--mysys/my_getopt.c2
-rw-r--r--sql/ha_innodb.cc69
-rw-r--r--sql/item_func.cc2
-rw-r--r--sql/item_strfunc.cc2
-rw-r--r--sql/mysqld.cc2
-rw-r--r--sql/sql_parse.cc6
-rw-r--r--sql/unireg.h2
50 files changed, 1030 insertions, 428 deletions
diff --git a/BitKeeper/etc/logging_ok b/BitKeeper/etc/logging_ok
index bee07b37c43..6318a413179 100644
--- a/BitKeeper/etc/logging_ok
+++ b/BitKeeper/etc/logging_ok
@@ -14,6 +14,8 @@ bell@sanja.is.com.ua
davida@isil.mysql.com
heikki@donna.mysql.fi
heikki@hundin.mysql.fi
+heikki@rescue.
+heikki@work.mysql.com
jani@dsl-jkl1657.dial.inet.fi
jani@hynda.(none)
jani@hynda.mysql.fi
@@ -38,6 +40,7 @@ monty@hundin.mysql.fi
monty@mashka.mysql.fi
monty@narttu.
monty@narttu.mysql.fi
+monty@rescue.
monty@tik.
monty@tik.mysql.fi
monty@tramp.mysql.fi
diff --git a/Build-tools/Do-compile b/Build-tools/Do-compile
index c50ed7810bd..1c52e10eebf 100755
--- a/Build-tools/Do-compile
+++ b/Build-tools/Do-compile
@@ -1,15 +1,56 @@
-#!/usr/bin/perl
+#!/usr/bin/perl -w
use Getopt::Long;
-$opt_distribution=$opt_user=$opt_result=$opt_config_options=$opt_config_env="";
-$opt_dbd_options=$opt_perl_options=$opt_make_options=$opt_suffix="";
+
+@config_options= ();
+@make_options= ();
+
+$opt_distribution=$opt_user=$opt_config_env="";
+$opt_dbd_options=$opt_perl_options=$opt_config_options=$opt_make_options=$opt_suffix="";
$opt_tmp=$opt_version_suffix="";
-$opt_help=$opt_Information=$opt_delete=$opt_debug=$opt_stage=$opt_rsh_mail=$opt_no_test=$opt_no_perl=$opt_with_low_memory=$opt_fast_benchmark=$opt_static_client=$opt_static_server=$opt_static_perl=$opt_sur=$opt_with_small_disk=$opt_local_perl=$opt_tcpip=$opt_build_thread=$opt_no_mysqltest=$opt_use_old_distribution=$opt_enable_shared=$opt_no_crash_me=$opt_no_strip=0;
+$opt_help=$opt_delete=$opt_debug=$opt_stage=$opt_no_test=$opt_no_perl=$opt_with_low_memory=$opt_fast_benchmark=$opt_static_client=$opt_static_server=$opt_static_perl=$opt_sur=$opt_with_small_disk=$opt_local_perl=$opt_tcpip=$opt_build_thread=$opt_use_old_distribution=$opt_enable_shared=$opt_no_crash_me=$opt_no_strip=0;
$opt_innodb=$opt_bdb=$opt_raid=$opt_libwrap=0;
-GetOptions("Information","help","distribution=s","user=s","result=s","delete","no-test","no-mysqltest","perl-files=s","debug","config-options=s","config-env=s","stage=i","rsh-mail","with-low-memory","fast-benchmark","tmp=s","static-client","static-server","static-perl","no-perl","local-perl","perl-options=s","make-options=s","sur","with-small-disk","dbd-options=s","tcpip","suffix=s","build-thread=i","innodb","bdb","raid","libwrap","use-old-distribution","enable-shared","no-crash-me","no-strip","version-suffix=s", "with-other-libc=s") || usage();
-
-usage() if ($opt_help || $opt_Information);
+GetOptions(
+ "bdb",
+ "build-thread=i",
+ "config-env=s",
+ "config-options=s" => \@config_options,
+ "dbd-options=s",
+ "debug",
+ "delete",
+ "distribution=s",
+ "enable-shared",
+ "fast-benchmark",
+ "help|Information",
+ "innodb",
+ "libwrap",
+ "local-perl",
+ "make-options=s" => \@make_options,
+ "no-crash-me",
+ "no-perl",
+ "no-strip",
+ "no-test|no-mysqltest",
+ "perl-files=s",
+ "perl-options=s",
+ "raid",
+ "stage=i",
+ "static-client",
+ "static-perl",
+ "static-server",
+ "suffix=s",
+ "sur",
+ "tcpip",
+ "tmp=s",
+ "use-old-distribution",
+ "user=s",
+ "version-suffix=s",
+ "with-low-memory",
+ "with-other-libc=s",
+ "with-small-disk",
+) || usage();
+
+usage() if ($opt_help);
usage() if (!$opt_distribution);
if ($opt_bdb && $opt_version_suffix eq "")
@@ -17,9 +58,20 @@ if ($opt_bdb && $opt_version_suffix eq "")
$opt_version_suffix="-max";
}
+if (@make_options > 0)
+{
+ chomp(@make_options);
+ $opt_make_options= join(" ", @make_options);
+}
+
+if (@config_options > 0)
+{
+ chomp(@config_options);
+ $opt_config_options= join(" ", @config_options);
+}
+
chomp($host=`hostname`);
$full_host_name=$host;
-info("Compiling MySQL$opt_version_suffix at $host$suffix, stage: $opt_stage\n");
$connect_option= ($opt_tcpip ? "--host=$host" : "");
$host =~ /^([^.-]*)/;
$host=$1 . $opt_suffix;
@@ -62,7 +114,6 @@ else
}
$bench_tmpdir="$opt_tmp/my_build-$host";
$ENV{'PATH'}= "$pwd/$host/bin:" . $ENV{'PATH'};
-$rsh=which("rcmd","rsh");
$make=which("gmake","make"); # Can't use -j here!
$tar=which("gtar","tar");
$sendmail=find("/usr/lib/sendmail","/usr/sbin/sendmail");
@@ -88,6 +139,8 @@ $|=1;
select STDOUT;
$|=1;
+info("Compiling MySQL$opt_version_suffix at $host$opt_suffix, stage: $opt_stage\n");
+
if (-x "$host/bin/mysqladmin")
{
log_system("$host/bin/mysqladmin --no-defaults -u root -S $mysql_unix_port -s shutdown");
@@ -141,47 +194,32 @@ if ($opt_stage == 0 && ! $opt_use_old_distribution)
}
safe_cd("$pwd/$host/$ver");
+
+#
+# Configure the sources
+#
if ($opt_stage <= 1)
{
- $opt_config_options.=" --with-low-memory" if ($opt_with_low_memory);
- # Fix files if this is in another timezone than work.mysql.com
+ # Fix files if this is in another timezone than the build host
unlink("config.cache");
unlink("bdb/build_unix/config.cache");
unlink("innobase/config.cache");
log_system("$make clean") if ($opt_use_old_distribution);
- if ($opt_static_server)
- {
- $opt_config_options.=" --with-mysqld-ldflags=-all-static";
- }
- if ($opt_static_client)
- {
- $opt_config_options.=" --with-client-ldflags=-all-static";
- }
+ $opt_config_options.= " --disable-shared" if (!$opt_enable_shared); # Default for binary versions
+ $opt_config_options.= " --with-berkeley-db" if ($opt_bdb);
+ $opt_config_options.= " --with-client-ldflags=-all-static" if ($opt_static_client);
+ $opt_config_options.= " --with-innodb" if ($opt_innodb);
+ $opt_config_options.= " --with-libwrap" if ($opt_libwrap);
+ $opt_config_options.= " --with-low-memory" if ($opt_with_low_memory);
+ $opt_config_options.= " --with-mysqld-ldflags=-all-static" if ($opt_static_server);
+ $opt_config_options.= " --with-raid" if ($opt_raid);
+
if ($opt_with_other_libc)
{
- $opt_with_other_libc= "--with-other-libc=$opt_with_other_libc";
- $opt_config_options.= " $opt_with_other_libc";
- }
- if (!$opt_enable_shared)
- {
- $opt_config_options.= " --disable-shared"; # Default for binary versions
- }
- if ($opt_bdb)
- {
- $opt_config_options.= " --with-berkeley-db"
- }
- if ($opt_raid)
- {
- $opt_config_options.= " --with-raid"
- }
- if ($opt_innodb)
- {
- $opt_config_options.= " --with-innodb"
- }
- if ($opt_libwrap)
- {
- $opt_config_options.= " --with-libwrap"
+ $opt_with_other_libc= " --with-other-libc=$opt_with_other_libc";
+ $opt_config_options.= $opt_with_other_libc;
}
+
check_system("$opt_config_env ./configure --prefix=/usr/local/mysql --with-comment=\"Official MySQL$opt_version_suffix binary\" --with-extra-charsets=complex --with-server-suffix=\"$opt_version_suffix\" --enable-thread-safe-client --enable-local-infile $opt_config_options","Thank you for choosing MySQL");
if (-d "$pwd/$host/include-mysql")
{
@@ -189,6 +227,9 @@ if ($opt_stage <= 1)
}
}
+#
+# Compile the binaries
+#
if ($opt_stage <= 2)
{
my ($command);
@@ -199,16 +240,15 @@ if ($opt_stage <= 2)
}
#
-# Create a binary distrubtion
+# Create the binary distribution
#
if ($opt_stage <= 3)
{
- my ($flags);
+ my $flags= "";
log_system("rm -fr mysql-3* mysql-4* $pwd/$host/*.tar.gz");
log_system("nm -n sql/mysqld | gzip -9 -v 2>&1 > sql/mysqld.sym.gz | cat");
- $flags="";
- $flags.="--no-strip" if ($opt_no_strip);
+ $flags.= "--no-strip" if ($opt_no_strip);
check_system("scripts/make_binary_distribution --tmp=$opt_tmp --suffix=$opt_suffix $flags",".tar.gz created");
safe_system("mv mysql*.tar.gz $pwd/$host");
if (-f "client/.libs/mysqladmin")
@@ -222,15 +262,15 @@ if ($opt_stage <= 3)
safe_system("$make clean") if ($opt_with_small_disk);
}
-#
-# Unpack and test the binary distrubtion
-#
-
$tar_file=<$pwd/$host/*.tar.gz>;
if (!defined($tar_file))
{
$tar_file=<$pwd/$host/*.tgz>;
}
+
+#
+# Unpack the binary distribution
+#
if ($opt_stage <= 4 && !$opt_no_test)
{
rm_all(<$pwd/$host/test/*>);
@@ -243,15 +283,19 @@ $ver=$1;
$test_dir="$pwd/$host/test/$ver";
$ENV{"LD_LIBRARY_PATH"}= "$test_dir/lib:" . $ENV{"LD_LIBRARY_PATH"};
-if ($opt_stage <= 5 && !$opt_no_test && !$opt_no_mysqltest)
+#
+# Run the test suite
+#
+if ($opt_stage <= 5 && !$opt_no_test)
{
system("mkdir $bench_tmpdir") if (! -d $bench_tmpdir);
safe_cd("${test_dir}/mysql-test");
check_system("./mysql-test-run --warnings --tmpdir=$bench_tmpdir --master_port=$mysql_tcp_port --slave_port=$slave_port --manager-port=$manager_port --no-manager --sleep=10", "tests were successful");
}
+#
# Start the server if we are going to run any of the benchmarks
-
+#
if (!$opt_no_test)
{
my $extra;
@@ -273,7 +317,9 @@ if (!$opt_no_test)
sleep(2);
}
-
+#
+# Compile and install the required Perl modules
+#
if ($opt_stage <= 7 && $opt_perl_files && !$opt_no_perl && !$opt_no_test)
{
safe_cd($test_dir);
@@ -306,7 +352,9 @@ if ($opt_stage <= 7 && $opt_perl_files && !$opt_no_perl && !$opt_no_test)
}
}
-
+#
+# Run crash-me test
+#
if ($opt_stage <= 8 && !$opt_no_test && !$opt_no_crash_me)
{
safe_cd("$test_dir/sql-bench");
@@ -314,6 +362,9 @@ if ($opt_stage <= 8 && !$opt_no_test && !$opt_no_crash_me)
safe_system("perl ./crash-me --force --batch-mode $connect_option");
}
+#
+# Run sql-bench Benchmarks
+#
if ($opt_stage <= 9 && !$opt_no_test)
{
safe_cd("$test_dir/sql-bench");
@@ -330,11 +381,6 @@ if ($opt_stage <= 9 && !$opt_no_test)
}
}
-if ($opt_stage <= 10 && $opt_result)
-{
- safe_system("rcp $pwd/$host/*.tar.gz $opt_result");
-}
-
rm_all($bench_tmpdir);
rm_all("$opt_tmp") if ($new_opt_tmp);
@@ -353,57 +399,105 @@ $0 version 1.4
$0 takes the following options:
+--bdb
+Compile with support for Berkeley DB tables
+
+--config-env <environment for configure>
+To set up the environment, like 'CC=cc CXX=gcc CXXFLAGS=-O3'
+
+--config-options <options>
+To add some extra options to configure (e.g. '--with-perl=yes')
+
+--dbd-options <options>
+Options for Makefile.PL when configuring msql-mysql-modules.
+
+--debug
+Print all shell commands on stdout.
+
+--delete
+Delete the distribution file.
+
+--distribution <distribution_file>
+Name of the MySQL source distribution file.
+
+--enable-shared
+Compile with shared libraries
+
+--fast-benchmark
+Run fast benchmark only to speed up testing
+
--help or --Information
Show this help
--innodb
Compile with support for Innodb tables
---bdb
-Compile with support for Berkeley DB tables
+--libwrap
+Compile with TCP wrapper support
---user 'user_name'
-Mail 'user_name'\@mysql.com if something went wrong.
-If user is empty then no mail is sent.
+--local-perl
+Install Perl modules locally
---distribution 'distribution_file'
-Name of the MySQL distribution file.
+--make-options <options>
+Options to make after configure. (Like 'CXXLD=gcc')
---result 'result_dir'
-Send binary distribution to result_dir
+--no-crash-me
+Do not run the "crash-me" test
---no-delete
-Do not delete the distribution file.
+--no-strip
+Do not strip the binaries included in the binary distribution
+
+--no-test
+Do not run any tests
--perl-files=list of files
Compile and install the given perl modules.
---no-test
-Don not run crash-me or the benchmarks.
+--perl-options <options>
+Build Perl modules with the additional options
---config-options 'some extra configure options'
-To add some extra options, like '--with-perl=yes'
+--raid
+Compile with RAID support
---config-env 'environment for configure'
-To set up the environment, like 'CC=cc CXX=gcc CXXFLAGS=-O3'
+--stage (1-6)
+Start script from some specific point.
---dbd-options 'options'
-Options for Makefile.PL when configuring msql-mysql-modules.
+--static-client
+Build statically linked client binaries
---make-options 'options'
-Options to make after configure. (Like 'CXXLD=gcc')
+--static-perl
+Build statically linked Perl modules
+
+--static-server
+Build statically linked server binary
+
+--tcpip
+Connect to the server to be tested via TCP/IP instead of socket
+
+--tmp <directory>
+Use a different temporary directory than /tmp
+
+--use-old-distribution
+Do not clean up the build environment and extract a fresh source
+distribution, use an existing one instead.
+
+--user <user_name>
+Mail 'user_name'\@mysql.com if something went wrong.
+If user is empty then no mail is sent.
--version-suffix suffix
-Can be used to set a suffix (normally 'com' or '-max') for a distribution
+Set name suffix (e.g. 'com' or '-max') for a distribution
--with-low-memory
Use less memory when compiling.
--- stage (1-6)
-Start script from some specific point.
+--with-other-libc <path to libc>
+Link against libc and other standard libraries installed in the specified
+non-standard location overriding default.
--- debug
-Print all shell commands on stdout.
+--with-small-disk
+Clean up the build environment before testing the binary distribution
+(to save disk space)
EOF
exit 1;
}
@@ -411,7 +505,7 @@ exit 1;
sub abort
{
my($message)=@_;
- my($command,$mail_header_file);
+ my($mail_header_file);
print LOG "\n$message\n";
print "$host: $message\n" if ($opt_debug);
close LOG;
@@ -424,9 +518,8 @@ sub abort
print TMP "To: $email\n";
print TMP "Subject: MySQL compilation failed again\n\n";
close TMP;
- $command=($opt_rsh_mail) ? "$rsh analytik" : "";
system("tail -30 $log > $log.mail");
- system("cat $mail_header_file $log.mail | $command $sendmail -t -f $email");
+ system("cat $mail_header_file $log.mail | $sendmail -t -f $email");
unlink($mail_header_file);
unlink("$log.mail");
}
diff --git a/Docs/manual.texi b/Docs/manual.texi
index dbedb7d00f8..575d34fc502 100644
--- a/Docs/manual.texi
+++ b/Docs/manual.texi
@@ -152,12 +152,11 @@ database server.
production systems as well as for embedding into mass-deployed software.
@code{MySQL} is a trademark of @code{MySQL AB}.
-The @code{MySQL} software has @code{Dual Licensing}, which means you can use
-the @code{MySQL} software free of charge under the
-@code{GNU General Public License} (@uref{http://www.gnu.org/licenses/}).
-You can also purchase commercial @code{MySQL} licenses from
-@code{MySQL AB} if you do not wish to be bound by the terms of the
-@code{GPL}.
+The @code{MySQL} software is @code{Dual Licensed}. Users can choose to
+use the @code{MySQL} software as an @code{Open Source}/@code{Free Software}
+product under the terms of the @code{GNU General Public License}
+(@uref{http://www.gnu.org/licenses/}) or can purchase a standard
+commercial license from @code{MySQL AB}.
@xref{Licensing and Support}.
The @code{MySQL} web site (@uref{http://www.mysql.com/}) provides the
@@ -215,6 +214,7 @@ For a list of all the contributors to this project, see @ref{Credits}.
Reports of errors (often called bugs), as well as questions and comments,
should be sent to the mailing list at @email{mysql@@lists.mysql.com}.
@xref{Bug reports}.
+
The @code{mysqlbug} script should be used to generate bug reports.
@c FIX! RPMs are also binary
For source distributions, the @code{mysqlbug} script can be found in the
@@ -271,7 +271,7 @@ The PostScript version is produced using @code{texi2dvi} and @code{dvips}.
The PDF version is produced with @code{pdftex}.
If you have a hard time finding information in the manual, you can try
-our searchable PHP version at @uref{http://www.mysql.com/doc/}.
+our searchable version at @uref{http://www.mysql.com/doc/}.
If you have any suggestions concerning additions or corrections to this
manual, please send them to the documentation team at @email{docs@@mysql.com}.
@@ -404,9 +404,9 @@ alternatives are listed within braces (@samp{@{} and @samp{@}}):
@cindex MySQL, introduction
@code{MySQL}, the most popular @code{Open Source} SQL database, is
-developed and provided by @code{MySQL AB}. @code{MySQL AB} is a
-commercial company that builds its business providing services around
-the @code{MySQL} database.
+developed, distributed and supported by @code{MySQL AB}. @code{MySQL AB} is a
+commercial company founded by the MySQL developers that builds its business
+providing services around the @code{MySQL} database.
@xref{What is MySQL AB}.
The @code{MySQL} web site (@uref{http://www.mysql.com/})
@@ -3465,6 +3465,11 @@ that in MySQL Server, @code{VARCHAR} columns are treated the same way.
You can only have up to 255 @code{ENUM} and @code{SET} columns in one table.
@item
+In @code{MIN()}, @code{MAX()} and other aggregate functions, MySQL
+currently compares @code{ENUM} and @code{SET} columns by their string
+value rather than by the string's relative position in the set.
+
+@item
@code{safe_mysqld} redirects all messages from @code{mysqld} to the
@code{mysqld} log. One problem with this is that if you execute
@code{mysqladmin refresh} to close and reopen the log,
@@ -8707,7 +8712,7 @@ cat /proc/sys/fs/super-max
@end example
If you have more than 16 MB of memory, you should add something like the
-following in your boot script (@file{/etc/rc/boot.local} on SuSE):
+following to your init scripts (e.g. @file{/etc/init.d/boot.local} on SuSE Linux):
@example
echo 65536 > /proc/sys/fs/file-max
@@ -8715,10 +8720,22 @@ echo 8192 > /proc/sys/fs/dquot-max
echo 1024 > /proc/sys/fs/super-max
@end example
-You can also run the preceding commands from the command-line as root, but in this case
-your old limits will be used the next time your computer reboots.
+You can also run the preceding commands from the command-line as root, but
+these settings will be lost the next time your computer reboots.
-You should also add /etc/my.cnf:
+Alternatively, you can set these parameters on bootup by using the
+@code{sysctl} tool, which is used by many Linux distributions (SuSE has
+added it as well, beginning with SuSE Linux 8.0). Just put the following
+values into a file named @file{/etc/sysctl.conf}:
+
+@example
+# Increase some values for MySQL
+fs.file-max = 65536
+fs.dquot-max = 8192
+fs.super-max = 1024
+@end example
+
+You should also add the following to @file{/etc/my.cnf}:
@example
[safe_mysqld]
@@ -33866,6 +33883,11 @@ mysql> SELECT student_name, MIN(test_score), MAX(test_score)
-> GROUP BY student_name;
@end example
+In @code{MIN()}, @code{MAX()} and other aggregate functions, MySQL
+currently compares @code{ENUM} and @code{SET} columns by their string
+value rather than by the string's relative position in the set.
+This will be rectified.
+
@findex SUM()
@item SUM(expr)
Returns the sum of @code{expr}. Note that if the return set has no rows,
@@ -50392,6 +50414,17 @@ started.
Fixed core dump problem with @code{SHOW VARIABLES} on some 64 bit systems
(like Solaris sparc).
@item
+Fixed a bug in my_getopt; --set-variable syntax didn't work for
+those options that didn't have a valid variable in my_option struct.
+This affected at least @code{default-table-type} option.
+@item
+Fixed a bug that caused @code{REPAIR TABLE} to fail on tables
+with duplicates in a unique key.
+@item
+Fixed a bug in guessing a field type out of the function. The error was
+introduced in 4.0.3 so that field type depended on the first argument to
+the function instead of the function itself
+@item
Fixed a bug with wildcarded fields in select list, which led to the wrong
number of elements in a list containing all fields
@item
diff --git a/VC++Files/bdb/bdb.dsp b/VC++Files/bdb/bdb.dsp
index bed306fc3d0..30d8fdc39b6 100644
--- a/VC++Files/bdb/bdb.dsp
+++ b/VC++Files/bdb/bdb.dsp
@@ -4,7 +4,7 @@
# TARGTYPE "Win32 (x86) Static Library" 0x0104
-CFG=bdb - Win32 Release
+CFG=bdb - Win32 Max
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
@@ -13,13 +13,12 @@ CFG=bdb - Win32 Release
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
-!MESSAGE NMAKE /f "bdb.mak" CFG="bdb - Win32 Release"
+!MESSAGE NMAKE /f "bdb.mak" CFG="bdb - Win32 Max"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "bdb - Win32 Debug" (based on "Win32 (x86) Static Library")
!MESSAGE "bdb - Win32 Max" (based on "Win32 (x86) Static Library")
-!MESSAGE "bdb - Win32 Release" (based on "Win32 (x86) Static Library")
!MESSAGE
# Begin Project
@@ -77,454 +76,534 @@ LIB32=link.exe -lib
# ADD BASE LIB32 /nologo /out:"..\lib_debug\bdb.lib"
# ADD LIB32 /nologo /out:"..\lib_release\bdb.lib"
-!ELSEIF "$(CFG)" == "bdb - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "bdb___Win32_Release"
-# PROP BASE Intermediate_Dir "bdb___Win32_Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "bdb___Win32_Release"
-# PROP Intermediate_Dir "bdb___Win32_Release"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../bdb/build_win32" /I "../bdb/include" /D "NDEBUG" /D "DBUG_OFF" /D "_WINDOWS" /Fo"mysys___Win32_Max/" /Fd"mysys___Win32_Max/" /FD /c
-# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../bdb/build_win32" /I "../bdb/include" /D "NDEBUG" /D "DBUG_OFF" /D "_WINDOWS" /Fo"mysys___Win32_Max/" /Fd"mysys___Win32_Max/" /FD /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo /out:"..\lib_release\bdb.lib"
-# ADD LIB32 /nologo /out:"..\lib_release\bdb.lib"
-
!ENDIF
# Begin Target
# Name "bdb - Win32 Debug"
# Name "bdb - Win32 Max"
-# Name "bdb - Win32 Release"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=.\btree\bt_compare.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_conv.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_curadj.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_cursor.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_delete.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_method.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_open.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_put.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_rec.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_reclaim.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_recno.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_rsearch.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_search.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_split.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_stat.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_upgrade.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\bt_verify.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\btree\btree_auto.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\crdel_auto.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\crdel_rec.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\cxx\cxx_app.cpp
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\cxx\cxx_except.cpp
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\cxx\cxx_lock.cpp
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\cxx\cxx_log.cpp
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\cxx\cxx_mpool.cpp
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\cxx\cxx_table.cpp
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\cxx\cxx_txn.cpp
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_am.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_auto.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\common\db_byteorder.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_cam.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_conv.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_dispatch.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_dup.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\common\db_err.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\common\db_getlong.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_iface.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_join.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\common\db_log2.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_meta.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_method.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_overflow.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_pr.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_rec.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_reclaim.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_ret.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\env\db_salloc.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\env\db_shash.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_upg.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_upg_opd.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_vrfy.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\db\db_vrfyutil.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\dbm\dbm.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\env\env_method.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\env\env_open.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\env\env_recover.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\env\env_region.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\hash\hash.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\hash\hash_auto.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\hash\hash_conv.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\hash\hash_dup.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\hash\hash_func.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\hash\hash_meta.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\hash\hash_method.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\hash\hash_page.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\hash\hash_rec.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\hash\hash_reclaim.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\hash\hash_stat.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\hash\hash_upgrade.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\hash\hash_verify.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\hsearch\hsearch.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\lock\lock.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\lock\lock_conflict.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\lock\lock_deadlock.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\lock\lock_method.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\lock\lock_region.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\lock\lock_stat.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\lock\lock_util.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\log\log.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\log\log_archive.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\log\log_auto.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\log\log_compare.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\log\log_findckp.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\log\log_get.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\log\log_method.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\log\log_put.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\log\log_rec.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\log\log_register.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\mp\mp_alloc.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\mp\mp_bh.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\mp\mp_fget.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\mp\mp_fopen.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\mp\mp_fput.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\mp\mp_fset.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\mp\mp_method.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\mp\mp_region.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\mp\mp_register.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\mp\mp_stat.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\mp\mp_sync.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\mp\mp_trickle.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\mutex\mut_tas.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\mutex\mutex.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\os_win32\os_abs.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
@@ -533,18 +612,22 @@ SOURCE=.\os\os_alloc.c
# Begin Source File
SOURCE=.\os_win32\os_dir.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\os_win32\os_errno.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\os_win32\os_fid.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\os_win32\os_finit.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
@@ -557,6 +640,7 @@ SOURCE=.\os\os_handle.c
# Begin Source File
SOURCE=.\os_win32\os_map.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
@@ -569,6 +653,7 @@ SOURCE=.\os\os_oflags.c
# Begin Source File
SOURCE=.\os_win32\os_open.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
@@ -577,6 +662,7 @@ SOURCE=.\os\os_region.c
# Begin Source File
SOURCE=.\os_win32\os_rename.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
@@ -593,70 +679,87 @@ SOURCE=.\os\os_rw.c
# Begin Source File
SOURCE=.\os_win32\os_seek.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\os_win32\os_sleep.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\os_win32\os_spin.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\os\os_stat.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\os\os_tmpdir.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\os_win32\os_type.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\os\os_unlink.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\qam\qam.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\qam\qam_auto.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\qam\qam_conv.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\qam\qam_files.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\qam\qam_method.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\qam\qam_open.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\qam\qam_rec.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\qam\qam_stat.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\qam\qam_upgrade.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\qam\qam_verify.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
@@ -665,38 +768,47 @@ SOURCE=.\clib\strcasecmp.c
# Begin Source File
SOURCE=.\txn\txn.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\txn\txn_auto.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\txn\txn_rec.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\txn\txn_region.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\common\util_log.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\common\util_sig.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\xa\xa.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\xa\xa_db.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# Begin Source File
SOURCE=.\xa\xa_map.c
+# ADD CPP /I "../bdb/build_win32" /I "../bdb/include"
# End Source File
# End Group
# Begin Group "Header Files"
diff --git a/VC++Files/bdb/build_win32/db_static1.dsp b/VC++Files/bdb/build_win32/db_static1.dsp
new file mode 100644
index 00000000000..771397a455b
--- /dev/null
+++ b/VC++Files/bdb/build_win32/db_static1.dsp
@@ -0,0 +1,85 @@
+# Microsoft Developer Studio Project File - Name="db_static1" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) External Target" 0x0106
+
+CFG=db_static1 - Win32 Debug
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE
+!MESSAGE NMAKE /f "db_static1.mak".
+!MESSAGE
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "db_static1.mak" CFG="db_static1 - Win32 Debug"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "db_static1 - Win32 Release" (based on "Win32 (x86) External Target")
+!MESSAGE "db_static1 - Win32 Debug" (based on "Win32 (x86) External Target")
+!MESSAGE
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+
+!IF "$(CFG)" == "db_static1 - Win32 Release"
+
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release"
+# PROP BASE Intermediate_Dir "Release"
+# PROP BASE Cmd_Line "NMAKE /f db_static.mak"
+# PROP BASE Rebuild_Opt "/a"
+# PROP BASE Target_File "db_static.exe"
+# PROP BASE Bsc_Name "db_static.bsc"
+# PROP BASE Target_Dir ""
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "Release"
+# PROP Intermediate_Dir "Release"
+# PROP Cmd_Line "NMAKE /f db_static.mak"
+# PROP Rebuild_Opt "/a"
+# PROP Target_File "db_static1.exe"
+# PROP Bsc_Name "db_static1.bsc"
+# PROP Target_Dir ""
+
+!ELSEIF "$(CFG)" == "db_static1 - Win32 Debug"
+
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug"
+# PROP BASE Intermediate_Dir "Debug"
+# PROP BASE Cmd_Line "NMAKE /f db_static.mak"
+# PROP BASE Rebuild_Opt "/a"
+# PROP BASE Target_File "db_static.exe"
+# PROP BASE Bsc_Name "db_static.bsc"
+# PROP BASE Target_Dir ""
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "Debug"
+# PROP Intermediate_Dir "Debug"
+# PROP Cmd_Line "NMAKE /f db_static.mak"
+# PROP Rebuild_Opt "/a"
+# PROP Target_File "db_static1.exe"
+# PROP Bsc_Name "db_static1.bsc"
+# PROP Target_Dir ""
+
+!ENDIF
+
+# Begin Target
+
+# Name "db_static1 - Win32 Release"
+# Name "db_static1 - Win32 Debug"
+
+!IF "$(CFG)" == "db_static1 - Win32 Release"
+
+!ELSEIF "$(CFG)" == "db_static1 - Win32 Debug"
+
+!ENDIF
+
+# Begin Source File
+
+SOURCE=.\db_static.dsp
+# End Source File
+# End Target
+# End Project
diff --git a/VC++Files/bdb/build_win32/libdb.def b/VC++Files/bdb/build_win32/libdb.def
new file mode 100644
index 00000000000..a3b4cb3b26b
--- /dev/null
+++ b/VC++Files/bdb/build_win32/libdb.def
@@ -0,0 +1,151 @@
+; $Id: libdb.def,v 11.21 2001/01/04 15:07:33 dda Exp $
+
+DESCRIPTION 'Berkeley DB 3.2 Library'
+EXPORTS
+ lock_get @1
+ lock_id @2
+ lock_put @3
+ lock_vec @4
+ log_compare @5
+ log_file @6
+ log_flush @7
+ log_get @8
+ log_put @9
+ log_register @10
+ log_unregister @11
+ memp_fclose @12
+ memp_fget @13
+ memp_fopen @14
+ memp_fput @15
+ memp_fset @16
+ memp_fsync @17
+ memp_register @18
+ memp_sync @19
+ txn_abort @20
+ txn_begin @21
+ txn_checkpoint @22
+ txn_commit @23
+ txn_prepare @24
+ db_version @25
+ memp_stat @26
+ log_archive @27
+ lock_detect @28
+ txn_id @29
+ txn_stat @30
+ memp_trickle @31
+ log_stat @32
+ lock_stat @33
+ db_create @34
+ db_env_create @35
+ db_strerror @36
+ db_xa_switch @37
+ db_env_set_func_close @38
+ db_env_set_func_dirfree @39
+ db_env_set_func_dirlist @40
+ db_env_set_func_exists @41
+ db_env_set_func_free @42
+ db_env_set_func_fsync @43
+ db_env_set_func_ioinfo @44
+ db_env_set_func_malloc @45
+ db_env_set_func_map @46
+ db_env_set_func_open @47
+ db_env_set_func_read @48
+ db_env_set_func_realloc @49
+ db_env_set_func_rename @50
+ db_env_set_func_sleep @51
+ db_env_set_func_unlink @52
+ db_env_set_func_unmap @53
+ db_env_set_func_write @54
+ db_env_set_func_yield @55
+; FREE @56
+ db_env_set_pageyield @57
+ db_env_set_panicstate @58
+ db_env_set_region_init @59
+ db_env_set_tas_spins @60
+; these are only for testing
+ __db_loadme @201
+ __ham_func2 @202
+ __ham_func3 @203
+ __ham_func4 @204
+ __ham_func5 @205
+ __db_hcreate @206
+ __db_hsearch @207
+ __db_hdestroy @208
+ __db_dbm_init @209
+ __db_dbm_delete @210
+ __db_dbm_fetch @211
+ __db_dbm_store @212
+ __db_dbm_firstkey @213
+ __db_dbm_nextkey @214
+ __db_dbm_close @215
+ __db_ndbm_open @216
+ __db_ndbm_store @217
+ __db_ndbm_rdonly @218
+ __db_ndbm_pagfno @219
+ __db_ndbm_nextkey @220
+ __db_ndbm_firstkey @221
+ __db_ndbm_fetch @222
+ __db_ndbm_error @223
+ __db_ndbm_dirfno @224
+ __db_ndbm_delete @225
+ __db_ndbm_close @226
+ __db_ndbm_clearerr @227
+ __lock_dump_region @228
+ __memp_dump_region @229
+ __os_closehandle @230
+ __os_openhandle @231
+ __os_strdup @232
+ __db_r_attach @233
+ __db_r_detach @234
+ __db_tas_mutex_init @235
+ __db_tas_mutex_lock @236
+ __db_tas_mutex_unlock @237
+ __os_read @238
+ __os_write @239
+ __os_open @240
+ __os_ioinfo @241
+ __os_free @242
+ __os_malloc @243
+ __os_freestr @244
+ __os_calloc @245
+ __ham_test @246
+; these are needed for linking tools
+ __db_dump @401
+ __db_rpath @402
+ __db_dispatch @403
+ __db_err @404
+ __db_init_print @405
+ __txn_init_print @406
+ __log_init_print @407
+ __ham_init_print @408
+ __bam_init_print @409
+ __db_jump @410
+ __ham_pgin @411
+ __ham_pgout @412
+ __bam_pgin @413
+ __bam_pgout @414
+ __db_omode @415
+ __db_prdbt @416
+ __os_sleep @417
+ __db_e_stat @420
+ __db_getlong @421
+ __os_get_errno @422
+ __os_set_errno @423
+ __ham_get_meta @424
+ __ham_release_meta @425
+ __qam_init_print @426
+ __crdel_init_print @427
+ __qam_pgin_out @428
+ __db_pgin @429
+ __db_pgout @430
+ __db_getulong @431
+ __db_util_sigresend @432
+ __db_util_siginit @433
+ __db_util_interrupted @434
+ __db_util_logset @435
+ __db_prheader @436
+ __db_prfooter @437
+ __db_verify_callback @438
+ __db_verify_internal @439
+ __os_yield @440
+ __db_global_values @441
diff --git a/VC++Files/bdb/build_win32/libdb_tcl.def b/VC++Files/bdb/build_win32/libdb_tcl.def
new file mode 100644
index 00000000000..a18459beaba
--- /dev/null
+++ b/VC++Files/bdb/build_win32/libdb_tcl.def
@@ -0,0 +1,35 @@
+; $Id: libdb_tcl.def,v 11.2 1999/11/21 23:10:00 bostic Exp $
+
+DESCRIPTION 'Berkeley DB TCL interface Library'
+EXPORTS
+ Db_tcl_Init
+ bdb_DbmCommand
+ bdb_HCommand
+ bdb_NdbmOpen
+ bdb_RandCommand
+ db_Cmd
+ dbc_Cmd
+ env_Cmd
+ ndbm_Cmd
+ tcl_EnvRemove
+ tcl_LockDetect
+ tcl_LockGet
+ tcl_LockStat
+ tcl_LockVec
+ tcl_LogArchive
+ tcl_LogCompare
+ tcl_LogFile
+ tcl_LogFlush
+ tcl_LogGet
+ tcl_LogPut
+ tcl_LogRegister
+ tcl_LogStat
+ tcl_LogUnregister
+ tcl_Mp
+ tcl_MpStat
+ tcl_MpSync
+ tcl_MpTrickle
+ tcl_Txn
+ tcl_TxnCheckpoint
+ tcl_TxnStat
+ txn_Cmd
diff --git a/VC++Files/client/mysql.dsp b/VC++Files/client/mysql.dsp
index 4c9819bacde..9560a4cfef1 100644
--- a/VC++Files/client/mysql.dsp
+++ b/VC++Files/client/mysql.dsp
@@ -68,7 +68,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /ZI /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
@@ -86,6 +87,10 @@ LINK32=link.exe
# Name "mysql - Win32 Debug"
# Begin Source File
+SOURCE=..\mysys\my_gethostbyname.c
+# End Source File
+# Begin Source File
+
SOURCE=.\mysql.cpp
!IF "$(CFG)" == "mysql - Win32 Release"
diff --git a/VC++Files/client/mysqladmin.dsp b/VC++Files/client/mysqladmin.dsp
index 278bcdae8b0..82794da57cb 100644
--- a/VC++Files/client/mysqladmin.dsp
+++ b/VC++Files/client/mysqladmin.dsp
@@ -67,7 +67,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /ZI /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
diff --git a/VC++Files/client/mysqlclient.dsp b/VC++Files/client/mysqlclient.dsp
index 5e3fbcd060e..4b2f14b7f77 100644
--- a/VC++Files/client/mysqlclient.dsp
+++ b/VC++Files/client/mysqlclient.dsp
@@ -65,7 +65,8 @@ LIB32=link.exe -lib
# PROP Intermediate_Dir "debug"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /Z7 /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
-# ADD CPP /nologo /G6 /MTd /W3 /Zi /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /D "USE_TLS" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /ZI /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /D "USE_TLS" /FD /c
+# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x409
# ADD RSC /l 0x409
BSC32=bscmake.exe
@@ -480,10 +481,6 @@ SOURCE=..\strings\strxmov.c
# End Source File
# Begin Source File
-SOURCE=..\strings\strxnmov.c
-# End Source File
-# Begin Source File
-
SOURCE=..\mysys\thr_mutex.c
# End Source File
# Begin Source File
diff --git a/VC++Files/client/mysqldump.dsp b/VC++Files/client/mysqldump.dsp
index 448ba126153..dcf1c1435a6 100644
--- a/VC++Files/client/mysqldump.dsp
+++ b/VC++Files/client/mysqldump.dsp
@@ -42,7 +42,7 @@ RSC=rc.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "NDEBUG" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /G6 /MT /W3 /GX- /O2 /I "../include" /I "../" /D "NDEBUG" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
@@ -67,7 +67,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /GX- /ZI /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
diff --git a/VC++Files/client/mysqlimport.dsp b/VC++Files/client/mysqlimport.dsp
index 5de3b68dd4e..f10c1f90f58 100644
--- a/VC++Files/client/mysqlimport.dsp
+++ b/VC++Files/client/mysqlimport.dsp
@@ -42,7 +42,7 @@ RSC=rc.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "NDEBUG" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /G6 /MT /W3 /GX- /O2 /I "../include" /I "../" /D "NDEBUG" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
@@ -68,7 +68,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /GX- /ZI /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
diff --git a/VC++Files/client/mysqlshow.dsp b/VC++Files/client/mysqlshow.dsp
index 329f128d1b6..dd0fc09c70f 100644
--- a/VC++Files/client/mysqlshow.dsp
+++ b/VC++Files/client/mysqlshow.dsp
@@ -42,7 +42,7 @@ RSC=rc.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "NDEBUG" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /G6 /MT /W3 /GX- /O2 /I "../include" /I "../" /D "NDEBUG" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
@@ -67,7 +67,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /GX- /ZI /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
diff --git a/VC++Files/innobase/innobase.dsp b/VC++Files/innobase/innobase.dsp
index c3084bfa799..d7e9a6d808f 100644
--- a/VC++Files/innobase/innobase.dsp
+++ b/VC++Files/innobase/innobase.dsp
@@ -4,7 +4,7 @@
# TARGTYPE "Win32 (x86) Static Library" 0x0104
-CFG=innobase - Win32 Max
+CFG=INNOBASE - WIN32 RELEASE
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
@@ -13,12 +13,10 @@ CFG=innobase - Win32 Max
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
-!MESSAGE NMAKE /f "innobase.mak" CFG="innobase - Win32 Max"
+!MESSAGE NMAKE /f "innobase.mak" CFG="INNOBASE - WIN32 RELEASE"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
-!MESSAGE "innobase - Win32 Max" (based on "Win32 (x86) Static Library")
-!MESSAGE "innobase - Win32 Max nt" (based on "Win32 (x86) Static Library")
!MESSAGE "innobase - Win32 Debug" (based on "Win32 (x86) Static Library")
!MESSAGE "innobase - Win32 Release" (based on "Win32 (x86) Static Library")
!MESSAGE
@@ -30,53 +28,7 @@ CFG=innobase - Win32 Max
CPP=cl.exe
RSC=rc.exe
-!IF "$(CFG)" == "innobase - Win32 Max"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "innobase___Win32_Max"
-# PROP BASE Intermediate_Dir "innobase___Win32_Max"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "innobase___Win32_Max"
-# PROP Intermediate_Dir "innobase___Win32_Max"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /G6 /MT /W3 /GX /O2 /I "../innobase/include" /D "NDEBUG" /D "_LIB" /D "_WIN32" /D "__NT__" /D "WIN32" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MT /W3 /GX /O2 /I "../innobase/include" /I "../include" /D "NDEBUG" /D "_LIB" /D "_WIN32" /D "WIN32" /D "_MBCS" /D "MYSQL_SERVER" /YX /FD /c
-# ADD BASE RSC /l 0x416 /d "NDEBUG"
-# ADD RSC /l 0x416 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo /out:"..\lib_release\innobase-nt.lib"
-# ADD LIB32 /nologo /out:"..\lib_release\innodb.lib"
-
-!ELSEIF "$(CFG)" == "innobase - Win32 Max nt"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "innobase___Win32_Max_nt"
-# PROP BASE Intermediate_Dir "innobase___Win32_Max_nt"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "innobase___Win32_Max_nt"
-# PROP Intermediate_Dir "innobase___Win32_Max_nt"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /G6 /MT /W3 /GX /O2 /I "../innobase/include" /D "NDEBUG" /D "_LIB" /D "_WIN32" /D "__NT__" /D "WIN32" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MT /W3 /GX /O2 /I "../innobase/include" /I "../include" /D "NDEBUG" /D "_LIB" /D "_WIN32" /D "__NT__" /D "WIN32" /D "_MBCS" /D "MYSQL_SERVER" /YX /FD /c
-# ADD BASE RSC /l 0x416 /d "NDEBUG"
-# ADD RSC /l 0x416 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo /out:"..\lib_release\innobase-nt.lib"
-# ADD LIB32 /nologo /out:"..\lib_release\innodb-nt.lib"
-
-!ELSEIF "$(CFG)" == "innobase - Win32 Debug"
+!IF "$(CFG)" == "innobase - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
@@ -103,13 +55,13 @@ LIB32=link.exe -lib
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "innobase___Win32_Release"
-# PROP BASE Intermediate_Dir "innobase___Win32_Release"
+# PROP BASE Output_Dir "innobase___Win32_Release0"
+# PROP BASE Intermediate_Dir "innobase___Win32_Release0"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "innobase___Win32_Release"
-# PROP Intermediate_Dir "innobase___Win32_Release"
+# PROP Output_Dir "innobase___Win32_Release0"
+# PROP Intermediate_Dir "innobase___Win32_Release0"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /G6 /MT /W3 /GX /O2 /I "../innobase/include" /I "../include" /D "NDEBUG" /D "_LIB" /D "_WIN32" /D "WIN32" /D "_MBCS" /D "MYSQL_SERVER" /YX /FD /c
# ADD CPP /nologo /G6 /MT /W3 /GX /O2 /I "../innobase/include" /I "../include" /D "NDEBUG" /D "_LIB" /D "_WIN32" /D "WIN32" /D "_MBCS" /D "MYSQL_SERVER" /YX /FD /c
@@ -126,8 +78,6 @@ LIB32=link.exe -lib
# Begin Target
-# Name "innobase - Win32 Max"
-# Name "innobase - Win32 Max nt"
# Name "innobase - Win32 Debug"
# Name "innobase - Win32 Release"
# Begin Source File
diff --git a/VC++Files/libmysql/libmysql.def b/VC++Files/libmysql/libmysql.def
new file mode 100644
index 00000000000..3ddbe28bc83
--- /dev/null
+++ b/VC++Files/libmysql/libmysql.def
@@ -0,0 +1,118 @@
+LIBRARY LIBMYSQL
+DESCRIPTION 'MySQL 4.0 Client Library'
+VERSION 4.0
+EXPORTS
+ mysql_affected_rows
+ mysql_close
+ mysql_data_seek
+ mysql_debug
+ mysql_dump_debug_info
+ mysql_eof
+ mysql_errno
+ mysql_error
+ mysql_escape_string
+ mysql_fetch_field
+ mysql_fetch_field_direct
+ mysql_fetch_fields
+ mysql_fetch_lengths
+ mysql_fetch_row
+ mysql_field_count
+ mysql_field_seek
+ mysql_field_tell
+ mysql_free_result
+ mysql_get_client_info
+ mysql_get_host_info
+ mysql_get_proto_info
+ mysql_get_server_info
+ mysql_info
+ mysql_init
+ mysql_insert_id
+ mysql_kill
+ mysql_list_dbs
+ mysql_list_fields
+ mysql_list_processes
+ mysql_list_tables
+ mysql_num_fields
+ mysql_num_rows
+ mysql_odbc_escape_string
+ mysql_options
+ mysql_ping
+ mysql_query
+ mysql_real_connect
+ mysql_real_query
+ mysql_refresh
+ mysql_row_seek
+ mysql_row_tell
+ mysql_select_db
+ mysql_shutdown
+ mysql_stat
+ mysql_store_result
+ mysql_thread_id
+ mysql_use_result
+ bmove_upp
+ delete_dynamic
+ _dig_vec
+ init_dynamic_array
+ insert_dynamic
+ int2str
+ is_prefix
+ list_add
+ list_delete
+ max_allowed_packet
+ my_casecmp
+ my_init
+ my_end
+ my_strdup
+ my_malloc
+ my_memdup
+ my_no_flags_free
+ my_realloc
+ my_thread_end
+ my_thread_init
+ net_buffer_length
+ set_dynamic
+ strcend
+ strdup_root
+ strfill
+ strinstr
+ strmake
+ strmov
+ strxmov
+ myodbc_remove_escape
+ mysql_thread_safe
+ mysql_character_set_name
+ mysql_change_user
+ mysql_send_query
+ mysql_read_query_result
+ mysql_real_escape_string
+ mysql_ssl_set
+ mysql_real_connect
+ mysql_master_query
+ mysql_master_send_query
+ mysql_slave_query
+ mysql_slave_send_query
+ mysql_enable_rpl_parse
+ mysql_disable_rpl_parse
+ mysql_rpl_parse_enabled
+ mysql_enable_reads_from_master
+ mysql_disable_reads_from_master
+ mysql_reads_from_master_enabled
+ mysql_rpl_query_type
+ mysql_rpl_probe
+ mysql_set_master
+ mysql_add_slave
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/VC++Files/libmysql/libmySQL.dsp b/VC++Files/libmysql/libmysql.dsp
index 14587260d60..4dc0f86a6e9 100644
--- a/VC++Files/libmysql/libmySQL.dsp
+++ b/VC++Files/libmysql/libmysql.dsp
@@ -43,7 +43,7 @@ RSC=rc.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c
-# ADD CPP /nologo /G6 /MT /W3 /O2 /I "." /I "..\include" /D "NDEBUG" /D "DBUG_OFF" /D "_WINDOWS" /D "USE_TLS" /D "USE_OLD_FUNCTIONS" /FD /c
+# ADD CPP /nologo /G6 /MT /W3 /O2 /I "." /I "..\include" /D "NDEBUG" /D "DBUG_OFF" /D "_WINDOWS" /D "USE_TLS" /FD /c
# SUBTRACT CPP /YX
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32
@@ -59,7 +59,7 @@ LINK32=link.exe
# Begin Special Build Tool
SOURCE="$(InputPath)"
PostBuild_Desc=Move DLL export lib
-PostBuild_Cmds=copy release\libmysql.lib ..\lib_release
+PostBuild_Cmds=xcopy release\libmysql.lib ..\lib_release /v
# End Special Build Tool
!ELSEIF "$(CFG)" == "libmySQL - Win32 Debug"
@@ -76,7 +76,8 @@ PostBuild_Cmds=copy release\libmysql.lib ..\lib_release
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "." /I "..\include" /D "_DEBUG" /D "_WINDOWS" /D "SAFE_MUTEX" /D "USE_TLS" /D "USE_OLD_FUNCTIONS" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /ZI /Od /I "." /I "..\include" /D "_DEBUG" /D "_WINDOWS" /D "SAFE_MUTEX" /D "USE_TLS" /FD /c
+# SUBTRACT CPP /YX
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG"
@@ -91,7 +92,7 @@ LINK32=link.exe
# Begin Special Build Tool
SOURCE="$(InputPath)"
PostBuild_Desc=Move DLL export lib
-PostBuild_Cmds=copy debug\libmysql.lib ..\lib_debug
+PostBuild_Cmds=xcopy ..\lib_debug\libmysql.dll C:\winnt\system32\ /v xcopy debug\libmysql.lib ..\lib_debug\ /v
# End Special Build Tool
!ENDIF
@@ -446,10 +447,6 @@ SOURCE=..\strings\strxmov.c
# End Source File
# Begin Source File
-SOURCE=..\strings\strxnmov.c
-# End Source File
-# Begin Source File
-
SOURCE=..\mysys\thr_mutex.c
# End Source File
# Begin Source File
diff --git a/VC++Files/libmysqld/libmysqld.def b/VC++Files/libmysqld/libmysqld.def
new file mode 100644
index 00000000000..c6615ee971c
--- /dev/null
+++ b/VC++Files/libmysqld/libmysqld.def
@@ -0,0 +1,65 @@
+LIBRARY LIBMYSQLD
+DESCRIPTION 'MySQL 4.0 Embedded Server Library'
+VERSION 4.0
+EXPORTS
+ mysql_server_end
+ mysql_server_init
+ mysql_use_result
+ mysql_thread_safe
+ mysql_thread_id
+ mysql_store_result
+ mysql_stat
+ mysql_shutdown
+ mysql_select_db
+ mysql_row_tell
+ mysql_row_seek
+ mysql_real_query
+ mysql_real_connect
+ mysql_query
+ mysql_ping
+ mysql_options
+ mysql_num_rows
+ mysql_num_fields
+ mysql_list_tables
+ mysql_list_processes
+ mysql_list_fields
+ mysql_list_dbs
+ mysql_kill
+ mysql_insert_id
+ mysql_init
+ mysql_info
+ mysql_get_server_info
+ mysql_get_proto_info
+ mysql_get_host_info
+ mysql_get_client_info
+ mysql_free_result
+ mysql_field_tell
+ mysql_field_count
+ mysql_field_seek
+ mysql_fetch_row
+ mysql_fetch_lengths
+ mysql_fetch_fields
+ mysql_fetch_field_direct
+ mysql_fetch_field
+ mysql_escape_string
+ mysql_real_escape_string
+ mysql_error
+ mysql_errno
+ mysql_eof
+ mysql_dump_debug_info
+ mysql_drop_db
+ mysql_debug
+ mysql_data_seek
+ mysql_create_db
+ mysql_character_set_name
+ mysql_change_user
+ mysql_connect
+ mysql_close
+ mysql_affected_rows
+ mysql_thread_init
+ mysql_thread_end
+ mysql_send_query
+ mysql_read_query_result
+ mysql_refresh
+ mysql_odbc_escape_string
+ myodbc_remove_escape
diff --git a/VC++Files/libmysqld/libmysqld.dsp b/VC++Files/libmysqld/libmysqld.dsp
index 34574dd4f2f..bd20c75a24e 100644
--- a/VC++Files/libmysqld/libmysqld.dsp
+++ b/VC++Files/libmysqld/libmysqld.dsp
@@ -43,7 +43,7 @@ RSC=rc.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "LIBMYSQLD_EXPORTS" /YX /FD /c
-# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /I "../bdb/build_win32" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "HAVE_BERKELEY_DB" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /D "EMBEDDED_LIBRARY" /D "HAVE_INNOBASE_DB" /D "DBUG_OFF" /D "USE_TLS" /FR /FD /c
+# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /I "../bdb/build_win32" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /D "EMBEDDED_LIBRARY" /D "HAVE_INNOBASE_DB" /D "DBUG_OFF" /D "USE_TLS" /D "__WIN__" /FR /FD /c
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x416 /d "NDEBUG"
@@ -53,7 +53,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\vio.lib ..\lib_release\merge.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\innodb.lib ..\lib_release\bdb.lib ..\lib_release\zlib.lib /nologo /dll /machine:I386 /out:"../lib_release/libmysqld.dll" /implib:"../lib_release/libmysqld.lib"
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\innodb.lib ..\lib_release\bdb.lib ..\lib_release\zlib.lib /nologo /dll /machine:I386 /out:"../lib_release/libmysqld.dll" /implib:"../lib_release/libmysqld.lib"
# SUBTRACT LINK32 /pdb:none
!ELSEIF "$(CFG)" == "libmysqld - Win32 Debug"
@@ -70,7 +70,7 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "LIBMYSQLD_EXPORTS" /YX /FD /GZ /c
-# ADD CPP /nologo /MT /W3 /Gm /Zi /Od /I "../include" /I "../sql" /I "../regex" /I "../bdb/build_win32" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "HAVE_BERKELEY_DB" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /D "EMBEDDED_LIBRARY" /D "HAVE_INNOBASE_DB" /D "USE_TLS" /FD /GZ /c
+# ADD CPP /nologo /MT /W3 /Gm /Zi /Od /I "../include" /I "../sql" /I "../regex" /I "../bdb/build_win32" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "HAVE_BERKELEY_DB" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /D "EMBEDDED_LIBRARY" /D "HAVE_INNOBASE_DB" /D "USE_TLS" /D "__WIN__" /FD /GZ /c
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x416 /d "_DEBUG"
@@ -80,7 +80,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_debug\dbug.lib ..\lib_debug\mysys.lib ..\lib_debug\strings.lib ..\lib_debug\merge.lib ..\lib_debug\regex.lib ..\lib_debug\heap.lib ..\lib_debug\bdb.lib ..\lib_debug\innodb.lib ..\lib_debug\vio.lib /nologo /dll /debug /machine:I386 /nodefaultlib:"LIBCMTD" /out:"../lib_debug/libmysqld.dll" /implib:"../lib_debug/libmysqld.lib" /pdbtype:sept
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_debug\dbug.lib ..\lib_debug\mysys.lib ..\lib_debug\strings.lib ..\lib_debug\regex.lib ..\lib_debug\heap.lib ..\lib_debug\innodb.lib /nologo /dll /incremental:no /debug /machine:I386 /nodefaultlib:"LIBCMTD" /out:"../lib_debug/libmysqld.dll" /implib:"../lib_debug/libmysqld.lib" /pdbtype:sept
# SUBTRACT LINK32 /pdb:none
!ENDIF
@@ -199,10 +199,6 @@ SOURCE=..\sql\key.cpp
# End Source File
# Begin Source File
-SOURCE=.\lib_load.cpp
-# End Source File
-# Begin Source File
-
SOURCE=.\lib_sql.cpp
# End Source File
# Begin Source File
@@ -271,6 +267,10 @@ SOURCE=..\sql\repl_failsafe.cpp
# End Source File
# Begin Source File
+SOURCE=..\sql\set_var.cpp
+# End Source File
+# Begin Source File
+
SOURCE=..\sql\slave.cpp
# End Source File
# Begin Source File
@@ -324,6 +324,10 @@ SOURCE=..\sql\sql_lex.cpp
# Begin Source File
SOURCE=..\sql\sql_list.cpp
+# End Source File
+# Begin Source File
+
+SOURCE=..\sql\sql_load.cpp
# End Source File
# Begin Source File
diff --git a/VC++Files/libmysqltest/myTest.dsp b/VC++Files/libmysqltest/myTest.dsp
index 74f7b8ae48e..fec250e7a40 100644
--- a/VC++Files/libmysqltest/myTest.dsp
+++ b/VC++Files/libmysqltest/myTest.dsp
@@ -67,7 +67,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "..\include" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /ZI /Od /I "..\include" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FD /c
+# SUBTRACT CPP /Fr /YX
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
diff --git a/VC++Files/libmysqltest/mytest.c b/VC++Files/libmysqltest/mytest.c
index 9c6818ecf6c..ceecbb19902 100644
--- a/VC++Files/libmysqltest/mytest.c
+++ b/VC++Files/libmysqltest/mytest.c
@@ -32,7 +32,7 @@ main( int argc, char * argv[] )
{
char szSQL[ 200 ], aszFlds[ 25 ][ 25 ], szDB[ 50 ] ;
- const char *pszT;
+ const char *pszT;
int i, j, k, l, x ;
MYSQL * myData ;
MYSQL_RES * res ;
diff --git a/VC++Files/mysql.dsw b/VC++Files/mysql.dsw
index 6a7ec7a57dd..a6c3b4e7334 100644
--- a/VC++Files/mysql.dsw
+++ b/VC++Files/mysql.dsw
@@ -141,9 +141,6 @@ Package=<4>
Project_Dep_Name myisam
End Project Dependency
Begin Project Dependency
- Project_Dep_Name myisammrg
- End Project Dependency
- Begin Project Dependency
Project_Dep_Name mysys
End Project Dependency
Begin Project Dependency
@@ -153,14 +150,11 @@ Package=<4>
Project_Dep_Name strings
End Project Dependency
Begin Project Dependency
- Project_Dep_Name vio
+ Project_Dep_Name myisammrg
End Project Dependency
Begin Project Dependency
Project_Dep_Name zlib
End Project Dependency
- Begin Project Dependency
- Project_Dep_Name merge
- End Project Dependency
}}}
###############################################################################
@@ -444,18 +438,6 @@ Package=<4>
###############################################################################
-Project: "mysqldemb"=".\mysqldemb\mysqldemb.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
Project: "mysqldump"=".\client\mysqldump.dsp" - Package Owner=<4>
Package=<5>
@@ -486,54 +468,6 @@ Package=<4>
###############################################################################
-Project: "mysqlserver"=".\mysqlserver\mysqlserver.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
- Begin Project Dependency
- Project_Dep_Name zlib
- End Project Dependency
- Begin Project Dependency
- Project_Dep_Name bdb
- End Project Dependency
- Begin Project Dependency
- Project_Dep_Name dbug
- End Project Dependency
- Begin Project Dependency
- Project_Dep_Name heap
- End Project Dependency
- Begin Project Dependency
- Project_Dep_Name innobase
- End Project Dependency
- Begin Project Dependency
- Project_Dep_Name merge
- End Project Dependency
- Begin Project Dependency
- Project_Dep_Name myisam
- End Project Dependency
- Begin Project Dependency
- Project_Dep_Name myisammrg
- End Project Dependency
- Begin Project Dependency
- Project_Dep_Name mysqldemb
- End Project Dependency
- Begin Project Dependency
- Project_Dep_Name mysys
- End Project Dependency
- Begin Project Dependency
- Project_Dep_Name regex
- End Project Dependency
- Begin Project Dependency
- Project_Dep_Name strings
- End Project Dependency
-}}}
-
-###############################################################################
-
Project: "mysqlshow"=".\client\mysqlshow.dsp" - Package Owner=<4>
Package=<5>
@@ -690,24 +624,6 @@ Package=<4>
###############################################################################
-Project: "test_libmysqld"=".\libmysqld\examples\test_libmysqld.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
- Begin Project Dependency
- Project_Dep_Name libmysqld
- End Project Dependency
- Begin Project Dependency
- Project_Dep_Name mysqlclient
- End Project Dependency
-}}}
-
-###############################################################################
-
Project: "thr_insert_test"=".\thr_insert_test\thr_insert_test.dsp" - Package Owner=<4>
Package=<5>
diff --git a/VC++Files/mysqlbinlog/mysqlbinlog.dsp b/VC++Files/mysqlbinlog/mysqlbinlog.dsp
index a62253b2a2c..4145585abc5 100644
--- a/VC++Files/mysqlbinlog/mysqlbinlog.dsp
+++ b/VC++Files/mysqlbinlog/mysqlbinlog.dsp
@@ -67,7 +67,7 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "MYSQL_SERVER" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /ZI /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "MYSQL_SERVER" /FD /c
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
diff --git a/VC++Files/mysqlcheck/mysqlcheck.dsp b/VC++Files/mysqlcheck/mysqlcheck.dsp
index d4b4f5652b7..49c3fc2b702 100644
--- a/VC++Files/mysqlcheck/mysqlcheck.dsp
+++ b/VC++Files/mysqlcheck/mysqlcheck.dsp
@@ -49,7 +49,7 @@ BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 mysqlclient.lib wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 /out:"../client_release/mysqlcheck.exe" /libpath:"..\lib_release\\"
!ELSEIF "$(CFG)" == "mysqlcheck - Win32 Debug"
@@ -65,15 +65,15 @@ LINK32=link.exe
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "MYSQL_SERVER" /FD /c
+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /ZI /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "MYSQL_SERVER" /FD /c
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 mysqlclient.lib wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"../client_debug/mysqlcheck.exe" /pdbtype:sept /libpath:"..\lib_debug\\"
!ENDIF
diff --git a/VC++Files/mysqlmanager/MySqlManager.dsp b/VC++Files/mysqlmanager/MySqlManager.dsp
index 56e1b4a5bf2..60ee700b00c 100644
--- a/VC++Files/mysqlmanager/MySqlManager.dsp
+++ b/VC++Files/mysqlmanager/MySqlManager.dsp
@@ -71,7 +71,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_AFXDLL" /Yu"stdafx.h" /FD /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /GX /Zi /Od /I "../include" /D "_DEBUG" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /GX /ZI /Od /I "../include" /D "_DEBUG" /D "_WINDOWS" /FD /c
+# SUBTRACT CPP /Fr /YX /Yc /Yu
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
# ADD MTL /nologo /D "_DEBUG" /o "NUL" /win32
# SUBTRACT MTL /mktyplib203
diff --git a/VC++Files/mysys/mysys.dsp b/VC++Files/mysys/mysys.dsp
index 7a0087b68d6..61695063376 100644
--- a/VC++Files/mysys/mysys.dsp
+++ b/VC++Files/mysys/mysys.dsp
@@ -66,7 +66,8 @@ LIB32=link.exe -lib
# PROP Intermediate_Dir "debug"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /Z7 /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
-# ADD CPP /nologo /G6 /MTd /W3 /Zi /Od /I "../include" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /D "USE_SYMDIR" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /ZI /Od /I "../include" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /D "USE_SYMDIR" /FD /c
+# SUBTRACT CPP /Fr
# ADD BASE RSC /l 0x409
# ADD RSC /l 0x409
BSC32=bscmake.exe
diff --git a/VC++Files/pack_isam/pack_isam.dsp b/VC++Files/pack_isam/pack_isam.dsp
index 036dcd9a2ca..20c832c96d0 100644
--- a/VC++Files/pack_isam/pack_isam.dsp
+++ b/VC++Files/pack_isam/pack_isam.dsp
@@ -66,7 +66,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "../include" /I "../isam" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /ZI /Od /I "../include" /I "../isam" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# SUBTRACT CPP /Fr
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
diff --git a/VC++Files/perror/perror.dsp b/VC++Files/perror/perror.dsp
index 2b720ace3e7..439fcef1547 100644
--- a/VC++Files/perror/perror.dsp
+++ b/VC++Files/perror/perror.dsp
@@ -43,7 +43,7 @@ RSC=rc.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /G6 /MT /W3 /GX- /O2 /I "../include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "NDEBUG"
@@ -70,7 +70,7 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "../include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /GX- /ZI /Od /I "../include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG"
diff --git a/VC++Files/replace/replace.dsp b/VC++Files/replace/replace.dsp
index 54584151418..011b62d08ec 100644
--- a/VC++Files/replace/replace.dsp
+++ b/VC++Files/replace/replace.dsp
@@ -67,7 +67,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "../include" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /ZI /Od /I "../include" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x40b /d "_DEBUG"
# ADD RSC /l 0x40b /d "_DEBUG"
BSC32=bscmake.exe
diff --git a/VC++Files/sql/mysqld.dsp b/VC++Files/sql/mysqld.dsp
index a84af8adedc..7b42eea50f5 100644
--- a/VC++Files/sql/mysqld.dsp
+++ b/VC++Files/sql/mysqld.dsp
@@ -45,7 +45,7 @@ RSC=rc.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /D "NDEBUG" /D "DBUG_OFF" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /FD /c
+# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /D "NDEBUG" /D "DBUG_OFF" /D "HAVE_INNOBASE_DB" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /FD /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x410 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
@@ -71,7 +71,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "../include" /I "../regex" /I "../bdb/build_win32" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "HAVE_INNOBASE_DB" /D "HAVE_BERKELEY_DB" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /ZI /Od /I "../include" /I "../regex" /I "../bdb/build_win32" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "HAVE_INNOBASE_DB" /D "HAVE_BERKELEY_DB" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /FD /c
+# SUBTRACT CPP /Fr /YX
# ADD BASE RSC /l 0x410 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
@@ -97,7 +98,7 @@ LINK32=link.exe
# PROP Target_Dir ""
# ADD BASE CPP /nologo /G5 /MT /W3 /O2 /I "../include" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /D "__WIN32__" /D "DBUG_OFF" /FD /c
# SUBTRACT BASE CPP /YX
-# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /D "NDEBUG" /D "__NT__" /D "DBUG_OFF" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /FD /c
+# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /D "NDEBUG" /D "__NT__" /D "DBUG_OFF" /D "MYSQL_SERVER" /D "HAVE_INNOBASE_DB" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /FD /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x410 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
@@ -106,7 +107,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\dbug.lib ..\lib_release\isam.lib ..\lib_release\merge.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib /nologo /subsystem:console /debug /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\vio.lib ..\lib_release\isam.lib ..\lib_release\merge.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\zlib.lib /nologo /subsystem:console /map /machine:I386 /out:"../client_release/mysqld-nt.exe"
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\vio.lib ..\lib_release\isam.lib ..\lib_release\merge.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\innodb.lib ..\lib_release\zlib.lib /nologo /subsystem:console /map /machine:I386 /out:"../client_release/mysqld-nt.exe"
# SUBTRACT LINK32 /pdb:none /debug
!ELSEIF "$(CFG)" == "mysqld - Win32 Max nt"
@@ -125,7 +126,7 @@ LINK32=link.exe
# PROP Target_Dir ""
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /D "NDEBUG" /D "__NT__" /D "DBUG_OFF" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /FD /c
# SUBTRACT BASE CPP /YX
-# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../bdb/build_win32" /D "NDEBUG" /D "__NT__" /D "DBUG_OFF" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "USE_SYMDIR" /D "HAVE_INNOBASE_DB" /D "HAVE_BERKELEY_DB" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /FD /c
+# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../bdb/build_win32" /D "NDEBUG" /D "__NT__" /D "DBUG_OFF" /D "USE_SYMDIR" /D "HAVE_INNOBASE_DB" /D "HAVE_BERKELEY_DB" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /FD /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
@@ -135,7 +136,7 @@ BSC32=bscmake.exe
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\isam.lib ..\lib_release\merge.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\zlib.lib /nologo /subsystem:console /map /machine:I386 /out:"../client_release/mysqld-nt.exe"
# SUBTRACT BASE LINK32 /pdb:none /debug
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\vio.lib ..\lib_release\isam.lib ..\lib_release\merge.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys-max.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\zlib.lib ..\lib_release\innodb-nt.lib ..\lib_release\bdb.lib /nologo /subsystem:console /map /machine:I386 /out:"../client_release/mysqld-max-nt.exe"
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\vio.lib ..\lib_release\isam.lib ..\lib_release\merge.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys-max.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\zlib.lib ..\lib_release\innodb.lib ..\lib_release\bdb.lib /nologo /subsystem:console /map /machine:I386 /out:"../client_release/mysqld-max-nt.exe"
# SUBTRACT LINK32 /pdb:none /debug
!ELSEIF "$(CFG)" == "mysqld - Win32 Max"
@@ -154,7 +155,7 @@ LINK32=link.exe
# PROP Target_Dir ""
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /D "NDEBUG" /D "DBUG_OFF" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /FD /c
# SUBTRACT BASE CPP /YX
-# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../bdb/build_win32" /D "NDEBUG" /D "DBUG_OFF" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "USE_SYMDIR" /D "HAVE_INNOBASE_DB" /D "HAVE_BERKELEY_DB" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /FD /c
+# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../bdb/build_win32" /D "NDEBUG" /D "DBUG_OFF" /D "USE_SYMDIR" /D "HAVE_INNOBASE_DB" /D "HAVE_BERKELEY_DB" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /FD /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
@@ -802,6 +803,10 @@ SOURCE=.\repl_failsafe.cpp
# End Source File
# Begin Source File
+SOURCE=.\set_var.cpp
+# End Source File
+# Begin Source File
+
SOURCE=.\slave.cpp
# End Source File
# Begin Source File
@@ -1162,10 +1167,6 @@ SOURCE=.\sql_test.cpp
# End Source File
# Begin Source File
-SOURCE=.\sql_udf.cpp
-# End Source File
-# Begin Source File
-
SOURCE=.\sql_union.cpp
# End Source File
# Begin Source File
diff --git a/VC++Files/test1/test1.dsp b/VC++Files/test1/test1.dsp
index ffa5fd4d7ed..50a165e3e4d 100644
--- a/VC++Files/test1/test1.dsp
+++ b/VC++Files/test1/test1.dsp
@@ -67,7 +67,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "../include" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /ZI /Od /I "../include" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
diff --git a/VC++Files/thr_insert_test/thr_insert_test.dsp b/VC++Files/thr_insert_test/thr_insert_test.dsp
index 91274e6817a..770125ab65b 100644
--- a/VC++Files/thr_insert_test/thr_insert_test.dsp
+++ b/VC++Files/thr_insert_test/thr_insert_test.dsp
@@ -43,7 +43,7 @@ RSC=rc.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "NDEBUG" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /G6 /MT /W3 /GX- /O2 /I "../include" /I "../" /D "NDEBUG" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "NDEBUG"
@@ -70,7 +70,7 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /GX- /ZI /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG"
diff --git a/VC++Files/thr_test/thr_test.dsp b/VC++Files/thr_test/thr_test.dsp
index 495d7280808..7256f8da2fa 100644
--- a/VC++Files/thr_test/thr_test.dsp
+++ b/VC++Files/thr_test/thr_test.dsp
@@ -68,7 +68,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /G6 /MTd /W3 /Gm /Zi /Od /I "../include" /D "__WIN32__" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /Gm /ZI /Od /I "../include" /D "__WIN32__" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /FD /c
+# SUBTRACT CPP /Fr /YX
# ADD BASE RSC /l 0x40b /d "_DEBUG"
# ADD RSC /l 0x40b /d "_DEBUG"
BSC32=bscmake.exe
diff --git a/VC++Files/vio/vio.dsp b/VC++Files/vio/vio.dsp
index 7c6ecb47e5d..d4b77aad391 100644
--- a/VC++Files/vio/vio.dsp
+++ b/VC++Files/vio/vio.dsp
@@ -64,7 +64,7 @@ LIB32=link.exe -lib
# PROP Intermediate_Dir "Debug"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
-# ADD CPP /nologo /G6 /MTd /W3 /Zi /Od /I "../include" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /D "USE_SYMDIR" /FD /c
+# ADD CPP /nologo /G6 /MTd /W3 /ZI /Od /I "../include" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /D "USE_SYMDIR" /FD /c
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
diff --git a/innobase/btr/btr0btr.c b/innobase/btr/btr0btr.c
index 38d97785832..7a7678b2dcf 100644
--- a/innobase/btr/btr0btr.c
+++ b/innobase/btr/btr0btr.c
@@ -22,6 +22,25 @@ Created 6/2/1994 Heikki Tuuri
#include "ibuf0ibuf.h"
/*
+Latching strategy of the InnoDB B-tree
+--------------------------------------
+A tree latch protects all non-leaf nodes of the tree. Each node of a tree
+also has a latch of its own.
+
+A B-tree operation normally first acquires an S-latch on the tree. It
+searches down the tree and releases the tree latch when it has the
+leaf node latch. To save CPU time we do not acquire any latch on
+non-leaf nodes of the tree during a search, those pages are only bufferfixed.
+
+If an operation needs to restructure the tree, it acquires an X-latch on
+the tree before searching to a leaf node. If it needs, for example, to
+split a leaf,
+(1) InnoDB decides the split point in the leaf,
+(2) allocates a new page,
+(3) inserts the appropriate node pointer to the first non-leaf level,
+(4) releases the tree X-latch,
+(5) and then moves records from the leaf to the new allocated page.
+
Node pointers
-------------
Leaf pages of a B-tree contain the index records stored in the
diff --git a/innobase/dict/dict0dict.c b/innobase/dict/dict0dict.c
index 85199b90a5a..8204a50613e 100644
--- a/innobase/dict/dict0dict.c
+++ b/innobase/dict/dict0dict.c
@@ -308,13 +308,28 @@ dict_table_autoinc_get(
}
/************************************************************************
-Reads the autoinc counter value, 0 if not yet initialized. Does not
-increment the counter. */
+Decrements the autoinc counter value by 1. */
+
+void
+dict_table_autoinc_decrement(
+/*=========================*/
+ dict_table_t* table) /* in: table */
+{
+ mutex_enter(&(table->autoinc_mutex));
+
+ table->autoinc = table->autoinc - 1;
+
+ mutex_exit(&(table->autoinc_mutex));
+}
+
+/************************************************************************
+Reads the next autoinc value (== autoinc counter value), 0 if not yet
+initialized. */
ib_longlong
dict_table_autoinc_read(
/*====================*/
- /* out: value of the counter */
+ /* out: value for a new row, or 0 */
dict_table_t* table) /* in: table */
{
ib_longlong value;
diff --git a/innobase/include/dict0dict.h b/innobase/include/dict0dict.h
index 832654d2666..dd92c5aa467 100644
--- a/innobase/include/dict0dict.h
+++ b/innobase/include/dict0dict.h
@@ -114,13 +114,20 @@ dict_table_autoinc_get(
/* out: value for a new row, or 0 */
dict_table_t* table); /* in: table */
/************************************************************************
-Reads the autoinc counter value, 0 if not yet initialized. Does not
-increment the counter. */
+Decrements the autoinc counter value by 1. */
+
+void
+dict_table_autoinc_decrement(
+/*=========================*/
+ dict_table_t* table); /* in: table */
+/************************************************************************
+Reads the next autoinc value (== autoinc counter value), 0 if not yet
+initialized. */
ib_longlong
dict_table_autoinc_read(
/*====================*/
- /* out: value of the counter */
+ /* out: value for a new row, or 0 */
dict_table_t* table); /* in: table */
/************************************************************************
Peeks the autoinc counter value, 0 if not yet initialized. Does not
diff --git a/libmysqld/lib_load.cc b/libmysqld/lib_load.cc
deleted file mode 100644
index 3db5a2488d1..00000000000
--- a/libmysqld/lib_load.cc
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (c) 2000
- * SWsoft company
- *
- * This material is provided "as is", with absolutely no warranty expressed
- * or implied. Any use is at your own risk.
- *
- * Permission to use or copy this software for any purpose is hereby granted
- * without fee, provided the above notices are retained on all copies.
- * Permission to modify the code and to distribute modified code is granted,
- * provided the above notices are retained, and a notice that the code was
- * modified is included with the above copyright notice.
- *
- */
-/* Copy data from a textfile to table */
-
-#include "mysql_priv.h"
-#include <my_dir.h>
-#include <m_ctype.h>
-
-
-int
-mysql_load_internal(THD * thd, sql_exchange * ex, TABLE_LIST * table_list,
- List<Item> & fields, enum enum_duplicates handle_duplicates,
- bool read_file_from_client, thr_lock_type lock_type);
-
-int
-mysql_load(THD * thd, sql_exchange * ex, TABLE_LIST * table_list,
- List<Item> & fields, enum enum_duplicates handle_duplicates,
- bool read_file_from_client, thr_lock_type lock_type)
-{
- read_file_from_client = 0; //server is always in the same process
- return mysql_load_internal(thd, ex, table_list, fields, handle_duplicates,
- read_file_from_client, lock_type);
-}
-
-#define mysql_load mysql_load_internal
-
-
-#if defined (__WIN__)
-#include "../sql/sql_load.cpp"
-#else
-#include "../sql/sql_load.cc"
-#endif
diff --git a/myisam/mi_check.c b/myisam/mi_check.c
index 0ae700df8c2..5fecf707227 100644
--- a/myisam/mi_check.c
+++ b/myisam/mi_check.c
@@ -1238,7 +1238,7 @@ int mi_repair(MI_CHECK *param, register MI_INFO *info,
USE_WHOLE_KEY);
}
sort_info.dupp++;
- if (!(rep_quick & T_FORCE_UNIQUENESS))
+ if ((param->testflag & (T_FORCE_UNIQUENESS|T_QUICK)) == T_QUICK)
{
param->testflag|=T_RETRY_WITHOUT_QUICK;
param->error_printed=1;
@@ -3210,7 +3210,7 @@ static int sort_delete_record(MI_SORT_PARAM *sort_param)
MI_INFO *info=sort_info->info;
DBUG_ENTER("sort_delete_record");
- if (!(param->testflag & T_FORCE_UNIQUENESS))
+ if ((param->testflag & (T_FORCE_UNIQUENESS|T_QUICK)) == T_QUICK)
{
mi_check_print_error(param,
"Quick-recover aborted; Run recovery without switch -q or with switch -qq");
diff --git a/mysql-test/r/create.result b/mysql-test/r/create.result
index 71044065dad..1e832a128e2 100644
--- a/mysql-test/r/create.result
+++ b/mysql-test/r/create.result
@@ -136,3 +136,8 @@ t1 CREATE TABLE `t1` (
drop table t1;
create table t1 select if(1,'1','0'), month("2002-08-02");
drop table t1;
+create table t1 select if('2002'='2002','Y','N');
+select * from t1;
+if('2002'='2002','Y','N')
+Y
+drop table if exists t1;
diff --git a/mysql-test/r/distinct.result b/mysql-test/r/distinct.result
index 7c9ba7b93c5..0b98218f5d5 100644
--- a/mysql-test/r/distinct.result
+++ b/mysql-test/r/distinct.result
@@ -380,14 +380,11 @@ test2@testdomain.com Z001
test2@testdomain.com R002
test3@testdomain.com Z001
drop table t1,t2;
-DROP TABLE IF EXISTS privatemessage;
-CREATE TABLE privatemessage ( privatemessageid int(10) unsigned NOT NULL auto_increment, folderid smallint(6) NOT NULL default '0', userid int(10) unsigned NOT NULL default '0', touserid int(10) unsigned NOT NULL default '0', fromuserid int(10) unsigned NOT NULL default '0', title varchar(250) NOT NULL default '', message mediumtext NOT NULL, dateline int(10) unsigned NOT NULL default '0', showsignature smallint(6) NOT NULL default '0', iconid smallint(5) unsigned NOT NULL default '0', messageread smallint(6) NOT NULL default '0', readtime int(10) unsigned NOT NULL default '0', receipt smallint(6) unsigned NOT NULL default '0', deleteprompt smallint(6) unsigned NOT NULL default '0', multiplerecipients smallint(6) unsigned NOT NULL default '0', PRIMARY KEY (privatemessageid), KEY userid (userid)) TYPE=MyISAM;
-INSERT INTO privatemessage VALUES (128,0,33,33,8,':D','',996121863,1,0,2,996122850,2,0,0);
-DROP TABLE IF EXISTS user;
-CREATE TABLE user ( userid int(10) unsigned NOT NULL auto_increment, usergroupid smallint(5) unsigned NOT NULL default '0', username varchar(50) NOT NULL default '', password varchar(50) NOT NULL default '', email varchar(50) NOT NULL default '', styleid smallint(5) unsigned NOT NULL default '0', parentemail varchar(50) NOT NULL default '', coppauser smallint(6) NOT NULL default '0', homepage varchar(100) NOT NULL default '', icq varchar(20) NOT NULL default '', aim varchar(20) NOT NULL default '', yahoo varchar(20) NOT NULL default '', signature mediumtext NOT NULL, adminemail smallint(6) NOT NULL default '0', showemail smallint(6) NOT NULL default '0', invisible smallint(6) NOT NULL default '0', usertitle varchar(250) NOT NULL default '', customtitle smallint(6) NOT NULL default '0', joindate int(10) unsigned NOT NULL default '0', cookieuser smallint(6) NOT NULL default '0', daysprune smallint(6) NOT NULL default '0', lastvisit int(10) unsigned NOT NULL default '0', lastactivity int(10) unsigned NOT NULL default '0', lastpost int(10) unsigned NOT NULL default '0', posts smallint(5) unsigned NOT NULL default '0', timezoneoffset varchar(4) NOT NULL default '', emailnotification smallint(6) NOT NULL default '0', buddylist mediumtext NOT NULL, ignorelist mediumtext NOT NULL, pmfolders mediumtext NOT NULL, receivepm smallint(6) NOT NULL default '0', emailonpm smallint(6) NOT NULL default '0', pmpopup smallint(6) NOT NULL default '0', avatarid smallint(6) NOT NULL default '0', avatarrevision int(6) unsigned NOT NULL default '0', options smallint(6) NOT NULL default '15', birthday date NOT NULL default '0000-00-00', maxposts smallint(6) NOT NULL default '-1', startofweek smallint(6) NOT NULL default '1', ipaddress varchar(20) NOT NULL default '', referrerid int(10) unsigned NOT NULL default '0', nosessionhash smallint(6) NOT NULL default '0', autorefresh smallint(6) NOT NULL default '-1', messagepopup tinyint(2) NOT NULL default '0', inforum smallint(5) unsigned NOT NULL default '0', ratenum smallint(5) unsigned NOT NULL default '0', ratetotal smallint(5) unsigned NOT NULL default '0', allowrate smallint(5) unsigned NOT NULL default '1', PRIMARY KEY (userid), KEY usergroupid (usergroupid), KEY username (username), KEY inforum (inforum)) TYPE=MyISAM;
-INSERT INTO user VALUES (33,6,'Kevin','0','kevin@stileproject.com',1,'',0,'http://www.stileproject.com','','','','',1,1,0,'Administrator',0,996120694,1,-1,1030996168,1031027028,1030599436,36,'-6',0,'','','',1,0,1,0,0,15,'0000-00-00',-1,1,'64.0.0.0',0,1,-1,0,0,4,19,1);
-SELECT DISTINCT privatemessage.*, user.* FROM privatemessage LEFT JOIN user ON (user.userid = privatemessage.touserid);
+CREATE TABLE t1 ( privatemessageid int(10) unsigned NOT NULL auto_increment, folderid smallint(6) NOT NULL default '0', userid int(10) unsigned NOT NULL default '0', touserid int(10) unsigned NOT NULL default '0', fromuserid int(10) unsigned NOT NULL default '0', title varchar(250) NOT NULL default '', message mediumtext NOT NULL, dateline int(10) unsigned NOT NULL default '0', showsignature smallint(6) NOT NULL default '0', iconid smallint(5) unsigned NOT NULL default '0', messageread smallint(6) NOT NULL default '0', readtime int(10) unsigned NOT NULL default '0', receipt smallint(6) unsigned NOT NULL default '0', deleteprompt smallint(6) unsigned NOT NULL default '0', multiplerecipients smallint(6) unsigned NOT NULL default '0', PRIMARY KEY (privatemessageid), KEY userid (userid)) TYPE=MyISAM;
+INSERT INTO t1 VALUES (128,0,33,33,8,':D','',996121863,1,0,2,996122850,2,0,0);
+CREATE TABLE t2 ( userid int(10) unsigned NOT NULL auto_increment, usergroupid smallint(5) unsigned NOT NULL default '0', username varchar(50) NOT NULL default '', password varchar(50) NOT NULL default '', email varchar(50) NOT NULL default '', styleid smallint(5) unsigned NOT NULL default '0', parentemail varchar(50) NOT NULL default '', coppauser smallint(6) NOT NULL default '0', homepage varchar(100) NOT NULL default '', icq varchar(20) NOT NULL default '', aim varchar(20) NOT NULL default '', yahoo varchar(20) NOT NULL default '', signature mediumtext NOT NULL, adminemail smallint(6) NOT NULL default '0', showemail smallint(6) NOT NULL default '0', invisible smallint(6) NOT NULL default '0', usertitle varchar(250) NOT NULL default '', customtitle smallint(6) NOT NULL default '0', joindate int(10) unsigned NOT NULL default '0', cookieuser smallint(6) NOT NULL default '0', daysprune smallint(6) NOT NULL default '0', lastvisit int(10) unsigned NOT NULL default '0', lastactivity int(10) unsigned NOT NULL default '0', lastpost int(10) unsigned NOT NULL default '0', posts smallint(5) unsigned NOT NULL default '0', timezoneoffset varchar(4) NOT NULL default '', emailnotification smallint(6) NOT NULL default '0', buddylist mediumtext NOT NULL, ignorelist mediumtext NOT NULL, pmfolders mediumtext NOT NULL, receivepm smallint(6) NOT NULL default '0', emailonpm smallint(6) NOT NULL default '0', pmpopup smallint(6) NOT NULL default '0', avatarid smallint(6) NOT NULL default '0', avatarrevision int(6) unsigned NOT NULL default '0', options smallint(6) NOT NULL default '15', birthday date NOT NULL default '0000-00-00', maxposts smallint(6) NOT NULL default '-1', startofweek smallint(6) NOT NULL default '1', ipaddress varchar(20) NOT NULL default '', referrerid int(10) unsigned NOT NULL default '0', nosessionhash smallint(6) NOT NULL default '0', autorefresh smallint(6) NOT NULL default '-1', messagepopup tinyint(2) NOT NULL default '0', inforum smallint(5) unsigned NOT NULL default '0', ratenum smallint(5) unsigned NOT NULL default '0', ratetotal smallint(5) unsigned NOT NULL default '0', allowrate smallint(5) unsigned NOT NULL default '1', PRIMARY KEY (userid), KEY usergroupid (usergroupid), KEY username (username), KEY inforum (inforum)) TYPE=MyISAM;
+INSERT INTO t2 VALUES (33,6,'Kevin','0','kevin@stileproject.com',1,'',0,'http://www.stileproject.com','','','','',1,1,0,'Administrator',0,996120694,1,-1,1030996168,1031027028,1030599436,36,'-6',0,'','','',1,0,1,0,0,15,'0000-00-00',-1,1,'64.0.0.0',0,1,-1,0,0,4,19,1);
+SELECT DISTINCT t1.*, t2.* FROM t1 LEFT JOIN t2 ON (t2.userid = t1.touserid);
privatemessageid folderid userid touserid fromuserid title message dateline showsignature iconid messageread readtime receipt deleteprompt multiplerecipients userid usergroupid username password email styleid parentemail coppauser homepage icq aim yahoo signature adminemail showemail invisible usertitle customtitle joindate cookieuser daysprune lastvisit lastactivity lastpost posts timezoneoffset emailnotification buddylist ignorelist pmfolders receivepm emailonpm pmpopup avatarid avatarrevision options birthday maxposts startofweek ipaddress referrerid nosessionhash autorefresh messagepopup inforum ratenum ratetotal allowrate
128 0 33 33 8 :D 996121863 1 0 2 996122850 2 0 0 33 6 Kevin 0 kevin@stileproject.com 1 0 http://www.stileproject.com 1 1 0 Administrator 0 996120694 1 -1 1030996168 1031027028 1030599436 36 -6 0 1 0 1 0 0 15 0000-00-00 -1 1 64.0.0.0 0 1 -1 0 0 4 19 1
-DROP TABLE IF EXISTS privatemessage;
-DROP TABLE IF EXISTS user;
+DROP TABLE IF EXISTS t1,t2;
diff --git a/mysql-test/r/innodb.result b/mysql-test/r/innodb.result
index c9ae4170238..4224db7c072 100644
--- a/mysql-test/r/innodb.result
+++ b/mysql-test/r/innodb.result
@@ -455,7 +455,7 @@ Duplicate entry 'test2' for key 2
select * from t1;
id ggid email passwd
1 this will work
-4 test2 this will work
+3 test2 this will work
select * from t1 where id=1;
id ggid email passwd
1 this will work
diff --git a/mysql-test/t/create.test b/mysql-test/t/create.test
index 7e924e9f262..bb0d6dc0d64 100644
--- a/mysql-test/t/create.test
+++ b/mysql-test/t/create.test
@@ -91,3 +91,6 @@ show create table t1;
drop table t1;
create table t1 select if(1,'1','0'), month("2002-08-02");
drop table t1;
+create table t1 select if('2002'='2002','Y','N');
+select * from t1;
+drop table if exists t1;
diff --git a/mysql-test/t/distinct.test b/mysql-test/t/distinct.test
index b85775e8cb5..7c3dc8f84b8 100644
--- a/mysql-test/t/distinct.test
+++ b/mysql-test/t/distinct.test
@@ -242,12 +242,9 @@ SELECT DISTINCTROW email, shipcode FROM t1, t2 WHERE t1.infoID=t2.infoID;
SELECT DISTINCTROW email FROM t1 ORDER BY dateentered DESC;
SELECT DISTINCTROW email, shipcode FROM t1, t2 WHERE t1.infoID=t2.infoID ORDER BY dateentered DESC;
drop table t1,t2;
-DROP TABLE IF EXISTS privatemessage;
-CREATE TABLE privatemessage ( privatemessageid int(10) unsigned NOT NULL auto_increment, folderid smallint(6) NOT NULL default '0', userid int(10) unsigned NOT NULL default '0', touserid int(10) unsigned NOT NULL default '0', fromuserid int(10) unsigned NOT NULL default '0', title varchar(250) NOT NULL default '', message mediumtext NOT NULL, dateline int(10) unsigned NOT NULL default '0', showsignature smallint(6) NOT NULL default '0', iconid smallint(5) unsigned NOT NULL default '0', messageread smallint(6) NOT NULL default '0', readtime int(10) unsigned NOT NULL default '0', receipt smallint(6) unsigned NOT NULL default '0', deleteprompt smallint(6) unsigned NOT NULL default '0', multiplerecipients smallint(6) unsigned NOT NULL default '0', PRIMARY KEY (privatemessageid), KEY userid (userid)) TYPE=MyISAM;
-INSERT INTO privatemessage VALUES (128,0,33,33,8,':D','',996121863,1,0,2,996122850,2,0,0);
-DROP TABLE IF EXISTS user;
-CREATE TABLE user ( userid int(10) unsigned NOT NULL auto_increment, usergroupid smallint(5) unsigned NOT NULL default '0', username varchar(50) NOT NULL default '', password varchar(50) NOT NULL default '', email varchar(50) NOT NULL default '', styleid smallint(5) unsigned NOT NULL default '0', parentemail varchar(50) NOT NULL default '', coppauser smallint(6) NOT NULL default '0', homepage varchar(100) NOT NULL default '', icq varchar(20) NOT NULL default '', aim varchar(20) NOT NULL default '', yahoo varchar(20) NOT NULL default '', signature mediumtext NOT NULL, adminemail smallint(6) NOT NULL default '0', showemail smallint(6) NOT NULL default '0', invisible smallint(6) NOT NULL default '0', usertitle varchar(250) NOT NULL default '', customtitle smallint(6) NOT NULL default '0', joindate int(10) unsigned NOT NULL default '0', cookieuser smallint(6) NOT NULL default '0', daysprune smallint(6) NOT NULL default '0', lastvisit int(10) unsigned NOT NULL default '0', lastactivity int(10) unsigned NOT NULL default '0', lastpost int(10) unsigned NOT NULL default '0', posts smallint(5) unsigned NOT NULL default '0', timezoneoffset varchar(4) NOT NULL default '', emailnotification smallint(6) NOT NULL default '0', buddylist mediumtext NOT NULL, ignorelist mediumtext NOT NULL, pmfolders mediumtext NOT NULL, receivepm smallint(6) NOT NULL default '0', emailonpm smallint(6) NOT NULL default '0', pmpopup smallint(6) NOT NULL default '0', avatarid smallint(6) NOT NULL default '0', avatarrevision int(6) unsigned NOT NULL default '0', options smallint(6) NOT NULL default '15', birthday date NOT NULL default '0000-00-00', maxposts smallint(6) NOT NULL default '-1', startofweek smallint(6) NOT NULL default '1', ipaddress varchar(20) NOT NULL default '', referrerid int(10) unsigned NOT NULL default '0', nosessionhash smallint(6) NOT NULL default '0', autorefresh smallint(6) NOT NULL default '-1', messagepopup tinyint(2) NOT NULL default '0', inforum smallint(5) unsigned NOT NULL default '0', ratenum smallint(5) unsigned NOT NULL default '0', ratetotal smallint(5) unsigned NOT NULL default '0', allowrate smallint(5) unsigned NOT NULL default '1', PRIMARY KEY (userid), KEY usergroupid (usergroupid), KEY username (username), KEY inforum (inforum)) TYPE=MyISAM;
-INSERT INTO user VALUES (33,6,'Kevin','0','kevin@stileproject.com',1,'',0,'http://www.stileproject.com','','','','',1,1,0,'Administrator',0,996120694,1,-1,1030996168,1031027028,1030599436,36,'-6',0,'','','',1,0,1,0,0,15,'0000-00-00',-1,1,'64.0.0.0',0,1,-1,0,0,4,19,1);
-SELECT DISTINCT privatemessage.*, user.* FROM privatemessage LEFT JOIN user ON (user.userid = privatemessage.touserid);
-DROP TABLE IF EXISTS privatemessage;
-DROP TABLE IF EXISTS user;
+CREATE TABLE t1 ( privatemessageid int(10) unsigned NOT NULL auto_increment, folderid smallint(6) NOT NULL default '0', userid int(10) unsigned NOT NULL default '0', touserid int(10) unsigned NOT NULL default '0', fromuserid int(10) unsigned NOT NULL default '0', title varchar(250) NOT NULL default '', message mediumtext NOT NULL, dateline int(10) unsigned NOT NULL default '0', showsignature smallint(6) NOT NULL default '0', iconid smallint(5) unsigned NOT NULL default '0', messageread smallint(6) NOT NULL default '0', readtime int(10) unsigned NOT NULL default '0', receipt smallint(6) unsigned NOT NULL default '0', deleteprompt smallint(6) unsigned NOT NULL default '0', multiplerecipients smallint(6) unsigned NOT NULL default '0', PRIMARY KEY (privatemessageid), KEY userid (userid)) TYPE=MyISAM;
+INSERT INTO t1 VALUES (128,0,33,33,8,':D','',996121863,1,0,2,996122850,2,0,0);
+CREATE TABLE t2 ( userid int(10) unsigned NOT NULL auto_increment, usergroupid smallint(5) unsigned NOT NULL default '0', username varchar(50) NOT NULL default '', password varchar(50) NOT NULL default '', email varchar(50) NOT NULL default '', styleid smallint(5) unsigned NOT NULL default '0', parentemail varchar(50) NOT NULL default '', coppauser smallint(6) NOT NULL default '0', homepage varchar(100) NOT NULL default '', icq varchar(20) NOT NULL default '', aim varchar(20) NOT NULL default '', yahoo varchar(20) NOT NULL default '', signature mediumtext NOT NULL, adminemail smallint(6) NOT NULL default '0', showemail smallint(6) NOT NULL default '0', invisible smallint(6) NOT NULL default '0', usertitle varchar(250) NOT NULL default '', customtitle smallint(6) NOT NULL default '0', joindate int(10) unsigned NOT NULL default '0', cookieuser smallint(6) NOT NULL default '0', daysprune smallint(6) NOT NULL default '0', lastvisit int(10) unsigned NOT NULL default '0', lastactivity int(10) unsigned NOT NULL default '0', lastpost int(10) unsigned NOT NULL default '0', posts smallint(5) unsigned NOT NULL default '0', timezoneoffset varchar(4) NOT NULL default '', emailnotification smallint(6) NOT NULL default '0', buddylist mediumtext NOT NULL, ignorelist mediumtext NOT NULL, pmfolders mediumtext NOT NULL, receivepm smallint(6) NOT NULL default '0', emailonpm smallint(6) NOT NULL default '0', pmpopup smallint(6) NOT NULL default '0', avatarid smallint(6) NOT NULL default '0', avatarrevision int(6) unsigned NOT NULL default '0', options smallint(6) NOT NULL default '15', birthday date NOT NULL default '0000-00-00', maxposts smallint(6) NOT NULL default '-1', startofweek smallint(6) NOT NULL default '1', ipaddress varchar(20) NOT NULL default '', referrerid int(10) unsigned NOT NULL default '0', nosessionhash smallint(6) NOT NULL default '0', autorefresh smallint(6) NOT NULL default '-1', messagepopup tinyint(2) NOT NULL default '0', inforum smallint(5) unsigned NOT NULL default '0', ratenum smallint(5) unsigned NOT NULL default '0', ratetotal smallint(5) unsigned NOT NULL default '0', allowrate smallint(5) unsigned NOT NULL default '1', PRIMARY KEY (userid), KEY usergroupid (usergroupid), KEY username (username), KEY inforum (inforum)) TYPE=MyISAM;
+INSERT INTO t2 VALUES (33,6,'Kevin','0','kevin@stileproject.com',1,'',0,'http://www.stileproject.com','','','','',1,1,0,'Administrator',0,996120694,1,-1,1030996168,1031027028,1030599436,36,'-6',0,'','','',1,0,1,0,0,15,'0000-00-00',-1,1,'64.0.0.0',0,1,-1,0,0,4,19,1);
+SELECT DISTINCT t1.*, t2.* FROM t1 LEFT JOIN t2 ON (t2.userid = t1.touserid);
+DROP TABLE IF EXISTS t1,t2;
diff --git a/mysys/my_getopt.c b/mysys/my_getopt.c
index f72511c3014..494e7ac559c 100644
--- a/mysys/my_getopt.c
+++ b/mysys/my_getopt.c
@@ -275,7 +275,7 @@ int handle_options(int *argc, char ***argv,
return EXIT_AMBIGUOUS_OPTION;
}
}
- if (must_be_var && !optp->value)
+ if (must_be_var && optp->var_type == GET_NO_ARG)
{
if (my_getopt_print_errors)
fprintf(stderr, "%s: option '%s' cannot take an argument\n",
diff --git a/sql/ha_innodb.cc b/sql/ha_innodb.cc
index a514116c02c..7b8afe7b8fe 100644
--- a/sql/ha_innodb.cc
+++ b/sql/ha_innodb.cc
@@ -20,6 +20,7 @@
/* TODO list for the InnoDB handler:
- Ask Monty if strings of different languages can exist in the same
database. Answer: in 4.1 yes.
+
*/
#ifdef __GNUC__
@@ -404,8 +405,6 @@ ha_innobase::update_thd(
return(0);
}
-/* The code here appears for documentational purposes only. Not used
-or tested yet. Will be used in 4.1. */
/*********************************************************************
Call this when you have opened a new table handle in HANDLER, before you
call index_read_idx() etc. Actually, we can let the cursor stay open even
@@ -666,20 +665,20 @@ innobase_commit_low(
/*================*/
trx_t* trx) /* in: transaction handle */
{
- if (current_thd->slave_thread)
- {
- /* Update the replication position info inside InnoDB */
+ if (current_thd->slave_thread) {
+ /* Update the replication position info inside InnoDB */
#ifdef NEED_TO_BE_FIXED
- trx->mysql_relay_log_file_name= active_mi->rli.log_file_name;
- trx->mysql_relay_log_pos= active_mi->rli.relay_log_pos;
+ trx->mysql_relay_log_file_name = active_mi->rli.log_file_name;
+ trx->mysql_relay_log_pos = active_mi->rli.relay_log_pos;
#endif
- trx->mysql_master_log_file_name= active_mi->rli.master_log_name;
- trx->mysql_master_log_pos= ((ib_longlong)
+ trx->mysql_master_log_file_name
+ = active_mi->rli.master_log_name;
+ trx->mysql_master_log_pos = ((ib_longlong)
(active_mi->rli.master_log_pos +
active_mi->rli.event_len +
active_mi->rli.pending));
- }
- trx_commit_for_mysql(trx);
+ }
+ trx_commit_for_mysql(trx);
}
/*********************************************************************
@@ -691,7 +690,8 @@ innobase_commit(
/* out: 0 or error number */
THD* thd, /* in: MySQL thread handle of the user for whom
the transaction should be committed */
- void* trx_handle)/* in: InnoDB trx handle or NULL: NULL means
+ void* trx_handle)/* in: InnoDB trx handle or
+ &innodb_dummy_stmt_trx_handle: the latter means
that the current SQL statement ended, and we should
mark the start of a new statement with a savepoint */
{
@@ -715,6 +715,7 @@ innobase_commit(
if (trx_handle != (void*)&innodb_dummy_stmt_trx_handle) {
innobase_commit_low(trx);
+ thd->transaction.all.innodb_active_trans=0;
}
/* Release possible statement level resources */
@@ -771,7 +772,9 @@ innobase_rollback(
/* out: 0 or error number */
THD* thd, /* in: handle to the MySQL thread of the user
whose transaction should be rolled back */
- void* trx_handle)/* in: InnoDB trx handle or a dummy stmt handle */
+ void* trx_handle)/* in: InnoDB trx handle or a dummy stmt handle;
+ the latter means we roll back the latest SQL
+ statement */
{
int error = 0;
trx_t* trx;
@@ -795,6 +798,7 @@ innobase_rollback(
if (trx_handle != (void*)&innodb_dummy_stmt_trx_handle) {
error = trx_rollback_for_mysql(trx);
+ thd->transaction.all.innodb_active_trans=0;
} else {
error = trx_rollback_last_sql_stat_for_mysql(trx);
}
@@ -1189,11 +1193,11 @@ innobase_mysql_cmp(
ret = my_sortncmp((const char*) a, a_length,
(const char*) b, b_length);
if (ret < 0) {
- return(-1);
+ return(-1);
} else if (ret > 0) {
- return(1);
+ return(1);
} else {
- return(0);
+ return(0);
}
default:
assert(0);
@@ -1496,6 +1500,8 @@ ha_innobase::write_row(
int error;
longlong auto_inc;
longlong dummy;
+ ibool incremented_auto_inc_for_stat = FALSE;
+ ibool incremented_auto_inc_counter = FALSE;
DBUG_ENTER("ha_innobase::write_row");
@@ -1566,6 +1572,7 @@ ha_innobase::write_row(
assign sequential values from the counter. */
auto_inc_counter_for_this_stat++;
+ incremented_auto_inc_for_stat = TRUE;
auto_inc = auto_inc_counter_for_this_stat;
@@ -1614,7 +1621,12 @@ ha_innobase::write_row(
}
}
+ /* The following call gets the value of the auto-inc
+ counter of the table and increments it by 1 */
+
auto_inc = dict_table_autoinc_get(prebuilt->table);
+ incremented_auto_inc_counter = TRUE;
+
srv_conc_exit_innodb(prebuilt->trx);
/* We can give the new value for MySQL to place in
@@ -1651,6 +1663,20 @@ ha_innobase::write_row(
srv_conc_exit_innodb(prebuilt->trx);
+ if (error != DB_SUCCESS) {
+ /* If the insert did not succeed we restore the value of
+ the auto-inc counter we used; note that this behavior was
+ introduced only in version 4.0.4 */
+
+ if (incremented_auto_inc_counter) {
+ dict_table_autoinc_decrement(prebuilt->table);
+ }
+
+ if (incremented_auto_inc_for_stat) {
+ auto_inc_counter_for_this_stat--;
+ }
+ }
+
prebuilt->trx->ignore_duplicates_in_insert = FALSE;
error = convert_error_code_to_mysql(error, user_thd);
@@ -3310,7 +3336,7 @@ ha_innobase::update_table_comment(
{
row_prebuilt_t* prebuilt = (row_prebuilt_t*)innobase_prebuilt;
uint length = strlen(comment);
- char* str = my_malloc(length + 550, MYF(0));
+ char* str = my_malloc(length + 16500, MYF(0));
char* pos;
/* Warning: since it is not sure that MySQL calls external_lock
@@ -3332,10 +3358,12 @@ ha_innobase::update_table_comment(
(pos,"InnoDB free: %lu kB",
(ulong) innobase_get_free_space()));
- /* We assume 450 - length bytes of space to print info */
+ /* We assume 16000 - length bytes of space to print info; the limit
+ 16000 bytes is arbitrary, and MySQL could handle at least 64000
+ bytes */
- if (length < 450) {
- dict_print_info_on_foreign_keys(FALSE, pos, 450 - length,
+ if (length < 16000) {
+ dict_print_info_on_foreign_keys(FALSE, pos, 16000 - length,
prebuilt->table);
}
@@ -3507,7 +3535,6 @@ ha_innobase::external_lock(
& (OPTION_NOT_AUTOCOMMIT | OPTION_BEGIN))) {
innobase_commit(thd, trx);
- thd->transaction.all.innodb_active_trans=0;
}
}
}
diff --git a/sql/item_func.cc b/sql/item_func.cc
index 8b05109b289..1bf94ae75d0 100644
--- a/sql/item_func.cc
+++ b/sql/item_func.cc
@@ -173,7 +173,7 @@ Field *Item_func::tmp_table_field(TABLE *t_arg)
if (!t_arg)
return result_field;
- switch (args[0]->result_type()) {
+ switch (result_type()) {
case INT_RESULT:
if (max_length > 11)
res= new Field_longlong(max_length, maybe_null, name, t_arg,
diff --git a/sql/item_strfunc.cc b/sql/item_strfunc.cc
index 720313f4be7..3e32720a663 100644
--- a/sql/item_strfunc.cc
+++ b/sql/item_strfunc.cc
@@ -2096,7 +2096,7 @@ String *Item_func_quote::val_str(String *str)
0, \, ' and ^Z
*/
- static char escmask[32]=
+ static uchar escmask[32]=
{
0x01, 0x00, 0x00, 0x04, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00,
diff --git a/sql/mysqld.cc b/sql/mysqld.cc
index 68064d41d17..172ed0a2968 100644
--- a/sql/mysqld.cc
+++ b/sql/mysqld.cc
@@ -2991,7 +2991,7 @@ struct my_option my_long_options[] =
REQUIRED_ARG, 0, 0, 0, 0, 0, 0 },
{"default-table-type", OPT_TABLE_TYPE,
"Set the default table type for tables", 0, 0,
- 0, GET_NO_ARG, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
+ 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
{"delay-key-write", OPT_DELAY_KEY_WRITE, "Type of DELAY_KEY_WRITE",
0,0,0, GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0},
{"delay-key-write-for-all-tables", OPT_DELAY_KEY_WRITE_ALL,
diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc
index 00e96c8a23c..e291334a29d 100644
--- a/sql/sql_parse.cc
+++ b/sql/sql_parse.cc
@@ -1933,9 +1933,9 @@ mysql_execute_command(void)
// Set privilege for the WHERE clause
tables->grant.want_privilege=(SELECT_ACL & ~tables->grant.privilege);
res = mysql_delete(thd,tables, select_lex->where,
- (ORDER*) select_lex->order_list.first,
- select_lex->select_limit, lex->lock_option,
- select_lex->options);
+ (ORDER*) select_lex->order_list.first,
+ select_lex->select_limit, lex->lock_option,
+ select_lex->options);
break;
}
case SQLCOM_DELETE_MULTI:
diff --git a/sql/unireg.h b/sql/unireg.h
index 2cfa709bbdc..eec89fcee0f 100644
--- a/sql/unireg.h
+++ b/sql/unireg.h
@@ -49,7 +49,7 @@
#define MAX_SYS_VAR_LENGTH 32
#define MAX_KEY 32 /* Max used keys */
#define MAX_REF_PARTS 16 /* Max parts used as ref */
-#define MAX_KEY_LENGTH 500 /* max possible key */
+#define MAX_KEY_LENGTH 1024 /* max possible key */
#if SIZEOF_OFF_T > 4
#define MAX_REFLENGTH 8 /* Max length for record ref */
#else