1
0
mirror of https://github.com/MariaDB/server.git synced 2025-09-02 09:41:40 +03:00
Commit Graph

12520 Commits

Author SHA1 Message Date
tomas@poseidon.ndb.mysql.com
3ab132bdeb Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  poseidon.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb
2006-06-01 08:46:23 +02:00
mskold@mysql.com
fbe1319c28 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/marty/MySQL/mysql-5.0
2006-06-01 08:43:47 +02:00
aivanov@mysql.com
1d7de700e2 Applied innodb-5.1-ss594 snapshot.
Fixed BUG#19542 "InnoDB doesn't increase the Handler_read_prev couter".
 Fixed BUG#19609 "Case sensitivity of innodb_data_file_path gives stupid error".
 Fixed BUG#19727 "InnoDB crashed server and crashed tables are ot recoverable".
 Also:
 * Remove remnants of the obsolete concept of memoryfixing tables and indexes.
 * Remove unused dict_table_LRU_trim().
 * Remove unused 'trx' parameter from dict_table_get_on_id_low(),
   dict_table_get(), dict_table_get_and_increment_handle_count().
 * Add a normal linked list implementation.
 * Add a work queue implementation.
 * Add 'level' parameter to mutex_create() and rw_lock_create().
   Remove mutex_set_level() and rw_lock_set_level().
 * Rename SYNC_LEVEL_NONE to SYNC_LEVEL_VARYING.
 * Add support for bound ids in InnoDB's parser.
 * Define UNIV_BTR_DEBUG for enabling consistency checks of
   FIL_PAGE_NEXT and FIL_PAGE_PREV when accessing sibling
   pages of B-tree indexes.
   btr_validate_level(): Check the validity of the doubly linked
   list formed by FIL_PAGE_NEXT and FIL_PAGE_PREV.
 * Adapt InnoDB to the new tablename to filename encoding in MySQL 5.1.
   ut_print_name(), ut_print_name1(): Add parameter 'table_id' for
   distinguishing names of tables from other identifiers.
   New: innobase_convert_from_table_id(), innobase_convert_from_id(),
        innobase_convert_from_filename(), innobase_get_charset.
   dict_accept(), dict_scan_id(), dict_scan_col(), dict_scan_table_name(),
   dict_skip_word(), dict_create_foreign_constraints_low(): Add
   parameter 'cs' so that isspace() can be replaced with my_isspace(),
   whose operation depends on the connection character set.
   dict_scan_id(): Convert identifier to UTF-8.
   dict_str_starts_with_keyword(): New extern function, to replace
   dict_accept() in row_search_for_mysql().
   mysql_get_identifier_quote_char(): Replaced with innobase_print_identifier().
   ha_innobase::create(): Remove the thd->convert_strin() call. Pass the
   statement to InnoDB in the connection character set and let InnoDB
   convert the identifier to UTF-8.
 * Add max_row_size to dict_table_t.
 * btr0cur.c
   btr_copy_externally_stored_field(): Only set the 'offset' variable
   when needed.
 * buf0buf.c
   buf_page_io_complete(): Write to the error log if the page number or
   the space id o the disk do not match those in memory. Also write to
   the error log if a page was read from the doublewrite buffer. The
   doublewrite buffer should be only read by the lower-level function
   fil_io() at database startup.
 * dict0dict.c
   dict_scan_table_name(): Remove fallback to differently encoded name
   when the table is not found. The encoding is handled at a higher level.
 * ha_innodb.cc
   Increment statistic counter in ha_innobase::index_prev() (bug 19542).
   Add innobase_convert_string wrapper function and a new file
   ha_prototypes.h.
   innobase_print_identifier(): Remove TODO comment before calling
   get_quote_char_for_identifier(). That function apparently assumes
   the identifier to be encoded in UTF-8.
 * ibuf0ibuf.c|h
   ibuf_count_get(), ibuf_counts[], ibuf_count_inited(): Define these
   only #ifdef UNIV_IBUF_DEBUG. Previously, when compiled without
   UNIV_IBUF_DEBUG, invoking ibuf_count_get() would crash InnoDB.
   The function is only being called #ifdef UNIV_IBUF_DEBUG.
 * innodb.result
   Adjust the results for changes in the foreign key error messages.
 * mem0mem.c|h
   New: mem_heap_dup(), mem_heap_printf(), mem_heap_cat().
 * os0file.c
   Check the page trailers also after writing to disk. This improves
   chances of diagnosing bug 18886.
   os_file_check_page_trailers(): New function for checking that the
   two copies of the LSN stamped on the page match.
   os_aio_simulated_handle(): Call os_file_check_page_trailers()
   before and after os_file_write().
 * row0mysql.c
   Move trx_commit_for_mysql(trx) calls before calls to
   row_mysql_unlock_data_dictionary(trx) (bug 19727).
 * row0sel.c
   row_fetch_print(): Handle SQL NULL values without crashing.
   row_sel_store_mysql_rec(): Remove useless call to rec_get_nth_field
   when handling an externally stored column.
   Fetch externally stored fields when using InnoDB's internal SQL
   parser.
   Optimize BLOB selects by using prebuilt->blob_heap directly instead
   of first reading BLOB data to a temporary heap and then copying it
   to prebuilt->blob_heap.
 * srv0srv.c
   srv_master_thread(): Remove unreachable code.
 * srv0start.c
   srv_parse_data_file_paths_and_sizes(): Accept lower-case 'm' and
   'g' as abbreviations of megabyte and gigabyte (bug 19609).
   srv_parse_megabytes(): New fuction.
 * ut0dbg.c|h
   Implement InnoDB assertions (ut_a and ut_error) with abort() when
   the code is compiled with GCC 3 or later on other platforms than
   Windows or Netware. Also disable the variable ut_dbg_stop_threads
   and the function ut_dbg_stop_thread() i this case, unless
   UNIV_SYC_DEBUG is defined. This should allow the compiler to
   generate more compact code for assertions.
 * ut0list.c|h
   Add ib_list_create_heap().
