Commit graph

16776 commits

Author SHA1 Message Date
unknown
d575fc039f Merge april:devel/BitKeeper/mysql-5.1-engines
into  may.pils.ru:/home/svoj/devel/mysql/BUG18036/mysql-5.1


sql/sql_show.cc:
  Auto merged
2006-06-19 19:57:42 +05:00
unknown
b7e27e80d9 Bug #18080: INSERT ... SELECT ... JOIN results in ambiguous field list error
There was an incomplete reset of the name resolution context, that caused 
INSERT ... SELECT ... JOIN statements to resolve not by joint row type calculated
for the join.
Removed the redundant re-initialization of the context, because 
mysql_insert_select_prepare() now correctly saves/restores the context.


mysql-test/r/insert_select.result:
  Bug #18080: INSERT ... SELECT ... JOIN results in ambiguous field list error
  
  - testsuite for the bug
mysql-test/t/insert_select.test:
  Bug #18080: INSERT ... SELECT ... JOIN results in ambiguous field list error
  
  - testsuite for the bug
sql/sql_parse.cc:
  Bug #18080: INSERT ... SELECT ... JOIN results in ambiguous field list error
  
  - remove an incomplete reset of the context because the mentioned function
  correctly saves/restores the context.
2006-06-19 17:34:12 +03:00
unknown
49b3a420c4 Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.1-kt
into  mysql.com:/usr/home/bar/mysql-5.1-kt
2006-06-19 19:32:08 +05:00
unknown
b7aa1c23d8 BUG#20073 information_schema.FILES for UNDO LOG give incorrect EXTENT_SIZE, FREE_EXTENTS,
sql/ha_ndbcluster.cc:
  fix total extents display for FILES table.
  fix extra field to also contain UNDO_BUFFER_SIZE
2006-06-20 00:30:19 +10:00
unknown
92a14462b5 Merge mysql.com:/usr/home/bar/mysql-5.1-new.b18396
into  mysql.com:/usr/home/bar/mysql-5.1-kt


sql/sql_lex.cc:
  Auto merged
2006-06-19 19:15:03 +05:00
unknown
3435f614c2 Merge mysql.com:/home/alik/MySQL/devel/5.0-rt
into  mysql.com:/home/alik/MySQL/devel/5.0-tree-merged
2006-06-19 18:10:04 +04:00
unknown
161a27d531 after merge fix
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/share/errmsg.txt:
  manual merge
2006-06-19 18:36:27 +05:00
unknown
0c4e184bde WL#3015: Logging Improvements - No Restarts(ver N4)
Added slow_query_log & general_log global upadatable variables.
Added slow-query-log & general-log startup options.
Added log_output, general_log_file, slow_query_log_file global updatable variables.


mysql-test/r/show_check.result:
  WL#3015: Logging Improvements - No Restarts
  result fix
sql/log.cc:
  WL#3015: Logging Improvements - No Restarts
  added methods to LOGGER class
  void deactivate_log_handlers(THD* thd, uint log_type);
  bool activate_log_handlers(THD* thd, uint log_type);
  added methods to Log_to_file_event_handler:
  TABLE_LIST *get_mysql_slow_log()
  TABLE_LIST *get_mysql_log()
sql/log.h:
  WL#3015: Logging Improvements - No Restarts
  added methods to LOGGER class
  void deactivate_log_handlers(THD* thd, uint log_type);
  bool activate_log_handlers(THD* thd, uint log_type);
  added methods to Log_to_file_event_handler:
  TABLE_LIST *get_mysql_slow_log()
  TABLE_LIST *get_mysql_log()
sql/mysql_priv.h:
  WL#3015: Logging Improvements - No Restarts
sql/mysqld.cc:
  WL#3015: Logging Improvements - No Restarts
  added 'slow-query-log' & 'general-log' options
sql/set_var.cc:
  WL#3015: Logging Improvements - No Restarts
  added 'slow_query_log' & 'general_log' updatable variables
  added 'log_output', 'general_log_file', 'slow_query_log_file' updatable variables
