Commit 5a2c426e authored by serg@serg.mylan's avatar serg@serg.mylan

Merge serg@bk-internal.mysql.com:/home/bk/mysql-4.1/

into serg.mylan:/usr/home/serg/Abk/mysql-4.1
parents 9272081e 2bfe8843
...@@ -729,7 +729,6 @@ dict_load_table( ...@@ -729,7 +729,6 @@ dict_load_table(
ulint space; ulint space;
ulint n_cols; ulint n_cols;
ulint err; ulint err;
ulint mix_len;
mtr_t mtr; mtr_t mtr;
#ifdef UNIV_SYNC_DEBUG #ifdef UNIV_SYNC_DEBUG
...@@ -776,38 +775,6 @@ dict_load_table( ...@@ -776,38 +775,6 @@ dict_load_table(
return(NULL); return(NULL);
} }
/* Track a corruption bug reported on the MySQL mailing list Jan 14,
2005: mix_len had a value different from 0 */
field = rec_get_nth_field(rec, 7, &len);
ut_a(len == 4);
mix_len = mach_read_from_4(field);
if (mix_len != 0 && mix_len != 0x80000000) {
ut_print_timestamp(stderr);
fprintf(stderr,
" InnoDB: table %s has a nonsensical mix len %lu\n",
name, (ulong)mix_len);
}
#if MYSQL_VERSION_ID < 50300
/* Starting from MySQL 5.0.3, the high-order bit of MIX_LEN is the
"compact format" flag. */
field = rec_get_nth_field(rec, 7, &len);
if (mach_read_from_1(field) & 0x80) {
btr_pcur_close(&pcur);
mtr_commit(&mtr);
mem_heap_free(heap);
ut_print_timestamp(stderr);
fprintf(stderr,
" InnoDB: table %s is in the new compact format\n"
"InnoDB: of MySQL 5.0.3 or later\n", name);
return(NULL);
}
#endif /* MYSQL_VERSION_ID < 50300 */
ut_a(0 == ut_strcmp("SPACE", ut_a(0 == ut_strcmp("SPACE",
dict_field_get_col( dict_field_get_col(
dict_index_get_nth_field( dict_index_get_nth_field(
......
...@@ -111,6 +111,7 @@ extern ibool srv_use_doublewrite_buf; ...@@ -111,6 +111,7 @@ extern ibool srv_use_doublewrite_buf;
extern ibool srv_set_thread_priorities; extern ibool srv_set_thread_priorities;
extern int srv_query_thread_priority; extern int srv_query_thread_priority;
extern ulong srv_max_buf_pool_modified_pct;
extern ulong srv_max_purge_lag; extern ulong srv_max_purge_lag;
extern ibool srv_use_awe; extern ibool srv_use_awe;
extern ibool srv_use_adaptive_hash_indexes; extern ibool srv_use_adaptive_hash_indexes;
......
...@@ -184,7 +184,7 @@ in the buffer pool to all database pages in the buffer pool smaller than ...@@ -184,7 +184,7 @@ in the buffer pool to all database pages in the buffer pool smaller than
the following number. But it is not guaranteed that the value stays below the following number. But it is not guaranteed that the value stays below
that during a time of heavy update/insert activity. */ that during a time of heavy update/insert activity. */
ulint srv_max_buf_pool_modified_pct = 90; ulong srv_max_buf_pool_modified_pct = 90;
/* If the following is != 0 we do not allow inserts etc. This protects /* If the following is != 0 we do not allow inserts etc. This protects
the user from forgetting the innodb_force_recovery keyword to my.cnf */ the user from forgetting the innodb_force_recovery keyword to my.cnf */
......
...@@ -817,6 +817,18 @@ skip_test() { ...@@ -817,6 +817,18 @@ skip_test() {
$ECHO "$RES$RES_SPACE [ skipped ]" $ECHO "$RES$RES_SPACE [ skipped ]"
} }
disable_test() {
USERT=" ...."
SYST=" ...."
REALT=" ...."
pname=`$ECHO "$1 "|$CUT -c 1-24`
RES="$pname"
skip_inc
$ECHO "$RES$RES_SPACE [ disabled ] $2"
}
report_current_test () { report_current_test () {
tname=$1 tname=$1
echo "CURRENT_TEST: $tname" >> $MASTER_MYERR echo "CURRENT_TEST: $tname" >> $MASTER_MYERR
...@@ -1471,6 +1483,12 @@ run_testcase () ...@@ -1471,6 +1483,12 @@ run_testcase ()
if [ -n "$RESULT_EXT" -a \( x$RECORD = x1 -o -f "$result_file$RESULT_EXT" \) ] ; then if [ -n "$RESULT_EXT" -a \( x$RECORD = x1 -o -f "$result_file$RESULT_EXT" \) ] ; then
result_file="$result_file$RESULT_EXT" result_file="$result_file$RESULT_EXT"
fi fi
if [ -f "$TESTDIR/$tname.disabled" ]
then
comment=`$CAT $TESTDIR/$tname.disabled`;
disable_test $tname "$comment"
return
fi
if [ "$USE_MANAGER" = 1 ] ; then if [ "$USE_MANAGER" = 1 ] ; then
many_slaves=`$EXPR \( \( $tname : rpl_failsafe \) != 0 \) \| \( \( $tname : rpl_chain_temp_table \) != 0 \)` many_slaves=`$EXPR \( \( $tname : rpl_failsafe \) != 0 \) \| \( \( $tname : rpl_chain_temp_table \) != 0 \)`
fi fi
......
...@@ -530,11 +530,6 @@ DROP TABLE t1; ...@@ -530,11 +530,6 @@ DROP TABLE t1;
DROP TABLE t2; DROP TABLE t2;
CREATE TABLE t1 (`b` blob); CREATE TABLE t1 (`b` blob);
INSERT INTO `t1` VALUES (0x602010000280100005E71A); INSERT INTO `t1` VALUES (0x602010000280100005E71A);
-- MySQL dump 10.9
--
-- Host: localhost Database: test
-- ------------------------------------------------------
-- Server version 4.1.11-debug-log
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
...@@ -544,20 +539,11 @@ INSERT INTO `t1` VALUES (0x602010000280100005E71A); ...@@ -544,20 +539,11 @@ INSERT INTO `t1` VALUES (0x602010000280100005E71A);
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
--
-- Table structure for table `t1`
--
DROP TABLE IF EXISTS `t1`; DROP TABLE IF EXISTS `t1`;
CREATE TABLE `t1` ( CREATE TABLE `t1` (
`b` blob `b` blob
) ENGINE=MyISAM DEFAULT CHARSET=latin1; ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Dumping data for table `t1`
--
/*!40000 ALTER TABLE `t1` DISABLE KEYS */; /*!40000 ALTER TABLE `t1` DISABLE KEYS */;
LOCK TABLES `t1` WRITE; LOCK TABLES `t1` WRITE;
......
...@@ -179,6 +179,6 @@ DROP TABLE t2; ...@@ -179,6 +179,6 @@ DROP TABLE t2;
CREATE TABLE t1 (`b` blob); CREATE TABLE t1 (`b` blob);
INSERT INTO `t1` VALUES (0x602010000280100005E71A); INSERT INTO `t1` VALUES (0x602010000280100005E71A);
--exec $MYSQL_DUMP --skip-extended-insert --hex-blob test t1 --exec $MYSQL_DUMP --skip-extended-insert --hex-blob test --skip-comments t1
DROP TABLE t1; DROP TABLE t1;
...@@ -103,8 +103,22 @@ void Ndbcntr::execCONTINUEB(Signal* signal) ...@@ -103,8 +103,22 @@ void Ndbcntr::execCONTINUEB(Signal* signal)
} }
Uint64 now = NdbTick_CurrentMillisecond(); Uint64 now = NdbTick_CurrentMillisecond();
if(now > c_start.m_startFailureTimeout){ if(now > c_start.m_startFailureTimeout)
ndbrequire(false); {
jam();
Uint32 to_3= 0;
const ndb_mgm_configuration_iterator * p =
theConfiguration.getOwnConfigIterator();
ndb_mgm_get_int_parameter(p, CFG_DB_START_FAILURE_TIMEOUT, &to_3);
BaseString tmp;
tmp.append("Shutting down node as total restart time exceeds "
" StartFailureTimeout as set in config file ");
if(to_3 == 0)
tmp.append(" 0 (inifinite)");
else
tmp.appfmt(" %d", to_3);
progError(__LINE__, ERR_SYSTEM_ERROR, tmp.c_str());
} }
signal->theData[0] = ZSTARTUP; signal->theData[0] = ZSTARTUP;
...@@ -413,7 +427,7 @@ inline ...@@ -413,7 +427,7 @@ inline
Uint64 Uint64
setTimeout(Uint64 time, Uint32 timeoutValue){ setTimeout(Uint64 time, Uint32 timeoutValue){
if(timeoutValue == 0) if(timeoutValue == 0)
return ~0; return ~(Uint64)0;
return time + timeoutValue; return time + timeoutValue;
} }
......
...@@ -1681,12 +1681,12 @@ String *Item_func_format::val_str(String *str) ...@@ -1681,12 +1681,12 @@ String *Item_func_format::val_str(String *str)
if (str_length >= dec+4) if (str_length >= dec+4)
{ {
char *tmp,*pos; char *tmp,*pos;
length= str->length()+(diff=(str_length- dec-1)/3); length= str->length()+(diff= (int)(str_length- dec-1)/3);
str= copy_if_not_alloced(&tmp_str,str,length); str= copy_if_not_alloced(&tmp_str,str,length);
str->length(length); str->length(length);
tmp= (char*) str->ptr()+length - dec-1; tmp= (char*) str->ptr()+length - dec-1;
for (pos= (char*) str->ptr()+length-1; pos != tmp; pos--) for (pos= (char*) str->ptr()+length-1; pos != tmp; pos--)
pos[0]= pos[-(int) diff]; pos[0]= pos[-diff];
while (diff) while (diff)
{ {
*pos= *(pos - diff); *pos= *(pos - diff);
......
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