2006-06-01 10:34:04 +04:00
igor@rurik.mysql.com
d350bd9050 Post-merge fixes 2006-05-31 22:55:45 -07:00
igor@rurik.mysql.com
2fca3df452 Manual merge 2006-05-31 18:12:13 -07:00
igor@rurik.mysql.com
0585e50599 Merge rurik.mysql.com:/home/igor/tmp_merge
into  rurik.mysql.com:/home/igor/dev/mysql-5.0-0
2006-05-31 18:10:02 -07:00
mikael@c-3d08e253.1238-1-64736c10.cust.bredbandsbolaget.se
31665cb561 Merge mronstrom@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  c-3d08e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug18198
2006-05-31 18:24:34 -04:00
msvensson@devsrv-b.mysql.com
e5963d6a17 Merge msvensson@bk-internal.mysql.com:/home/bk/mysql-5.0
into  devsrv-b.mysql.com:/users/msvensson/mysql-5.0
2006-06-01 00:01:52 +02:00
mikael@c-3d08e253.1238-1-64736c10.cust.bredbandsbolaget.se
ff3d79bc7e Merge c-3d08e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug17310
into  c-3d08e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug18198
2006-05-31 14:08:58 -04:00
mikael@c-3d08e253.1238-1-64736c10.cust.bredbandsbolaget.se
f1337d3ef1 Merge c-3d08e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug20161
into  c-3d08e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug18198
2006-05-31 14:07:43 -04:00
mikael@c-3d08e253.1238-1-64736c10.cust.bredbandsbolaget.se
02b3293592 Merge mronstrom@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  c-3d08e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug18198
2006-05-31 13:51:01 -04:00
aelkin@dl145k.mysql.com
5d8d38ee4c Bug#14157: utf8 encoding in binlog without set character_set_client
adapting to pushbuild's custom to switch from default pathes. The name for
var directory must be set with MYSQLTEST_VARDIR.
2006-05-31 19:49:38 +02:00
mikael@c-3d08e253.1238-1-64736c10.cust.bredbandsbolaget.se
fbd7a258e2 BUG#18198: Many strange partition functions were allowed, now only strictly allowed functions are ok 2006-05-31 13:32:14 -04:00
mats@mysql.com
4092292c90 Bug#19995 (Extreneous table maps generated for statements that do not generate rows):
Switched to writing out table maps for tables that are locked when
the first row in a statement is seen.
2006-05-31 19:21:52 +02:00
serg@sergbook.mysql.com
2e16f1eccc after review fixes 2006-05-31 18:07:32 +02:00
mskold@mysql.com
07189b3845 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.1-new-ndb
into  mysql.com:/home/marty/MySQL/mysql-5.1-new
2006-05-31 16:16:04 +02:00
tomas@poseidon.ndb.mysql.com
b6f54a737a Bug #18947 CRBR: order in binlog of create table and insert (on different table) not determ
- wait for schema event also if mysqld is a single one in cluster to ensure serialization with data events
+ some current_thd removals
+ enabling kill of sql thread during shema sync wait
2006-05-31 16:16:03 +02:00
mikael@c-3d08e253.1238-1-64736c10.cust.bredbandsbolaget.se
9686e7bfc9 BUG#20161: LINEAR keyword on subpartitions not displayed in information schema for partitions
and in SHOW CREATE TABLE
2006-05-31 09:33:10 -04:00
mskold@mysql.com
8cd139c27a Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/marty/MySQL/mysql-5.0
2006-05-31 15:32:49 +02:00
serg@sergbook.mysql.com
4accfd2968 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-new
into sergbook.mysql.com:/usr/home/serg/Abk/mysql-5.1
2006-05-31 15:07:29 +02:00
mskold@mysql.com
4532eb14e3 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/home/marty/MySQL/mysql-5.1-new
2006-05-31 14:38:20 +02:00
jani@ua141d10.elisa.omakaista.fi
04441d04b1 Merge from 5.0 to 5.1. Third part with fixes. 2006-05-31 14:55:28 +03:00
jani@ua141d10.elisa.omakaista.fi
a0a7573e02 Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-5.1-new-marvel
2006-05-31 14:18:12 +03:00
aelkin@dl145k.mysql.com
e9570047a4 BUG#14157: utf8 encoding in binlog without set character_set_client
missed table to drop after merge from 4.1
2006-05-31 12:51:21 +02:00
aelkin@dl145k.mysql.com
87c935fe48 Merge dl145k.mysql.com:/tmp/andrei/MERGE/mysql-4.1
into  dl145k.mysql.com:/tmp/andrei/MERGE/5.0
2006-05-31 10:47:16 +02:00
msvensson@shellback.(none)
abf422cd0e Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  shellback.(none):/home/msvensson/mysql/mysql-5.0
2006-05-31 10:33:38 +02:00
serg@sergbook.mysql.com
a1b9c3a1ed proper cleanup after the test 2006-05-31 10:30:48 +02:00
mskold@mysql.com
c11887c49b Bug #16997 Table rename that changes database does not rename indexes: Moved index tables to system database 2006-05-31 10:28:42 +02:00
jani@a193-229-222-105.elisa-laajakaista.fi
9bf4fd5e9b Merge from 5.0 2006-05-31 11:18:58 +03:00
gbichot@dl145j.mysql.com
5b33d510a4 Merge gbichot@bk-internal:/home/bk/mysql-5.1-new
into  dl145j.mysql.com:/users/gbichot/mysql-5.1-new
2006-05-31 09:02:02 +02:00
acurtis@xiphis.org
0cd7ac833a Bug#19648
"Merge table does not work with bit types"
   MERGE should have HA_CAN_BIT_FIELD feature bit set or else table row is
   formatted incorrectly.