sql/set_var.h:
  WL#3015: Logging Improvements - No Restarts
  new class sys_var_log_state
  new class sys_var_log_output
sql/share/errmsg.txt:
  WL#3015: Logging Improvements - No Restarts
  added error message
sql/sql_delete.cc:
  WL#3015: Logging Improvements - No Restarts
  'truncate table slow_log|general', keep status of logs
2006-06-19 18:30:55 +05:00
unknown
74cabf4ec2 Merge mysql.com:/home/alik/MySQL/devel/5.0-tree
into  mysql.com:/home/alik/MySQL/devel/5.0-rt


mysql-test/mysql-test-run.pl:
  Auto merged
sql/sql_insert.cc:
  Auto merged
2006-06-19 16:57:46 +04:00
unknown
3ec84b1aca Addition to fix for
BUG#18036 - update of table joined to self reports table as crashed

Set exclude_from_table_unique_test value back to FALSE. It is needed for
further check in multi_update::prepare whether to use record cache.


sql/sql_update.cc:
  Set exclude_from_table_unique_test value back to FALSE. It is needed for
  further check in multi_update::prepare whether to use record cache.
2006-06-19 17:50:52 +05:00
unknown
f77b80a846 Merge bk-internal.mysql.com:/data0/bk/mysql-5.0
into  bk-internal.mysql.com:/data0/bk/mysql-5.0-maint


client/mysqldump.c:
  Auto merged
2006-06-19 14:38:57 +02:00
unknown
cb28cf8d88 Fix a Valgrind leak error report for not freed binlog injector singleton.
sql/mysqld.cc:
  Free the binlog injector singleton during shutdown.
sql/rpl_injector.cc:
  Add free_instance() method.
sql/rpl_injector.h:
  Add free_instance() method.
2006-06-19 14:31:22 +02:00
unknown
eeb29b5f70 Merge april:devel/BitKeeper/mysql-5.0-engines
into  may.pils.ru:/home/svoj/devel/mysql/BUG18036/mysql-5.0


include/my_global.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
2006-06-19 16:11:23 +05:00
unknown
e2097100f8 Merge may.pils.ru:/home/svoj/devel/mysql/BUG18036/mysql-4.1
into  may.pils.ru:/home/svoj/devel/mysql/BUG18036/mysql-5.0


mysql-test/r/myisam.result:
  Manual merge.
mysql-test/t/myisam.test:
  Manual merge.
sql/sql_update.cc:
  Manual merge.
2006-06-19 16:06:29 +05:00
unknown
a9ac0557db Merge mysql.com:/home/kgeorge/mysql/4.1/B9676
into  mysql.com:/home/kgeorge/mysql/5.0/B9676


mysql-test/r/insert_select.result:
  Auto merged
mysql-test/t/insert_select.test:
  Auto merged
sql/sql_select.cc:
  SCCS merged
2006-06-19 13:31:11 +03:00
unknown
6cf425b856 Merge mysql.com:/home/kgeorge/mysql/4.1/teamclean
into  mysql.com:/home/kgeorge/mysql/4.1/B9676
2006-06-19 13:25:28 +03:00
unknown
124cb126fa * Bug #9676: INSERT INTO x SELECT .. FROM x LIMIT 1; slows down with big
tables
Currently in INSERT ... SELECT ... LIMIT ... the compiler uses a 
temporary table to store the results of SELECT ... LIMIT .. and then
uses that table as a source for INSERT. The problem is that in some cases
it actually skips the LIMIT clause in doing that and materializes the 
whole SELECT result set regardless of the LIMIT.
This fix is limiting the process of filling up the temp table with only 
that much rows that will be actually used by propagating the LIMIT value.


mysql-test/r/insert_select.result:
  * Bug #9676: INSERT INTO x SELECT .. FROM x LIMIT 1; slows down with big
                tables
  - a test demonstrating the code path
mysql-test/t/insert_select.test:
  * Bug #9676: INSERT INTO x SELECT .. FROM x LIMIT 1; slows down with big
                tables
  - a test demonstrating the code path
sql/sql_select.cc:
  * Bug #9676: INSERT INTO x SELECT .. FROM x LIMIT 1; slows down with big
                tables
  - pass through the real LIMIT number if the temp table is created for
    buffering results.
  - set the counter for all the cases when the temp table is not used for
    grouping
2006-06-19 13:22:42 +03:00
unknown
51b9d38194 Merge mysql.com:/users/lthalmann/bkroot/mysql-5.1-new-rpl
into  mysql.com:/users/lthalmann/bk/MERGE/mysql-5.1-merge


mysql-test/t/archive.test:
  Auto merged
sql/log.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
2006-06-19 12:14:38 +02:00
unknown
cd3fa2ee71 Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  mysql.com:/home/my/mysql-5.1


include/my_sys.h:
  Auto merged
sql/field.cc:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/ha_ndbcluster_binlog.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/sql_string.cc:
  Auto merged
2006-06-19 13:00:36 +03:00
unknown
4b316e6fd6 unsigned char -> uchar
Added missing copyright
Indentation and prototype fixes
Fixed compiler warning


include/my_sys.h:
  Fix prototype for my_print_open_files.
  Indentation fixes
mysys/mf_keycache.c:
  Fix that key cache can be compiled without #define THREAD
mysys/my_error.c:
  Indentation cleanups
mysys/my_memmem.c:
  Added missing copyright.
  Fix include files
sql/event.cc:
  unsigned char -> uchar
sql/field.cc:
  unsigned char -> uchar
sql/filesort.cc:
  Indentation fix
sql/ha_ndbcluster.cc:
  unsigned char -> uchar
sql/ha_ndbcluster_binlog.cc:
  unsigned char -> uchar
sql/item_strfunc.cc:
  unsigned char -> uchar
sql/log_event.cc:
  unsigned char -> uchar
sql/opt_range.cc:
  Indentation fixes
sql/sql_crypt.cc:
  unsigned char -> uchar
sql/sql_string.cc:
  unsigned char -> uchar
sql/tztime.cc:
  unsigned char -> uchar
storage/heap/hp_extra.c:
  Clear also next_block (See heap_scan_init)
storage/heap/hp_test2.c:
  Set required struct memeber max_table_size
  (Fixes that hp_test2 works again)
storage/myisam/mi_rsamepos.c:
  Fixed bug in mi_rsame_with_pos
strings/decimal.c:
  Fixed compiler warning
2006-06-19 12:45:34 +03:00
unknown
5375bcad69 Merge april:devel/BitKeeper/mysql-4.1
into  may.pils.ru:/home/svoj/devel/mysql/BUG18036/mysql-4.1
2006-06-19 14:13:44 +05:00
unknown
46cdd39ea6 BUG#18036 - update of table joined to self reports table as crashed
Certain updates of table joined to self results in unexpected
behavior.

The problem was that record cache was mistakenly enabled for
self-joined table updates. Normally record cache must be disabled
for such updates.

Fixed wrong condition in code that determines whether to use
record cache for self-joined table updates.

Only MyISAM tables were affected.


mysql-test/r/myisam.result:
  Test case for BUG#18036.
mysql-test/t/myisam.test:
  Test case for BUG#18036.
sql/sql_update.cc:
  Fixed wrong condition in code that determines whether to use
  record cache for self-joined table updates.
2006-06-19 14:05:14 +05:00
unknown
ca741138e7 Merge mysql.com:/usr/home/bar/mysql-5.1-new.b18201
into  mysql.com:/usr/home/bar/mysql-5.1-kt


mysql-test/r/xml.result:
  Auto merged
mysql-test/t/xml.test:
  Auto merged
sql/item_xmlfunc.cc:
  Auto merged
2006-06-19 11:18:05 +05:00
unknown
9f8c532f0c rpl_log.test, rpl_stm_log.result:
Fixed failing test case
field.cc, item_cmpfunc.cc, select.result:
  After merge fix


mysql-test/r/select.result:
  After merge fix
mysql-test/r/rpl_stm_log.result:
  Fixed failing test case
sql/item_cmpfunc.cc:
  After merge fix
sql/field.cc:
  After merge fix
mysql-test/extra/rpl_tests/rpl_log.test:
  Fixed failing test case
2006-06-19 04:26:27 +04:00
unknown
dc3dc9a1ba Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0
into moonbone.local:/work/tmp_merge-5.0-opt-mysql


configure.in:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
2006-06-19 01:16:18 +04:00
unknown
610b1a4ebd Manually merged
configure.in:
  Auto merged
client/mysqlbinlog.cc:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/r/archive.result:
  Auto merged
mysql-test/r/auto_increment.result:
  Auto merged
mysql-test/r/cast.result:
  Auto merged
mysql-test/r/ctype_utf8.result:
  Auto merged
mysql-test/r/func_group.result:
  Auto merged
mysql-test/r/func_str.result:
  Auto merged
mysql-test/r/func_time.result:
  Auto merged
mysql-test/r/multi_update.result:
  Auto merged
mysql-test/r/ndb_lock.result:
  Auto merged
mysql-test/r/replace.result:
  Auto merged
mysql-test/r/union.result:
  Auto merged
mysql-test/t/archive.test:
  Auto merged
mysql-test/t/auto_increment.test:
  Auto merged
mysql-test/t/delayed.test:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
mysql-test/t/multi_update.test:
  Auto merged
mysql-test/t/ndb_lock.test:
  Auto merged
mysql-test/t/select.test:
  Auto merged
sql/field.cc:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/opt_sum.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_select.h:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/structs.h:
  Auto merged
storage/archive/ha_archive.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
2006-06-18 14:56:35 +04:00
unknown
9ec3f63f7e Merge moonbone.local:/work/tmp_merge-5.0
into moonbone.local:/work/tmp_merge-5.0-opt-mysql


configure.in:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/r/archive.result:
  Auto merged
mysql-test/r/auto_increment.result:
  Auto merged
mysql-test/r/ndb_lock.result:
  Auto merged
mysql-test/r/rpl_log.result:
  Auto merged
mysql-test/t/archive.test:
  Auto merged
mysql-test/t/auto_increment.test:
  Auto merged
mysql-test/t/ndb_lock.test:
  Auto merged
mysql-test/t/rpl_log.test:
  Auto merged
sql/ha_archive.cc:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
2006-06-17 03:35:10 +04:00
unknown
9d3ddf3826 Manually merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/r/archive.result:
  Auto merged
mysql-test/r/auto_increment.result:
  Auto merged
mysql-test/r/func_time.result:
  Auto merged
mysql-test/r/ndb_lock.result:
  Auto merged
mysql-test/r/rpl_log.result:
  Auto merged
mysql-test/r/select.result:
  Auto merged
mysql-test/t/archive.test:
  Auto merged
mysql-test/t/auto_increment.test:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
mysql-test/t/ndb_lock.test:
  Auto merged
mysql-test/t/rpl_log.test:
  Auto merged
mysql-test/t/select.test:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/item_timefunc.h:
  Auto merged
sql/sql_lex.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
2006-06-17 02:57:50 +04:00
unknown
91fb831076 configure.in, net_serv.cc, compile-netware-END:
Changes for Netware


sql/net_serv.cc:
  Netware needs <sys/select.h>
configure.in:
  Call of "comp_err" has moved, changed code for Netware that
  edits make files to reflect this
netware/BUILD/compile-netware-END:
  After correcting "configure.in" to edit make files correctly,
  removed obsolete "sed" of "extra/Makefile.am" for Netware
2006-06-17 00:30:02 +02:00
unknown
d0f39b6aeb Manually merged
sql/item_timefunc.cc:
  Auto merged
sql/item_timefunc.h:
  Auto merged
2006-06-17 02:11:12 +04:00
unknown
707de39a53 Merge moonbone.local:/home/evgen/bk-trees/mysql-4.1-opt
into moonbone.local:/work/tmp_merge-5.0-opt-mysql


mysql-test/r/cast.result:
  Auto merged
mysql-test/r/func_str.result:
  Auto merged
mysql-test/t/func_str.test:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
2006-06-17 01:57:25 +04:00
unknown
de292d6799 Manually merged
configure.in:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/item_timefunc.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2006-06-17 00:58:36 +04:00
unknown
ca22a81b1c item_strfunc.cc:
Fix for bug#16716 for --ps-protocol mode.
item_cmpfunc.cc:
  Fix for a memory allocation/freeing problem in agg_cmp_type() after fix
for bug#16377. Few language corrections.


sql/item_cmpfunc.cc:
  Fix for a memory allocation/freeing problem in agg_cmp_type(). Few language corrections.
sql/item_strfunc.cc:
  Fix for bug#16716 for --ps-protocol mode.
2006-06-16 23:46:37 +04:00
unknown
0d8d39c8c6 Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into serg.mylan:/usr/home/serg/Abk/m51


sql/log.cc:
  Auto merged
2006-06-16 21:39:10 +02:00
unknown
a245f59723 Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into serg.mylan:/usr/home/serg/Abk/m51
2006-06-16 21:39:09 +02:00
unknown
1e56f3768c Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.1
into  mysql.com:/home/cps/mysql/devel/5.1-csv-remove-mmap
2006-06-16 23:39:09 +04:00
unknown
9224719d25 Fix for broken compile if not compiling with partitioning 2006-06-16 15:04:35 -04:00
unknown
e08a2b326b Fix for bug#13479 "REPLACE activates UPDATE trigger, not the DELETE and
INSERT triggers".

In cases when REPLACE was internally executed via update and table had
on update (on delete) triggers defined we exposed the fact that such
optimization used by callng on update (not calling on delete) triggers.
Such behavior contradicts our documentation which describes REPLACE as
INSERT with optional DELETE.

This fix just disables this optimization for tables with on delete triggers.
The optimization is still applied for tables which have on update but have
no on delete triggers, we just don't invoke on update triggers in this case
and thus don't expose information about optimization to user.

Also added test coverage for values returned by ROW_COUNT() function (and
thus for values returned by mysql_affected_rows()) for various forms of
INSERT.


mysql-test/r/insert.result:
  Added test for values returned by ROW_COUNT() function (and thus for values
  returned by mysql_affected_rows()) for various forms of INSERT. We didn't
  have coverage for this before and since this fix touches related code it is
  better to add it now.
mysql-test/r/trigger.result:
  Adjusted test after fixing bug#13479 "REPLACE activates UPDATE trigger, not
  the DELETE and INSERT triggers".
mysql-test/t/insert.test:
  Added test for values returned by ROW_COUNT() function (and thus for values
  returned by mysql_affected_rows()) for various forms of INSERT. We didn't
  have coverage for this before and since this fix touches related code it is
  better to add it now.
mysql-test/t/trigger.test:
  Adjusted test after fixing bug#13479 "REPLACE activates UPDATE trigger, not
  the DELETE and INSERT triggers".
sql/sql_insert.cc:
  write_record():
    We should not expose that internally we sometimes execute REPLACE
    via UPDATE instead of documented INSERT + DELETE pair. So we should not
    use this optimization for tables with on delete triggers. OTOH it is ok
    to use it for tables which have on update but have no on delete triggers,
    we just should not invoke on update triggers in this case.
2006-06-16 20:21:25 +04:00
unknown
6f1605321d remove wrong assert 2006-06-16 16:26:30 +02:00
unknown
3796e37c72 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/usr/home/ram/work/mysql-5.0


sql/item_func.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
2006-06-16 16:43:44 +05:00
unknown
78deb348f0 BUG#20498: Wrong usage of hash_first() in get_open_table().
The get_open_table() function was using the wrong key for hash lookups.
This could potentially lead to unpredictable behaviour.


sql/ha_ndbcluster.cc:
  BUG#20498: Wrong usage of hash_first() in get_open_table().
2006-06-16 12:29:04 +02:00
unknown
0237d9b0af String::set(double) and set(longlong) -> set_real() and set_int()
fix Field::store(double) being used instead of store(longlong)

