1
0
mirror of https://github.com/MariaDB/server.git synced 2025-11-21 06:21:35 +03:00
Commit Graph

6463 Commits

Author SHA1 Message Date
unknown
aa8c830d9b Improve the reading of .pid files from var/run
- Only read *.pid
 - Only allow it to contain a number 


mysql-test/lib/mtr_io.pl:
  Check that the value read from pidfile is a valid number consisting only of digits
mysql-test/lib/mtr_process.pl:
  Only process .pid files in var/run dir and print a warning if other files are found there.
2006-10-31 19:02:33 +01:00
unknown
c54f778e96 Remove warning, exe_mysql_fix_system_tables are not available on windows 2006-10-31 17:16:07 +01:00
unknown
dfdb972e03 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/usr/home/ram/work/bug23412/my41-bug23412
2006-10-31 10:21:18 +04:00
unknown
9711d72205 Merge bk-internal:/home/bk/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-30 15:03:04 +01:00
unknown
c2b8a63ccf Bug#18654 Test is timing-dependent and fails from scheduling effects (?)
- Wait in loop with small sleep until tables has been renamed


mysql-test/t/rename.test:
  To avoid scheduling effects wait for the tables to be renamed in a loop with small sleeps
  before continuing with tests
mysql-test/include/wait_for_query_to_suceed.inc:
  New BitKeeper file ``mysql-test/include/wait_for_query_to_suceed.inc''
2006-10-30 14:42:28 +01:00
unknown
142a448594 Merge perch.ndb.mysql.com:/home/jonas/src/mysql-4.1
into  perch.ndb.mysql.com:/home/jonas/src/mysql-4.1-ndb


sql/sql_select.cc:
  Auto merged
2006-10-27 23:56:51 +02:00
unknown
d2c90fcb8e Fix for bug #23412: delete rows with null date field
Backport of the fix for bug #8143: A date with value 0 is treated as a NULL value


mysql-test/r/delete.result:
  Fix for bug #23412: delete rows with null date field
    - test result
mysql-test/t/delete.test:
  Fix for bug #23412: delete rows with null date field
    - test case
sql/sql_delete.cc:
  Fix for bug #23412: delete rows with null date field
    - during SELECT queries processing we convert 'date[time]_field is null'                   
      conditions into 'date[time]_field = 0000-00-00[ 00:00:00]' for not null                  
      DATE and DATETIME fields. To be consistent, we have to do the same for DELETE            
      queries. So we should call remove_eq_conds() in the mysql_delete() as well.              
      Also it may simplify and speed up DELETE queries execution.
2006-10-27 18:08:50 +05:00
unknown
722d433018 Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.1-runtime
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.1-bug18819
2006-10-25 20:13:07 +04:00
unknown
e3d49f0c3f BUG#18819: DELETE IGNORE hangs on foreign key parent delete
If the error happens during DELETE IGNORE, nothing could be send to the
client, thus leaving it frozen expecting the reply.

The problem was that if some error occurred, it wouldn't be reported to
the client because of IGNORE, but neither success would be reported.

MySQL 4.1 would not freeze the client, but will report

  ERROR 1105 (HY000): Unknown error

instead, which is also a bug.

The solution is to report success if we are in DELETE IGNORE and some
non-fatal error has happened.


mysql-test/r/innodb_mysql.result:
  Add result for bug#18819: DELETE IGNORE hangs on foreign key parent
  delete.
mysql-test/t/innodb_mysql.test:
  Add test case for bug#18819: DELETE IGNORE hangs on foreign key parent
  delete.
sql/sql_delete.cc:
  Report success if we have got an error, but we are in DELETE IGNORE, and
  the error is not fatal (if it is, it would be reported to the client).
2006-10-25 19:53:26 +04:00
unknown
2ab335a5b8 Merge mysql.com:/users/lthalmann/bkroot/mysql-4.1-rpl
into  mysql.com:/users/lthalmann/bk/MERGE/mysql-4.1-merge


myisam/mi_open.c:
  Auto merged
2006-10-25 17:08:57 +02:00
unknown
5decebc5f3 Skip innodb test if mysqld doesn't have innodb support 2006-10-25 16:50:06 +02:00
unknown
7596e12bbe Update the binlog format parse routine to only be avaliable in 5.1 and allow for any binlog_format to be specified 2006-10-25 14:56:36 +02:00
unknown
870ed0c3f5 Add valgrinding support for mysql_client_test
Fix two memory leaks in mysql_client_test


mysql-test/mysql-test-run.pl:
  Add valgrinding support for mysql_client_test
tests/mysql_client_test.c:
  Fix two memory leaks
2006-10-25 14:34:18 +02:00
unknown
379809f40e Set flag opt_skip_ndbcluster_slave if no slaves are being used.
Add comments
Deperlify
2006-10-25 12:40:33 +02:00
unknown
4da54b4769 Adapt mysql-test-run.pl to mysqld in 5.1 using "mixed" binlog format by default 2006-10-24 23:39:46 +02:00
unknown
f89efeb5f6 Pass --core-file option to mysqld when bootstrapping
BitKeeper/etc/ignore:
  Added mysql-test/r/blackhole.log to the ignore list
2006-10-24 21:02:04 +02:00
unknown
c7cedcd645 Remove debug printout 2006-10-24 19:22:27 +02:00
unknown
297d968a8c Run mysql_client_test without --silent
Flush both stdout and stderr before abort'ing mysql_client_test


mysql-test/mysql-test-run.pl:
  Run mysql_client_test wihtout --silent flag
tests/mysql_client_test.c:
  Before aborting mysql_client_test in die, make sure
  to first flush stdout and finally after the error message 
  has been printed also fflush stderr
2006-10-24 18:49:19 +02:00
unknown
e3936b1065 Add analyze_testcase_failure which is called when mysqltest has failed
with error 1 and we are running with --force
The specific "analyze" code is enclosed in a .test file fwich can easily
be modified to be more advanced 


mysql-test/mysql-test-run.pl:
  Attempt to run some quick queries to analyze the failure when mysqltest returns 1 indicating test has failed
  Initially only code to analyze "could not sync with master" is added as that is a blackbox
  and all problems looks the same
mysql-test/include/analyze_failure_sync_with_master.test:
  New BitKeeper file ``mysql-test/include/analyze_failure_sync_with_master.test''
2006-10-24 17:36:46 +02:00
unknown
df77391f64 Merge bk@192.168.21.1:mysql-4.1-opt
into  mysql.com:/home/hf/work/w3475/my41-w3475
2006-10-24 16:50:27 +05:00
unknown
f9ff7472a2 Avoid matching the trailing carriage return when parsing the mysqld.spec file
This fixes problem where --replace_result failed in rpl000015 because the MYSQL_TCP_PORT variable was "3306\r"


mysql-test/mysql-test-run.pl:
  Avoid matching the trailing carriage return when parsing the mysqld.spec file
2006-10-23 20:36:44 +02:00
unknown
13c55f3c17 The vardir trick can only bge used on platforms with native symlinks - otherwise opt_vardir need to be set to default value. 2006-10-23 16:51:48 +02:00
unknown
edf668e8fa Don't use the "4.1 vardir trick" on OS that does not have native symlink(i.e windows) 2006-10-23 13:32:20 +02:00
unknown
67bd2842bb Merge bk-internal:/home/bk/mysql-4.1-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-23 12:17:15 +02:00
unknown
788968a61b If "var" is a symlink which does not point to anything, remove it before creating real var
mysql-test/mysql-test-run.pl:
  If "var" is a symlink which does not point to anything, remove it
2006-10-23 12:16:40 +02:00
unknown
e78a193179 As both ndb and im are components that may be disabled as well as the binaries may not exist. Look for
their binaries in a separate function and produce test casea failures for the test thet needs these components
2006-10-23 12:02:56 +02:00
unknown
4ddb48c619 WL#3475 (Threads for the embedded server in mysqltest)
Necessary code added to mysqltest.c.
Disabled tests are available now.


client/mysqltest.c:
  do_send_query function implemented, so now 'send' command will be
  run in separate thread for the embedded server.
  Mutex and condition added to the 'connection' struct for syncronisation
  purposes. Yes it'd be easier if we had pthread_join() command
libmysql/libmysql.c:
  this isn't actually needed and causes problems in embedded server
mysql-test/t/bdb-deadlock.test:
  test is available for the embedded server now
mysql-test/t/flush.test:
  test is available for the embedded server now
mysql-test/t/flush_block_commit.test:
  test is available for the embedded server now
mysql-test/t/innodb-deadlock.test:
  test is available for the embedded server now
mysql-test/t/innodb-lock.test:
  test is available for the embedded server now
mysql-test/t/lock_multi.test:
  test is available for the embedded server now
mysql-test/t/rename.test:
  test is available for the embedded server now
mysql-test/t/show_check.test:
  test is available for the embedded server now
mysql-test/t/status.test:
  test is available for the embedded server now