2006-05-30 17:10:53 -07:00
ngrishakin@mysql.com
0774b37d2b disabled.def with ndb_dd_backuprestore test disabled 2006-05-30 23:21:44 +02:00
evgen@moonbone.local
fdc2b921cc item_cmpfunc.cc, func_in.result, multi_update.result:
After merge fix
2006-05-30 23:05:34 +04:00
serg@sergbook.mysql.com
7135b559ab Merge bk-internal.mysql.com:/home/bk/mysql-5.1-new
into sergbook.mysql.com:/usr/home/serg/Abk/mysql-5.1
2006-05-30 18:24:06 +02:00
evgen@moonbone.local
de96d52999 Manually merged 2006-05-30 19:16:30 +04:00
evgen@moonbone.local
de8a1b4f19 Merge moonbone.local:/work/18630-bug-4.1-mysql
into moonbone.local:/work/18360-bug-4.1-mysql-opt
2006-05-30 18:57:08 +04:00
gbichot@dl145j.mysql.com
2367ca4675 Merge gbichot@bk-internal:/home/bk/mysql-5.1-new
into  dl145j.mysql.com:/users/gbichot/mysql-5.1-new
2006-05-30 16:21:51 +02:00
jani@a193-229-222-105.elisa-laajakaista.fi
c81b4c01bf Merge a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-5.0
into  a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-5.1-new
2006-05-30 16:07:49 +03:00
elliot@mysql.com
1a7ad4e45d Merge emurphy@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/home/emurphy/src/bk-clean/mysql-5.1-new
2006-05-30 07:57:12 -04:00
mskold@mysql.com
f838e8a499 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/home/marty/MySQL/mysql-4.1
2006-05-30 13:20:38 +02:00
anozdrin@mysql.com
11fcbaf1e1 Merge mysql.com:/home/alik/MySQL/devel/5.0-rt
into  mysql.com:/home/alik/MySQL/devel/5.0-tree
2006-05-30 13:22:49 +04:00
igor@rurik.mysql.com
6051e0f959 Fixed bug #17873: confusing error message when IGNORE/USE/FORCE INDEX
refers to a column name.
2006-05-30 00:08:58 -07:00
gluh@eagle.intranet.mysql.r18.ru
ae72df07f2 Bug#17204 "second CALL to procedure crashes Server"
Bug#18282 "INFORMATION_SCHEMA.TABLES provides inconsistent info about invalid views"
This bug caused crashes or resulted in wrong data being returned
when one tried to obtain information from I_S tables about views
using stored functions.

It was caused by the fact that we were using LEX representing
statement which were doing select from I_S tables as active LEX
when contents of I_S table were built. So state of this LEX both
affected and was affected by open_tables() calls which happened
during this process. This resulted in wrong behavior and in
violations of some of invariants which caused crashes.

This fix tries to solve this problem by properly saving/resetting
and restoring part of LEX which affects and is affected by the
process of opening tables and views in get_all_tables() routine.
To simplify things we separated this part of LEX in a new class
and made LEX its descendant.
2006-05-30 10:45:23 +05:00
mikael@c-870ae253.1238-1-64736c10.cust.bredbandsbolaget.se
d3ea79ff52 BUG#19801: Valgrind error in check_list_constants
Needed some special handling of the case when no_list_values == 0
2006-05-30 00:08:48 -04:00
ngrishakin@mysql.com
89afd0225b Merge ngrishakin@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/home/ndbdev/ngrishakin/mysql-5.1-new
2006-05-30 01:37:20 +02:00
ngrishakin@mysql.com
0763f5e7b4 removed partitions from ndb_dd_backuprestore test 2006-05-30 01:36:35 +02:00
petr@mysql.com
c9b6315699 Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/home/cps/mysql/devel/5.1-csv-remove-mmap
2006-05-30 02:53:38 +04:00
petr@mysql.com
f0a1b76140 Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/home/cps/mysql/devel/5.1-csv-remove-mmap
2006-05-30 02:35:23 +04:00
evgen@moonbone.local
641f852de8 Fixed bug#18360: Incorrect type coercion in IN() results in false comparison
The IN() function uses agg_cmp_type() to aggregate all types of its arguments
to find out some common type for comparisons. In this particular case the 
char() and the int was aggregated to double because char() can contain values
like '1.5'. But all strings which do not start from a digit are converted to
0. thus 'a' and 'z' become equal. 
This behaviour is reasonable when all function arguments are constants. But 
when there is a field or an expression this can lead to false comparisons. In
this case it makes more sense to coerce constants to the type of the field
argument.

The agg_cmp_type() function now aggregates types of constant and non-constant
items separately. If some non-constant items will be found then their
aggregated type will be returned. Thus after the aggregation constants will be
coerced to the aggregated type.
2006-05-30 00:36:48 +04:00
mikael@c-870ae253.1238-1-64736c10.cust.bredbandsbolaget.se
7dae459d70 BUG#17310: Archive error for drop database 2006-05-29 14:51:46 -04:00