NB: overloading functions is evil
2006-06-16 12:17:20 +02:00
unknown
dd285aac1b after-merge fixes.
mysql-test/r/rpl_log.result:
  after-merge fix.
sql/ha_archive.cc:
  after-merge fix.
sql/item_func.cc:
  after-merge fix.
sql/sql_class.cc:
  after-merge fix.
sql/sql_class.h:
  after-merge fix.
2006-06-16 14:05:58 +05:00
unknown
61f4440c29 Merge mysql.com:/home/stewart/Documents/MySQL/5.0/main
into  mysql.com:/home/stewart/Documents/MySQL/5.1/main


mysql-test/r/ndb_condition_pushdown.result:
  Auto merged
mysql-test/r/type_newdecimal.result:
  Auto merged
mysql-test/r/view_grant.result:
  Auto merged
mysql-test/t/ndb_condition_pushdown.test:
  Auto merged
mysql-test/t/type_newdecimal.test:
  Auto merged
mysql-test/t/view_grant.test:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
mysql-test/valgrind.supp:
  Manual merge
2006-06-16 18:54:20 +10:00
unknown
710abe5390 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


mysql-test/r/ctype_sjis.result:
  Auto merged
mysql-test/t/ctype_sjis.test:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
2006-06-16 10:01:13 +02:00
unknown
64c856c939 Bug#14708: Inconsistent treatment of NULLs in LEFT JOINed FULLTEXT matching without index
Don't rely on table->null_row when no index is used - it may be a multi-table search
2006-06-16 09:49:18 +02:00
unknown
1b1cb63d69 Bug#18775 - Temporary table from alter table visible to other threads
The intermediate (not temporary) files of the new table
during ALTER TABLE was visible for SHOW TABLES. These
intermediate files are copies of the original table with
the changes done by ALTER TABLE. After all the data is
copied over from the original table, these files are renamed 
to the original tables file names. So they are not temporary 
files. They persist after ALTER TABLE, but just with another 
name.

Normal GRANT checking takes place for the intermediate table.
Everyone who can see the original table (and hence the final
table) can also see the intermediate table. But noone else.

In 5.0 the intermediate files are invisible for SHOW TABLES
because all file names beginning with "#sql" were suppressed.
In 5.1 temporary files are created in TMPDIR, so that they
don't appear in the database directories. Also in 5.1 a
translation between table names and file names is done. The
tmp_file_prefix on file level is now "@0023sql".

The suppression of files starting with tmp_file_prefix is
still in place, but still only files beginning with "#sql"
were suppressed.

I do now translate tmp_file_prefix from table name to file
name before comparing it with the files in a directory.
This suppresses the intermediate files again.

No test case. The test case looks so that a reasonable big
table is altered while a second thread runs SHOW TABLES.
This in itself would be possible to do, but on slow machines
it would add too much time to the test suite, while on fast
machines the ALTER TABLE might have finished before SHOW
TABLES looks at the directory. Even if there might be a good
balance for todays machines, one day the test would become
void as the intermediate table would not be seen even with
the bug in place. I added a test script to the bug report.
It can easily be changed so that it uses a table size that
is appropriate for the test machine.


sql/sql_show.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Translating tmp_file_prefix to filename before comparison.
2006-06-16 09:02:03 +02:00
unknown
79966e670a Merge rurik.mysql.com:/home/igor/mysql-4.1-opt
into  rurik.mysql.com:/home/igor/mysql-5.0-opt


mysql-test/t/func_group.test:
  Auto merged
sql/field.cc:
  Auto merged
sql/opt_sum.cc:
  Auto merged
mysql-test/r/func_group.result:
  SCCS merged
2006-06-15 18:40:18 -07:00
unknown
eb21983453 Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  rurik.mysql.com:/home/igor/mysql-5.0-opt


sql/field.cc:
  Auto merged
sql/opt_sum.cc:
  Auto merged
2006-06-15 18:36:46 -07:00
unknown
40305d7a81 After merge fixes 2006-06-16 02:52:17 +02:00