Commit 5fa560e9 authored by unknown's avatar unknown

Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-maria

into  mysql.com:/home/kent/bk/maria/mysql-maria

parents e9a89f12 afa95c68
...@@ -39,7 +39,9 @@ then ...@@ -39,7 +39,9 @@ then
fi fi
# Make sure to enable all features that affect "make dist" # Make sure to enable all features that affect "make dist"
# Remember that configure restricts the man pages to the configured features !
./configure \ ./configure \
--with-maria-storage-engine \ --with-maria-storage-engine \
--with-embedded-server \
--with-ndbcluster --with-ndbcluster
make make
...@@ -23,7 +23,8 @@ ...@@ -23,7 +23,8 @@
# Note that the structure created by this script is slightly different from # Note that the structure created by this script is slightly different from
# what a normal "make install" would produce. No extra "mysql" sub directory # what a normal "make install" would produce. No extra "mysql" sub directory
# will be created, i.e. no "$prefix/include/mysql", "$prefix/lib/mysql" or # will be created, i.e. no "$prefix/include/mysql", "$prefix/lib/mysql" or
# "$prefix/share/mysql". # "$prefix/share/mysql". This is because the build system explicitly calls
# make with pkgdatadir=<datadir>, etc.
# #
# In GNU make/automake terms # In GNU make/automake terms
# #
...@@ -218,11 +219,13 @@ if [ x"$BASE_SYSTEM" != x"netware" ] ; then ...@@ -218,11 +219,13 @@ if [ x"$BASE_SYSTEM" != x"netware" ] ; then
# If we compiled with gcc, copy libgcc.a to the dist as libmygcc.a # If we compiled with gcc, copy libgcc.a to the dist as libmygcc.a
# ---------------------------------------------------------------------- # ----------------------------------------------------------------------
if [ x"@GXX@" = x"yes" ] ; then if [ x"@GXX@" = x"yes" ] ; then
gcclib=`@CC@ @CFLAGS@ --print-libgcc-file` gcclib=`@CC@ @CFLAGS@ --print-libgcc-file 2>/dev/null` || true
if [ $? -ne 0 ] ; then if [ -z "$gcclib" ] ; then
echo "Warning: Couldn't find libgcc.a!" echo "Warning: Compiler doesn't tell libgcc.a!"
else elif [ -f "$gcclib" ] ; then
$CP $gcclib $DEST/lib/libmygcc.a $CP $gcclib $DEST/lib/libmygcc.a
else
echo "Warning: Compiler result '$gcclib' not found / no file!"
fi fi
fi fi
......
...@@ -200,16 +200,24 @@ parse_arguments() { ...@@ -200,16 +200,24 @@ parse_arguments() {
# #
# First, try to find BASEDIR and ledir (where mysqld is) # First, try to find BASEDIR and ledir (where mysqld is)
# #
if echo '@pkgdatadir@' | grep '^@prefix@' > /dev/null
then
relpkgdata=`echo '@pkgdatadir@' | sed -e 's,^@prefix@,,' -e 's,^/,,' -e 's,^,./,'`
else
# pkgdatadir is not relative to prefix
relpkgdata='@pkgdatadir@'
fi
MY_PWD=`pwd` MY_PWD=`pwd`
# Check for the directories we would expect from a binary release install # Check for the directories we would expect from a binary release install
if test -f ./share/mysql/english/errmsg.sys -a -x ./bin/mysqld if test -f "$relpkgdata"/english/errmsg.sys -a -x ./bin/mysqld
then then
MY_BASEDIR_VERSION=$MY_PWD # Where bin, share and data are MY_BASEDIR_VERSION=$MY_PWD # Where bin, share and data are
ledir=$MY_BASEDIR_VERSION/bin # Where mysqld is ledir=$MY_BASEDIR_VERSION/bin # Where mysqld is
# Check for the directories we would expect from a source install # Check for the directories we would expect from a source install
elif test -f ./share/mysql/english/errmsg.sys -a -x ./libexec/mysqld elif test -f "$relpkgdata"/english/errmsg.sys -a -x ./libexec/mysqld
then then
MY_BASEDIR_VERSION=$MY_PWD # Where libexec, share and var are MY_BASEDIR_VERSION=$MY_PWD # Where libexec, share and var are
ledir=$MY_BASEDIR_VERSION/libexec # Where mysqld is ledir=$MY_BASEDIR_VERSION/libexec # Where mysqld is
...@@ -219,6 +227,7 @@ else ...@@ -219,6 +227,7 @@ else
ledir=@libexecdir@ ledir=@libexecdir@
fi fi
# #
# Second, try to find the data directory # Second, try to find the data directory
# #
......
...@@ -4032,6 +4032,8 @@ int handler::ha_reset() ...@@ -4032,6 +4032,8 @@ int handler::ha_reset()
DBUG_ASSERT(inited == NONE); DBUG_ASSERT(inited == NONE);
/* Free cache used by filesort */ /* Free cache used by filesort */
free_io_cache(table); free_io_cache(table);
/* reset the bitmaps to point to defaults */
table->default_column_bitmaps();
DBUG_RETURN(reset()); DBUG_RETURN(reset());
} }
......
...@@ -8031,7 +8031,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli) ...@@ -8031,7 +8031,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli)
{ {
DBUG_PRINT("info",("ha_index_init returns error %d",error)); DBUG_PRINT("info",("ha_index_init returns error %d",error));
table->file->print_error(error, MYF(0)); table->file->print_error(error, MYF(0));
DBUG_RETURN(error); goto err;
} }
/* Fill key data for the row */ /* Fill key data for the row */
...@@ -8064,7 +8064,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli) ...@@ -8064,7 +8064,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli)
DBUG_PRINT("info",("no record matching the key found in the table")); DBUG_PRINT("info",("no record matching the key found in the table"));
table->file->print_error(error, MYF(0)); table->file->print_error(error, MYF(0));
table->file->ha_index_end(); table->file->ha_index_end();
DBUG_RETURN(error); goto err;
} }
/* /*
...@@ -8092,7 +8092,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli) ...@@ -8092,7 +8092,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli)
if (table->key_info->flags & HA_NOSAME) if (table->key_info->flags & HA_NOSAME)
{ {
table->file->ha_index_end(); table->file->ha_index_end();
DBUG_RETURN(0); goto ok;
} }
/* /*
...@@ -8124,7 +8124,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli) ...@@ -8124,7 +8124,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli)
DBUG_PRINT("info",("no record matching the given row found")); DBUG_PRINT("info",("no record matching the given row found"));
table->file->print_error(error, MYF(0)); table->file->print_error(error, MYF(0));
table->file->ha_index_end(); table->file->ha_index_end();
DBUG_RETURN(error); goto err;
} }
} }
...@@ -8145,7 +8145,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli) ...@@ -8145,7 +8145,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli)
DBUG_PRINT("info",("error initializing table scan" DBUG_PRINT("info",("error initializing table scan"
" (ha_rnd_init returns %d)",error)); " (ha_rnd_init returns %d)",error));
table->file->print_error(error, MYF(0)); table->file->print_error(error, MYF(0));
DBUG_RETURN(error); goto err;
} }
/* Continue until we find the right record or have made a full loop */ /* Continue until we find the right record or have made a full loop */
...@@ -8169,7 +8169,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli) ...@@ -8169,7 +8169,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli)
" (rnd_next returns %d)",error)); " (rnd_next returns %d)",error));
table->file->print_error(error, MYF(0)); table->file->print_error(error, MYF(0));
table->file->ha_rnd_end(); table->file->ha_rnd_end();
DBUG_RETURN(error); goto err;
} }
} }
while (restart_count < 2 && record_compare(table)); while (restart_count < 2 && record_compare(table));
...@@ -8189,10 +8189,16 @@ int Rows_log_event::find_row(const Relay_log_info *rli) ...@@ -8189,10 +8189,16 @@ int Rows_log_event::find_row(const Relay_log_info *rli)
table->file->ha_rnd_end(); table->file->ha_rnd_end();
DBUG_ASSERT(error == HA_ERR_END_OF_FILE || error == HA_ERR_RECORD_DELETED || error == 0); DBUG_ASSERT(error == HA_ERR_END_OF_FILE || error == HA_ERR_RECORD_DELETED || error == 0);
DBUG_RETURN(error); goto err;
} }
ok:
table->default_column_bitmaps();
DBUG_RETURN(0); DBUG_RETURN(0);
err:
table->default_column_bitmaps();
DBUG_RETURN(error);
} }
#endif #endif
......
...@@ -62,7 +62,7 @@ SocketOutputStream::print(const char * fmt, ...){ ...@@ -62,7 +62,7 @@ SocketOutputStream::print(const char * fmt, ...){
if(ret >= 0) if(ret >= 0)
m_timeout_remain-=time; m_timeout_remain-=time;
if(errno==ETIMEDOUT || m_timeout_remain<=0) if((ret < 0 && errno==ETIMEDOUT) || m_timeout_remain<=0)
{ {
m_timedout= true; m_timedout= true;
ret= -1; ret= -1;
...@@ -84,7 +84,7 @@ SocketOutputStream::println(const char * fmt, ...){ ...@@ -84,7 +84,7 @@ SocketOutputStream::println(const char * fmt, ...){
if(ret >= 0) if(ret >= 0)
m_timeout_remain-=time; m_timeout_remain-=time;
if (errno==ETIMEDOUT || m_timeout_remain<=0) if ((ret < 0 && errno==ETIMEDOUT) || m_timeout_remain<=0)
{ {
m_timedout= true; m_timedout= true;
ret= -1; ret= -1;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment