Commit graph

1,695 commits

Author SHA1 Message Date
unknown
cdf7471c2c Fix and test case for BUG#3649.
mysql-test/r/handler.result:
  Test case for BUG#3649
mysql-test/t/handler.test:
  Test case for BUG#3649
sql/sql_handler.cc:
  Fix for BUG#3649: when doing an index scan for an equality condition, use index_next_same to retrieve subsequent rows.
2004-05-18 22:59:43 +04:00
unknown
028a672fd6 Replication testsuite: making the master-slave synchronization less likely to fail,
by adding sleep-and-retries (max 4 times) if MASTER_POS_WAIT() returns NULL
in sync_with_master and sync_slave_with_master.
The problem showed up only today, in MySQL 5.0 in rpl_server_id2.test,
but may affect 4.x as well, so fixing it here. Note that I am also fixing
5.0 too, with the same exact patch, because I don't want to leave 5.0 broken
until the next 4.0->4.1->5.0 merge.


client/mysqltest.c:
  in sync_with_master (and sync_slave_with_master), if MASTER_POS_WAIT() returns NULL,
  it may be that the slave SQL thread did not have time to start yes, so we sleep
  1 sec and retry, 4 times at most.
mysql-test/r/rpl_server_id2.result:
  result update
mysql-test/t/rpl_server_id2.test:
  master_slave.inc already drops the table
2004-05-14 23:08:03 +02:00
unknown
699cbc02cc Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2004-05-11 12:20:04 +02:00
unknown
76bc677117 bug#3612 - Item_func_div set decimals incorrectly 2004-05-11 12:19:37 +02:00
unknown
2abb48defb Merge mysql.com:/home/mydev/mysql-4.0
into mysql.com:/home/mydev/mysql-4.0-bug2831
2004-05-10 13:54:32 +02:00
unknown
2b4a56b9f3 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2004-05-10 12:39:31 +02:00
unknown
0bfea087af backport from 4.1:
"phrase search" should not match partial words (it should not match 'paraphrase searches')
2004-05-10 12:39:01 +02:00
unknown
415459545d Merge mysql.com:/home/mydev/mysql-4.0
into mysql.com:/home/mydev/mysql-4.0-bug2831
2004-05-10 12:36:09 +02:00
unknown
3f46a5fd60 Fix replace_result of $MASTER_MYPORT instead of literal numbers.
mysql-test/t/rpl000015.test:
  Fix replace_result of $MASTER_MYPORT instead of literal numbers.
  The test case rpl000015 needs one exlpicit literal number.
  It changes partial master settings, which seems to reset other settings
  to their defaults. To test this is obviously the intent of this case.
2004-05-10 12:15:40 +02:00
unknown
95600183df Fix auto_inc locking bug introduced in ChangeSet@1.1794.1.1
innobase/row/row0mysql.c:
  Revert accidental modification to row_lock_table_autoinc_for_mysql()
  made in ChangeSet@1.1794.1.1
mysql-test/r/innodb.result:
  Revert ChangeSet@1.1794.1.1
2004-05-07 12:13:45 +03:00
unknown
bfa22229eb Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-05-05 21:51:26 +02:00
unknown
601bdde5ed very minor changes: a STOP SLAVE in a replication test to get rid of a non critical message in slave.err,
and a comment update


mysql-test/r/rpl_server_id2.result:
  result update
mysql-test/t/rpl_server_id2.test:
  We stop the slave before cleaning up otherwise we'll get
  'drop table t1' executed twice, so an error in the slave.err
  (not critical).
sql/slave.cc:
  update comment about 4.1 now that 4.1 is fixed (in a few minutes, exactly)
2004-05-05 21:50:51 +02:00
unknown
c98791c7da Merge marko@build.mysql.com:/home/bk/mysql-4.0
into hundin.mysql.fi:/home/marko/l/mysql-4.0
2004-05-03 10:43:05 +03:00
unknown
f4b02f9937 Portability fixes
mysql-test/mysql-test-run.sh:
  Avoid 'too many arguments' error
mysql-test/t/system_mysql_db_fix-master.opt:
  Add missing newline
scripts/mysql_fix_privilege_tables.sh:
  Portability fix
2004-04-30 00:14:56 +03:00
unknown
3594adb165 InnoDB: implement LOCK TABLE (Bug #3299)
innobase/include/lock0lock.h:
  Add lock_table_unlock() and lock_release_tables_off_kernel()
  Add LOCK_TABLE_EXP
innobase/include/row0mysql.h:
  Add row_unlock_table_for_mysql() and row_lock_table_for_mysql()
innobase/include/trx0trx.h:
  Add n_tables_locked
innobase/lock/lock0lock.c:
  Add LOCK_TABLE_EXP for explicit LOCK TABLE commands
  Add lock_table_unlock()
  Add lock_release_tables_off_kernel()
innobase/row/row0mysql.c:
  Add row_unlock_table_for_mysql() and row_lock_table_for_mysql()
innobase/trx/trx0trx.c:
  Add n_tables_locked
mysql-test/r/innodb.result:
  Updated handling of auto_inc columns
sql/ha_innodb.cc:
  Call row_lock_table_for_mysql() and row_unlock_table_for_mysql()
2004-04-29 16:42:33 +03:00
unknown
2a5d6bdc39 Very small fixes for testsuite (a real_sleep instead of sleep, plus TCP port independency of the result file).
mysql-test/r/rpl_server_id1.result:
  be port-independent
mysql-test/r/rpl_server_id2.result:
  be port-independent
mysql-test/t/rpl_error_ignored_table.test:
  we want to sleep 2 secs, not more; if we allow ourselves to sleep >=10 seconds, then
  the get_lock() will be aborted and we will arrive to late for the KILL to have
  the desired effect of generating an error code in the binlog.
mysql-test/t/rpl_server_id1.test:
  be port-independent
mysql-test/t/rpl_server_id2.test:
  be port-independent
2004-04-28 23:43:46 +02:00
unknown
b1f590203e Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-04-28 18:31:31 +02:00
unknown
87a93a3195 A new option --replicate-same-server-id to force a slave to execute queries originating from itself
(WL#794). This can be of interest in some recovery-from-backup scenarios, and also when you have
two databases in one mysqld, having a certain similarity and you want one db to be updated when the other is
(some sort of trigger).
Plus small fix for BUG#3568 "MySQL server crashes when built --with-debug and CHANGE MASTER +MASTER_POS_WAIT"


sql/mysqld.cc:
  new option --replicate-same-server-id
sql/slave.cc:
  new option replicate_same_server_id, to force a slave to execute its own queries.
  Small fix for BUG#3568 "MySQL server crashes when built --with-debug and CHANGE MASTER +MASTER_POS_WAIT"
sql/slave.h:
  new option --replicate-same-server-id
2004-04-28 18:24:46 +02:00
unknown
7afbb734b7 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0
2004-04-28 18:38:30 +03:00
unknown
8702628029 Merge ltantony.dsl-verizon.net:/usr/home/antony/work/mysql-4.0
into ltantony.dsl-verizon.net:/usr/home/antony/work/bug3481


mysql-test/r/func_str.result:
  Auto merged
mysql-test/t/func_str.test:
  Auto merged
2004-04-28 16:38:29 +01:00
unknown
0d07fe42c3 Fix for Bug 3481
CREATE statement allowed extra unnecessary commas


mysql-test/r/alias.result:
  Extra comma removed in CREATE statement
mysql-test/r/create.result:
  New test for Bug 3481
mysql-test/r/func_str.result:
  Extra comma removed in CREATE statement
mysql-test/r/rpl_multi_update.result:
  Extra comma removed in CREATE statement
mysql-test/t/alias.test:
  Extra comma removed in CREATE statement
mysql-test/t/create.test:
  New test for bug 3481
mysql-test/t/func_str.test:
  Extra comma removed in CREATE statement
mysql-test/t/rpl_multi_update.test:
  Extra comma removed in CREATE statement
sql/sql_yacc.yy:
  Fix for bug 3481
    No path through the grammar which has no clauses
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-04-28 16:14:53 +01:00
unknown
8b9ecce08c Fixed http address in some scripts (Bug #3460)
Output TIMESTAMP in 4.1 format for 4.1 tables (or for TIMESTAMP(19)) (portability fix)
Fixed that INTERVAL can handle big integers. (Bug #3498)
Fixed that hostname="" works identical as hostname="%" for table/column grants (Bug #3473)


mysql-test/mysql-test-run.sh:
  Fixed wrong http address (Bug #3460)
mysql-test/r/func_time.result:
  Results for new test cases
mysql-test/t/func_time.test:
  Added test of INTERVAL with big integers
scripts/mysqld_safe.sh:
  Added html address to manual in case of error
sql/field.cc:
  Output TIMESTAMP in 4.1 format for 4.1 tables (or for TIMESTAMP(19))
sql/item_timefunc.cc:
  Fixed that INTERVAL can handle big integers. (Bug #3498)
sql/mysql_priv.h:
  Removed not needed prototype
sql/sql_acl.cc:
  Fixed that hostname="" works identical as hostname="%" for table/column grants (Bug #3473)
  Moved GRANT_TABLE::GRANT_TABLE functions ou from class definition to make it possible to debug them
sql/structs.h:
  Fix for long values to INTERVAL
2004-04-28 17:45:08 +03:00
unknown
fdee1cbbb4 bug#3556 - soundex 2004-04-28 14:19:02 +02:00
unknown
b0a8fde897 Fixed stack overrun with some INSERT ... SELECT ... GROUP BY queries (Bug #3265)
Ensure that raid_chunks is not set to higher than 255 as this could cause problems with DROP DATABASE. (Bug #3182)


mysql-test/r/raid.result:
  Test of raid_chunks > 255
mysql-test/t/raid.test:
  Test of raid_chunks > 255
sql/item.cc:
  Fixed wrong usage of str_value in Item::save_in_field
  This could caused a stack overrun with some very special INSERT ... SELECT ... GROUP BY queries where the GROUP BY value was an expression that generated a NULL value. (Bug #3265)
  The Item_copy_string::save_in_field() function is from 4.1 and helps optimized this case a bit
sql/item.h:
  Fixed wrong usage of str_value in Item_copy_string::save_in_field
sql/sql_insert.cc:
  More debug information
sql/table.cc:
  Ensure that raid_chunks is not set to higher than 255 as this could cause problems with DROP DATABASE.
  Another problem with values > 255 is that in the .frm file we store the chunks value in one byte.
  (Bug #3182)
2004-04-28 03:37:45 +03:00
unknown
d1214e2c5d Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-04-13 22:41:00 +02:00
unknown
0cd58c6c78 Fix for BUG#3461 "multi-table DELETE replicated despite replicate-wild-ignore-table":
In tables_ok(), when there is no table having "updating==TRUE" in the list,
    return that we don't replicate this statement (the slave is supposed to
    replicate *changes* only).
    In practice, the case can only happen for this statement:
    DELETE t FROM t,u WHERE ... ;
    tables_ok(t,u) will now return 0, which (check all_tables_not_ok())
    will give a chance to tables_ok(t) to run.


sql/slave.cc:
  In tables_ok(), when there is no table having "updating==TRUE" in the list,
  return that we don't replicate this statement (the slave is supposed to
  replicate *changes* only).
  In practice, the case can only happen for this statement:
  DELETE t FROM t,u WHERE ... ;
  tables_ok(t,u) will now return 0, which (check all_tables_not_ok())
  will give a chance to tables_ok(t) to run.
2004-04-13 22:40:16 +02:00
unknown
5dcbf248a0 A fix. (Bug #3376: AVG(constant) returns constant if no rows in result set) 2004-04-09 19:07:39 +05:00
unknown
280dcf42ab fixed Bug #3361 "mysqldump quotes DECIMAL values"
client/mysqldump.c:
  changed quotation mark around DECIMAL field values from " to '
  as fix of BUG #3361 "mysqldump quotes DECIMAL values"
mysql-test/r/mysqldump.result:
  added test for Bug #3361 "mysqldump quotes DECIMAL values"
mysql-test/t/mysqldump.test:
  added test for Bug #3361 "mysqldump quotes DECIMAL values"
2004-04-05 23:18:16 +05:00
unknown
6b16bf4ffd Fix test results when you are in daylight saving time
mysql-test/t/timezone.test:
  Fix results when you are in daylight saving time
2004-03-30 01:01:31 +03:00
unknown
063eeb7edb Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0
2004-03-29 17:27:25 +03:00
unknown
04e879e7ae some cleanup of last patch for BUG #2342
mysql-test/t/bdb-crash.test:
  added newline
sql/ha_berkeley.cc:
  added a commet
2004-03-27 02:37:05 +04:00
unknown
2e3950b20d Merge vvagin@bk-internal.mysql.com:/home/bk/mysql-4.0
into eagle.mysql.r18.ru:/home/vva/work/BUG_2342/mysql-4.0
2004-03-27 00:41:48 +04:00
unknown
aab1e50e71 fixed bug #2342
"Running ANALYZE TABLE on bdb table inside a transaction hangs server thread"

1. added new status HA_ADMIN_REJECT and processing of it in mysql_admin_table
2. got ha_berkley::analyze to return HA_ADMIN_REJECT if there are any 
 transactions with the table.. 


mysql-test/r/bdb-crash.result:
  added test for bug #2342 
  "Running ANALYZE TABLE on bdb table inside a transaction hangs server thread"
mysql-test/t/bdb-crash.test:
  added test for bug #2342 
  "Running ANALYZE TABLE on bdb table inside a transaction hangs server thread"
sql/ha_berkeley.cc:
  fixed bug #2342 
  "Running ANALYZE TABLE on bdb table inside a transaction hangs server thread"
  
  we have to return new status "HA_ADMIN_REJECT" for ha_berkley::analyze 
  if there are any transaction for this table 
  so as bdb documentation says:
  "The DB->stat method cannot be transaction protected"
sql/handler.h:
  added new status of table info "HA_ADMIN_REJECT"
  
  We have to return this status for bdb tables which 
  have any active transactions so as bdb-documentation says:
  "The DB->stat method cannot be transaction-protected"
sql/sql_table.cc:
  added processing of the new status HA_ADMIN_REJECT in mysql_admin_table
  (reason to add this status is explained in comment 
  for commit on sql/handler.h)
2004-03-27 00:35:45 +04:00
unknown
13e6d00840 Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.0
into sinisa.nasamreza.org:/mnt/work/mysql-4.0
2004-03-26 17:01:55 +02:00
unknown
9cc7549518 order_by.result:
result of the test case for FORCE INDEX on ORDER BY
order_by.test:
  test case for FORCE INDEX on ORDER BY
sql_select.cc:
  Changing behaviour that MySQL server takes FORCE INDEX clause into account when optimising ORDER BY clause


sql/sql_select.cc:
  Changing behaviour that MySQL server takes FORCE INDEX clause into account when optimising ORDER BY clause
mysql-test/t/order_by.test:
  test case for FORCE INDEX on ORDER BY
mysql-test/r/order_by.result:
  result of the test case for FORCE INDEX on ORDER BY
2004-03-26 17:01:13 +02:00
unknown
202ea81cfa Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0
2004-03-26 14:45:13 +02:00
unknown
cc11f6f351 Allow keys with 0 segements in MyISAM
This fixed a bug in SELECT DISTINCT when all selected parts where constants. (Bug #3203)


myisam/mi_create.c:
  Allow keys with 0 segements.
mysql-test/r/myisam.result:
  Test for problem with SELECT DISTINCT
mysql-test/t/myisam.test:
  Test for problem with SELECT DISTINCT
2004-03-26 14:44:52 +02:00
unknown
8a6ae8395d Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-qc-4.0
2004-03-26 10:53:13 +02:00
unknown
922818a798 Updated tests after merge
mysql-test/r/alter_table.result:
  Updated tests
mysql-test/t/alter_table.test:
  Updated tests
2004-03-25 23:08:42 +02:00
unknown
7f0a632c19 merge with 3.23
BitKeeper/etc/logging_ok:
  auto-union
scripts/mysqlbug.sh:
  Auto merged
sql/sql_parse.cc:
  Auto merged
mysql-test/t/alter_table.test:
  Merge code with 3.23
sql/nt_servc.cc:
  use original code
2004-03-25 22:05:09 +02:00
unknown
143e585a7f Improved test case
service backport from 4.0


mysql-test/t/alter_table.test:
  Improved test case
sql/nt_servc.cc:
  service backport from 4.0
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-03-25 21:52:25 +02:00
unknown
1744d26c95 used right table for grants check (BUG#3270)
mysql-test/t/alter_table.test:
  test for BUG#3270 added
2004-03-23 17:15:20 +02:00
unknown
1208e5c8d8 Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.0
into sinisa.nasamreza.org:/mnt/work/mysql-4.0
2004-03-22 16:36:27 +02:00
unknown
bb9584fdab union.result:
A test case for the bug  that allowed table names to be used in ORDER BY columns (But #3064)
union.test:
  A test case for the bug  that allowed table names to be used in ORDER BY columns (But #3064)
sql_union.cc:
  A fix for a bug that allowed table names to be used in ORDER BY columns (But #3064)


sql/sql_union.cc:
  A fix for a bug that allowed table names to be used in ORDER BY columns (But #3064)
mysql-test/t/union.test:
  A test case for the bug  that allowed table names to be used in ORDER BY columns (But #3064)
mysql-test/r/union.result:
   A test case for the bug  that allowed table names to be used in ORDER BY columns (But #3064)
2004-03-22 16:35:15 +02:00
unknown
071aed6980 Fixed wrong 'mysql.func' definition 2004-03-22 11:18:29 +02:00
unknown
91bac76e03 fixed BUG in query cahe statistic counting
mysql-test/r/grant_cache.result:
  right results in query cache
mysql-test/t/grant_cache.test:
  proving new results
sql/sql_cache.cc:
  fixed statistic calculating in query cahe
2004-03-21 11:48:51 +02:00
unknown
331ff0d8f5 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-03-20 15:49:55 +01:00
unknown
02d2d70cb1 The automatic DROP TEMPORARY TABLE is now DROP TEMPORARY TABLE IF EXISTS,
this is better in this case:
- imagine user1 has created a temp table
- imagine user2 does FLUSH TABLES WITH READ LOCK, then takes a backup,
then RESET MASTER then UNLOCK TABLES, like mysqldump --first-slave
- then in the binlog you will finally have the DROP TEMPORARY TABLE,
but not the CREATE TEMPORARY TABLE, so when you later restore with
mysqlbinlog|mysql, mysql will complain that table does not exist.
Replication was already protected of this (it processes DROP TEMPORARY
TABLE as if there was a IF EXISTS), now I add it directly to the query
for mysqlbinlog|mysql to work.


mysql-test/r/drop_temp_table.result:
  result update (query changed)
2004-03-20 15:49:17 +01:00
unknown
86ae07cd24 Portability fixes
Fixed some wrong column specifications in mysql_fix_privilege_tables


mysql-test/mysql-test-run.sh:
  Portability fix
mysql-test/r/func_math.result:
  portability fix
mysql-test/r/rpl_error_ignored_table.result:
  portability fix
mysql-test/t/func_math.test:
  portability fix
mysql-test/t/rpl_error_ignored_table.test:
  portability fix
scripts/mysql_fix_privilege_tables.sh:
  func.name was not generated correctly
scripts/mysql_fix_privilege_tables.sql:
  Fixed some wrong column specifications
2004-03-19 18:26:02 +02:00
unknown
6b46555767 Removed \r 2004-03-19 15:03:12 +02:00