2006-10-23 15:02:51 +05:00
unknown
9809dbeda8 Merge mysql.com:/usr/home/ram/work/mysql-4.1-maint
into  mysql.com:/usr/home/ram/work/bug20732/my41-bug20732
2006-10-23 12:58:20 +05:00
unknown
8b447a8af7 Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-4.1-opt
into  rurik.mysql.com:/home/igor/mysql-4.1-opt
2006-10-20 10:08:58 -07:00
unknown
12c43f4f15 Init some variables that changes between test cases direclty in run_testcase
This can not be done in run_testcase_start_servers as embedded never starts a server
Add error if mysqld_start is called in embedded mode
2006-10-20 17:09:07 +02:00
unknown
0153d67e59 Merge bk-internal:/home/bk/mysql-4.1
into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-4.1-opt


sql/sql_base.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2006-10-20 10:57:38 +02:00
unknown
d649efbb07 Fixed bug #23478.
If elements a not top-level IN subquery were accessed by an index and 
the subquery result set included  a NULL value then the quantified
predicate that contained the subquery was evaluated to NULL when 
it should return a non-null value.


mysql-test/r/subselect.result:
  Added a test case for bug #23478.
mysql-test/t/subselect.test:
  Added a test case for bug #23478.
2006-10-19 23:05:53 -07:00
unknown
fc9cf7f45d Adapt to running from "binary dist"
Add function mtr_exe_maybe_exists to look for binaries that is optional
Skip ndb support if it's a binary dist where mysqld supports ndb but there is no ndbd


mysql-test/lib/mtr_misc.pl:
  Add function mtr_exe_maybe_exists
mysql-test/mysql-test-run.pl:
  Adapt to running from binary dist
  Add function mtr_exe_maybe_exists to look for binaries that is optional
  Skip ndb support if it's a binary dist where mysqld supports ndb but there is no ndbd
2006-10-19 20:33:32 +02:00
unknown
9ee7178742 Fix problem running rpl_timezone on powermacg5, it was not popular to set TZ to "" so now it's set
to a value wich is not our default
2006-10-19 20:29:33 +02:00
unknown
2576c4c0c9 Merge mysql.com:/home/svoj/devel/mysql/BUG23175/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/engines/mysql-4.1-engines


mysql-test/r/repair.result:
  Manual merge.
mysql-test/t/repair.test:
  Manual merge.
2006-10-19 17:35:09 +05:00
unknown
9bfaab57fa Merge dl145s.mysql.com:/data/bk/team_tree_merge/mysql-4.1
into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-4.1-opt


sql/sql_select.cc:
  Auto merged
2006-10-19 14:34:56 +02:00
unknown
f841b546b0 Merge mysql.com:/home/svoj/devel/mysql/BUG22562/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/engines/mysql-4.1-engines
2006-10-19 17:33:22 +05:00
unknown
cd06481d65 Add command "exit" to mysqltest, it will stop processing any more
commands and go directly to result file processing


client/mysqltest.c:
  Add command "exit" to mysqltest
mysql-test/r/mysqltest.result:
  Add command "exit" to mysqltest
mysql-test/t/mysqltest.test:
  Add command "exit" to mysqltest
2006-10-19 13:34:09 +02:00
unknown
f30cb12707 Backport test cases fixes from 5.0
client/mysqldump.c:
  fflush stderr after printing of error message
mysql-test/include/have_lowercase0.inc:
  Remove extra ;
mysql-test/r/rpl000015.result:
  Update result
mysql-test/r/rpl_change_master.result:
  Update result
mysql-test/r/rpl_error_ignored_table.result:
  Update result
mysql-test/r/rpl_loaddata.result:
  Update result
mysql-test/r/rpl_log.result:
  Update result
mysql-test/r/rpl_max_relay_size.result:
  Update result
mysql-test/r/rpl_replicate_do.result:
  Update result
mysql-test/t/lowercase_table3.test:
  Backport from 5.0
mysql-test/t/mysql_protocols.test:
  Backport from 5.0
mysql-test/t/rpl000015.test:
  Backport from 5.0
mysql-test/t/rpl_change_master.test:
  Backport from 5.0
mysql-test/t/rpl_drop_db.test:
  Backport from 5.0
mysql-test/t/rpl_error_ignored_table.test:
  Backport from 5.0
mysql-test/t/rpl_loaddata.test:
  Backport from 5.0
mysql-test/t/rpl_log-master.opt:
  Use --force-restart command in master.opt to force a restart for this test case
mysql-test/t/rpl_log.test:
  Backport from 5.0
mysql-test/t/rpl_max_relay_size.test:
  Backport from 5.0
mysql-test/t/rpl_replicate_do.test:
  Backport from 5.0
2006-10-19 10:54:23 +02:00
unknown
da7af481cd Fix for bug #20732: Partial index and long sjis search with '>' fails sometimes
We miss some records sometimes using RANGE method if we have
partial key segments.
Example:
  Create table t1(a char(2), key(a(1)));
  insert into t1 values ('a'), ('xx');
  select a from t1 where a > 'x';
We call index_read() passing 'x' key and HA_READ_AFTER_KEY flag
in the handler::read_range_first() wich is wrong because we have
a partial key segment for the field and might miss records like 'xx'.

Fix: don't use open segments in such a case.


mysql-test/r/range.result:
  Fix for bug #20732: Partial index and long sjis search with '>' fails sometimes
    - test result.
mysql-test/t/range.test:
  Fix for bug #20732: Partial index and long sjis search with '>' fails sometimes
    - test case.
sql/opt_range.cc:
  Fix for bug #20732: Partial index and long sjis search with '>' fails sometimes
    - check if we have a partial key segment for a Item_func::GT_FUNC;
      if so, don't set NEAR_MIN flag in order to use HA_READ_KEY_OR_NEXT
      instead of HA_READ_AFTER_KEY.
sql/opt_range.h:
  Fix for bug #20732: Partial index and long sjis search with '>' fails sometimes
    - key segment 'flag' slot added.
sql/sql_select.cc:
  Fix for bug #20732: Partial index and long sjis search with '>' fails sometimes
    - test (HA_PART_KEY_SEG | HA_NULL_PART) as we split it in the sql/table.cc
sql/table.cc:
  Fix for bug #20732: Partial index and long sjis search with '>' fails sometimes
    - set HA_NULL_PART flag instead of HA_PART_KEY_SEG in order not to mix them.
2006-10-19 12:52:37 +05:00
unknown
ea80f1a07a Put the printf of failed ratio on itäs only line, printf was tricked
into thinking the escaped % + w was a format specifier
2006-10-18 17:58:26 +02:00
unknown
3c0a746633 Don't stop the time in mtr_timer_timeout, that will be done after testcase or when program exit 2006-10-18 17:16:08 +02:00
unknown
62309faa1d Remove some junk 2006-10-18 16:40:22 +02:00
unknown
8e5b64ae0a Stop all timers before exiting when --start-and-exit 2006-10-18 16:39:00 +02:00
unknown
364cda0a6e Merge mysql.com:/windows/Linux_space/MySQL/mysql-4.1
into  mysql.com:/windows/Linux_space/MySQL/mysql-4.1-ndb


mysql-test/r/ndb_update.result:
  Auto merged
2006-10-18 16:34:43 +02:00
unknown
b860c4dbf5 Fix bug where a timer was stopped by calling mtr_timer_stop with a "timer" instead of it's name 2006-10-18 16:30:51 +02:00
unknown
48cf65c037 BUG#23175 - MYISAM crash/repair failed during repair
Repair table could crash a server if there is not sufficient
memory (myisam_sort_buffer_size) to operate. Affects not only
repair, but also all statements that use create index by sort:
repair by sort, parallel repair, bulk insert.

Return an error if there is not sufficient memory to store at
least one key per BUFFPEK.

Also fixed memory leak if thr_find_all_keys returns an error.


myisam/sort.c:
  maxbuffer is number of BUFFPEK-s for repair. It is calculated
  as records / keys. keys is number of keys that can be stored
  in memory (myisam_sort_buffer_size). There must be sufficient
  memory to store both BUFFPEK-s and keys. It was checked
  correctly before this patch. However there is another
  requirement that wasn't checked: there must be sufficient
  memory for at least one key per BUFFPEK, otherwise repair
  by sort/parallel repair cannot operate.
  
  Return an error if there is not sufficient memory to store at
  least one key per BUFFPEK.
  
  Also fixed memory leak if thr_find_all_keys returns an error.
mysql-test/r/repair.result:
  A test case for BUG#23175.
mysql-test/t/repair.test:
  A test case for BUG#23175.
2006-10-18 17:57:29 +05:00
unknown
85cfdc5bcc Make --with-ndbcluster only be valid together with --bench
Improve code that detects if ndb shuold be installed
Remove call to stop_all_servers after install db, if any servers are still running 
and need to be stopped they will be stopped atuomatically


mysql-test/lib/mtr_cases.pl:
  All tests that have "source include/have_ndb.inc" are ndb tests
mysql-test/mysql-test-run.pl:
  Set --with-ndbcluster to only be valid together with --bench
  Rename opt_ndbcluster_supported to glob_ndbcluster_supported it's not an option
  Fix warnings
2006-10-18 13:24:06 +02:00
unknown
7094daee8d Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.1-runtime
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.1-bug21726


sql/sql_select.cc:
  Auto merged
2006-10-17 13:41:29 +04:00
unknown
40ac968926 Remove warnings
Set comment properly before calling mtr_report_test failed and report_failure_restart 


mysql-test/lib/mtr_report.pl:
  Remove warnings
  No need to check ndb installed ok here, when that is detected comment is set to indicate the problem
2006-10-17 10:31:06 +02:00