Commit graph

4677 commits

Author SHA1 Message Date
evgen@moonbone.local
8cf9781717 Merge moonbone.local:/work/tmp_merge-5.0-mysql
into  moonbone.local:/work/tmp_merge-5.1-opt-mysql
2006-08-29 18:58:50 +04:00
unknown
42ca1e31cb Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.1
into  salvation.intern.azundris.com:/home/tnurnberg/mysql-5.1


sql/ha_innodb.cc:
  Auto merged
storage/innobase/Makefile.am:
  Auto merged
2006-08-28 19:30:58 +02:00
tnurnberg@salvation.intern.azundris.com
499553365e Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.1
into  salvation.intern.azundris.com:/home/tnurnberg/mysql-5.1
2006-08-28 19:30:58 +02:00
unknown
fb47d6581b This patch removes need for a innodb to have its own configure.
BitKeeper/deleted/.del-configure.in:
  Delete: storage/innobase/configure.in
BUILD/FINISH.sh:
  Removed work for Innodb's configure
BUILD/autorun.sh:
  Removed pieces for Innodb's build
storage/innobase/Makefile.am:
  Removed ib_config.h needs
storage/innobase/include/Makefile.i:
  Expanded includes.
storage/innobase/include/univ.i:
  Removed ib_config need
storage/innobase/plug.in:
  Added support taken from configure.in for building Innodb
2006-08-23 13:59:16 -07:00
brian@zim.(none)
212ab97668 This patch removes need for a innodb to have its own configure. 2006-08-23 13:59:16 -07:00
unknown
b470b3ab87 Major changes are plug.in files created for almost all storage engines. A few stray BDB references removed.
storage/blackhole/plug.in:
  BitKeeper file /home/brian/mysql/arch-5.1/storage/blackhole/plug.in
storage/heap/plug.in:
  BitKeeper file /home/brian/mysql/arch-5.1/storage/heap/plug.in
storage/myisam/plug.in:
  BitKeeper file /home/brian/mysql/arch-5.1/storage/myisam/plug.in
storage/myisammrg/plug.in:
  BitKeeper file /home/brian/mysql/arch-5.1/storage/myisammrg/plug.in
storage/federated/ha_federated.h:
  Rename: sql/ha_federated.h -> storage/federated/ha_federated.h
BUILD/FINISH.sh:
  Stray BDB reference
BUILD/autorun.sh:
  Stray bdb reference
BUILD/compile-alpha-cxx:
  Stray bdb reference
BUILD/compile-alpha-debug:
  Stray bdb reference
BUILD/compile-dist:
  Stray BDB Reference
BUILD/compile-ia64-debug-max:
  Stray BDB reference
configure.in:
  All plugin code is now in plug.in files. Few tricky exceptions left.
sql/CMakeLists.txt:
  Removed federated references
sql/Makefile.am:
  Removed federated references
sql/mysql_priv.h:
  stray bdb reference
storage/example/ha_example.cc:
  Enabled all of mysql include
storage/federated/ha_federated.cc:
  Added plugin defs
storage/csv/plug.in:
  New BitKeeper file ``storage/csv/plug.in''
storage/federated/Makefile.am:
  New BitKeeper file ``storage/federated/Makefile.am''
storage/federated/plug.in:
  New BitKeeper file ``storage/federated/plug.in''
storage/innobase/plug.in:
  New BitKeeper file ``storage/innobase/plug.in''
storage/ndb/plug.in:
  New BitKeeper file ``storage/ndb/plug.in''
2006-08-18 21:19:19 -07:00
brian@zim.(none)
3d09079e31 Major changes are plug.in files created for almost all storage engines. A few stray BDB references removed. 2006-08-18 21:19:19 -07:00
unknown
2606cb9321 Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
All but ss677 are against the mysql-5.1 tree only.

Fixes the following bugs:
- Bug #19834: Using cursors when running in READ-COMMITTED can cause InnoDB to crash
- Bug #20213: DBT2 testing cause mysqld to core using Innodb
- Bug #20493: on partition tables, select and show command casue server crash
- Bug #21113: Duplicate printout in SHOW INNODB STATUS
- Bug #21313: rsql_..._recover_innodb_tmp_table is redundant and broken
- Bug #21467: Manual URL wrong in InnoDB "page corrupted" error report


mysql-test/r/innodb.result:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  innodb.result: Adjust Innodb_rows_inserted and Innodb_rows_updated
  to reflect the deleted statements in r420, which somehow reappeared
  in the MySQL tree.
mysql-test/t/innodb.test:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
sql/ha_innodb.cc:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  ha_innobase::start_stmt(): patch from Heikki:
  Do not call read_view_close_for_mysql().  (Bug #19834)
  
  Fix Bug#20213 and its duplicates: stress test crashes of InnoDB-5.1
  
  Fix Bug #20493 : we must prepare prebuilt->trx to point to the trx of this thd before using it
  
  Add update_thd() to several places in ha_innodb.cc to make sure prebuilt->trx points to the right trx object; in other functions add assertions that prebuilt->trx is for this thd; when 5.1 stabilizes, we can change these assertions to ut_ad() debug version assertions
  
  Remove redundant check_trx_exists() and ut_a() from r701,
  as suggested by Marko
  
  Correct all URLs pointing to the MySQL manual. (Bug #21467)
storage/innobase/btr/btr0btr.c:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  Correct all URLs pointing to the MySQL manual. (Bug #21467)
storage/innobase/buf/buf0buf.c:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  Correct all URLs pointing to the MySQL manual. (Bug #21467)
storage/innobase/dict/dict0dict.c:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  Correct all URLs pointing to the MySQL manual. (Bug #21467)
storage/innobase/fil/fil0fil.c:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  Make the tablespace cache hash size 100 or 1000 times bigger. Fixes bug
  #21112.
  
  After ut_print_timestamp(), always display "  InnoDB:" (note two spaces).
  
  Correct all URLs pointing to the MySQL manual. (Bug #21467)
storage/innobase/fsp/fsp0fsp.c:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  Correct all URLs pointing to the MySQL manual. (Bug #21467)
storage/innobase/ibuf/ibuf0ibuf.c:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  ibuf_print(): Don't print redundant information. Fixes bug #21113.
  
  Remove non-varying variable ibuf->meter and related constant IBUF_THRESHOLD.
storage/innobase/include/btr0cur.ic:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  btr_cur_get_page(): Remove buggy assertion.
storage/innobase/include/buf0buf.ic:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  Correct all URLs pointing to the MySQL manual. (Bug #21467)
storage/innobase/include/ibuf0ibuf.ic:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  Remove non-varying variable ibuf->meter and related constant IBUF_THRESHOLD.
storage/innobase/log/log0log.c:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  Correct all URLs pointing to the MySQL manual. (Bug #21467)
storage/innobase/log/log0recv.c:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  Correct all URLs pointing to the MySQL manual. (Bug #21467)
storage/innobase/os/os0file.c:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  Correct all URLs pointing to the MySQL manual. (Bug #21467)
storage/innobase/row/row0mysql.c:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  Remove the special treatment of tables
  rsql_IDENTIFIER_recover_innodb_tmp_table, which is redundant and
  was broken with the introduction of the "safe" file name encoding of
  identifiers.  (Bug #21313)
  
  ChangeSet@1.2181.173.1  2006-08-02 17:57:06+02:00  ingo@local
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Changed back the encoded temp file prefix to #sql.
  
  After ut_print_timestamp(), always display "  InnoDB:" (note two spaces).
  
  Correct all URLs pointing to the MySQL manual. (Bug #21467)
storage/innobase/row/row0sel.c:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  Correct all URLs pointing to the MySQL manual. (Bug #21467)
storage/innobase/row/row0vers.c:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  row_vers_build_for_semi_consistent_read(): rec_trx_id was uninitialized
  in a comparison.  Initialize it.
storage/innobase/srv/srv0start.c:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  Correct all URLs pointing to the MySQL manual. (Bug #21467)
storage/innobase/ut/ut0dbg.c:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
  
  ut_dbg_assertion_failed(): Print space between timestamp and start of error
  message.
  
  After ut_print_timestamp(), always display "  InnoDB:" (note two spaces).
  
  Correct all URLs pointing to the MySQL manual. (Bug #21467)
storage/innobase/Makefile.am:
  Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
  All but ss677 are against the mysql-5.1 tree only.
2006-08-15 01:42:57 +02:00
tsmith@production.mysql.com
df5e20e75d Applied innodb-5.1-ss677, -ss680, -ss713, and -ss720 snapshots.
All but ss677 are against the mysql-5.1 tree only.

Fixes the following bugs:
- Bug #19834: Using cursors when running in READ-COMMITTED can cause InnoDB to crash
- Bug #20213: DBT2 testing cause mysqld to core using Innodb
- Bug #20493: on partition tables, select and show command casue server crash
- Bug #21113: Duplicate printout in SHOW INNODB STATUS
- Bug #21313: rsql_..._recover_innodb_tmp_table is redundant and broken
- Bug #21467: Manual URL wrong in InnoDB "page corrupted" error report
2006-08-15 01:42:57 +02:00
unknown
fab1b2f5be Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.1
into  govinda.patg.net:/home/patg/mysql-build/mysql-5.1-engines-merge


sql/ha_myisam.cc:
  Auto merged
sql/ha_myisammrg.cc:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_partition.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_trigger.cc:
  Auto merged
sql/sql_view.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/table.cc:
  Auto merged
storage/innobase/row/row0mysql.c:
  Auto merged
2006-08-10 14:28:39 -07:00
patg@govinda.patg.net
4371749996 Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.1
into  govinda.patg.net:/home/patg/mysql-build/mysql-5.1-engines-merge
2006-08-10 14:28:39 -07:00
unknown
ef976d20c9 Bug#18775 - Temporary table from alter table visible to other threads
Continued implementation of WL#1324 (table name to filename encoding)

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.

In 5.0 the intermediate files are invisible for SHOW TABLES
because all file names beginning with "#sql" were suppressed.

This failed since 5.1.6 because even temporary table names were
converted when making file names from them. The prefix became
converted to "@0023sql". Converting the prefix during SHOW TABLES
would suppress the listing of user tables that start with "#sql".

The solution of the problem is to continue the implementation of
the table name to file name conversion feature. One requirement
is to suppress the conversion for temporary table names.

This change is straightforward for real temporary tables as there
is a function that creates temporary file names.

But the generated path names are located in TMPDIR and have no
relation to the internal table name. This cannot be used for
ALTER TABLE. Its intermediate files need to be in the same
directory as the old table files. And it is necessary to be
able to deduce the same path from the same table name repeatedly.

Consequently the intermediate table files must be handled like normal
tables. Their internal names shall start with tmp_file_prefix
(#sql) and they shall not be converted like normal table names.

I added a flags parameter to all relevant functions that are
called from ALTER TABLE. It is used to suppress the conversion
for the intermediate table files.

The outcome is that the suppression of #sql in SHOW TABLES
works again. It does not suppress user tables as these are
converted to @0023sql on file level.

This patch does also fix ALTER TABLE ... RENAME, which could not 
rename a table with non-ASCII characters in its name.

It does also fix the problem that a user could create a table like
`#sql-xxxx-yyyy`, where xxxx is mysqld's pid and yyyy is the thread
ID of some other thread, which prevented this thread from running 
ALTER TABLE.

Some of the above problems are mentioned in Bug 1405, which can
be closed with this patch.

This patch does also contain some minor fixes for other forgotten
conversions. Still known problems are reported as bugs 21370,
21373, and 21387.


mysql-test/r/alter_table.result:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added test results.
mysql-test/r/backup.result:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added test results.
mysql-test/r/repair.result:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added test results.
mysql-test/t/alter_table.test:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added test cases.
mysql-test/t/backup.test:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added test cases.
mysql-test/t/repair.test:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added a test case.
sql/ha_myisam.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added missing table name mapping calls to backup() and restore().
sql/ha_myisammrg.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added an zero argument for the new 'flags' parameter.
sql/ha_ndbcluster.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added an zero argument for the new 'flags' parameter.
sql/ha_ndbcluster_binlog.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added an zero argument for the new 'flags' parameter.
sql/ha_ndbcluster_binlog.h:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Removed unnecessary check for wrong temp file prefix.
sql/mysql_priv.h:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Extended quick_rm_table(), mysql_rename_table(), and
  build_table_filename() by an flags argument, which can indicate
  temporary table names that should not be converted.
  Added symbolic flag values.
sql/sql_acl.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added an zero argument for the new 'flags' parameter.
sql/sql_base.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Fixed a comment.
  Added DBUG calls.
sql/sql_db.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added an zero argument for the new 'flags' parameter.
sql/sql_delete.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added an zero argument for the new 'flags' parameter.
sql/sql_insert.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added an zero argument for the new 'flags' parameter.
sql/sql_partition.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added an zero argument for the new 'flags' parameter.
sql/sql_rename.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added an zero argument for the new 'flags' parameter.
sql/sql_show.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Reverted the former fix for this bug. tmp_file_prefix is now used
  verbatim in the comparison of file names.
sql/sql_table.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added a check for a tmp_file_prefix file name to
  filename_to_tablename(). These names are now accepted without
  conversion.
  Extended quick_rm_table(), mysql_rename_table(), and
  build_table_filename() by an flags argument, which can indicate
  temporary table names that should not be converted.
  Removed the table to file name conversion from
  build_tmptable_filename().
  Disabled REPAIR TABLE ... USE_FRM for temporary tables.
  Added the forgotten conversion to mysql_alter_table() for the case
  of ALTER TABLE ... RENAME.
  Added comments and DBUG calls.
sql/sql_trigger.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added an zero argument for the new 'flags' parameter.
sql/sql_view.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Added an zero argument for the new 'flags' parameter.
sql/table.cc:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Replaced a literal ".frm" by reg_ext.
  Added DBUG calls.
storage/innobase/row/row0mysql.c:
  Bug#18775 - Temporary table from alter table visible to other threads
  Continued implementation of WL#1324 (table name to filename encoding)
  Changed back the encoded temp file prefix to #sql.
2006-08-02 17:57:06 +02:00
ingo/istruewing@chilla.local
8e4c36ad4a Bug#18775 - Temporary table from alter table visible to other threads
Continued implementation of WL#1324 (table name to filename encoding)

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.

In 5.0 the intermediate files are invisible for SHOW TABLES
because all file names beginning with "#sql" were suppressed.

This failed since 5.1.6 because even temporary table names were
converted when making file names from them. The prefix became
converted to "@0023sql". Converting the prefix during SHOW TABLES
would suppress the listing of user tables that start with "#sql".

The solution of the problem is to continue the implementation of
the table name to file name conversion feature. One requirement
is to suppress the conversion for temporary table names.

This change is straightforward for real temporary tables as there
is a function that creates temporary file names.

But the generated path names are located in TMPDIR and have no
relation to the internal table name. This cannot be used for
ALTER TABLE. Its intermediate files need to be in the same
directory as the old table files. And it is necessary to be
able to deduce the same path from the same table name repeatedly.

Consequently the intermediate table files must be handled like normal
tables. Their internal names shall start with tmp_file_prefix
(#sql) and they shall not be converted like normal table names.

I added a flags parameter to all relevant functions that are
called from ALTER TABLE. It is used to suppress the conversion
for the intermediate table files.

The outcome is that the suppression of #sql in SHOW TABLES
works again. It does not suppress user tables as these are
converted to @0023sql on file level.

This patch does also fix ALTER TABLE ... RENAME, which could not 
rename a table with non-ASCII characters in its name.

It does also fix the problem that a user could create a table like
`#sql-xxxx-yyyy`, where xxxx is mysqld's pid and yyyy is the thread
ID of some other thread, which prevented this thread from running 
ALTER TABLE.

Some of the above problems are mentioned in Bug 1405, which can
be closed with this patch.

This patch does also contain some minor fixes for other forgotten
conversions. Still known problems are reported as bugs 21370,
21373, and 21387.
2006-08-02 17:57:06 +02:00
unknown
7d43d6fdd6 Make innodb_flush_log_at_trx_commit a settable global variable.
sql/ha_innodb.cc:
  Remove innobase_flush_log_at_trx_commit
  (set srv_flush_log_at_trx_commit directly).
sql/ha_innodb.h:
  Remove innobase_flush_log_at_trx_commit.
  Declare srv_flush_log_at_trx_commit.
sql/mysqld.cc:
  Bypass the innobase_flush_log_at_trx_commit variable.
storage/innobase/include/srv0srv.h:
  Change the type of srv_flush_log_at_trx_commit.
storage/innobase/srv/srv0srv.c:
  Change the type of srv_flush_log_at_trx_commit.
2006-07-29 07:17:33 +04:00
aivanov/alexi@mysql.com/mysqld.localdomain
0bd3c297a4 Make innodb_flush_log_at_trx_commit a settable global variable. 2006-07-29 07:17:33 +04:00
unknown
d36f94791a Applied innodb-5.1-ss660 snapshot.
Changes in SQL parser:
 * Change default mode of SELECT from "lock in share mode"
   to "consistent read".
 * Remove support from SELECT for specifying "consistent read".
 * Add support in SELECT for specifying "lock in share mode".
 * Change all uses of SQL parser to specify "lock in share mode".
 * Modify syntax so that the only valid top-level statement is
   a procedure definition, since it's the only one that actually
   works.
 * Add support for lock waits.


sql/ha_innodb.cc:
  Applied innodb-5.1-ss660 snapshot.
   Document better the "bool table_id" flag.
storage/innobase/btr/btr0cur.c:
  Applied innodb-5.1-ss660 snapshot.
   btr_cur_search_to_nth_level(): Reacquire btr_search_latch after
   inserting to the insert buffer. This was noticed while analysing
   Bug#19801, but this should not fix this bug since, according to
   Heikki, btr_search_latch is not reserved during an insert.
storage/innobase/configure.in:
  Applied innodb-5.1-ss660 snapshot.
   Add -Wpointer-arith to CFLAGS when using GCC.
storage/innobase/data/data0type.c:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/dict/dict0crea.c:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/dict/dict0dict.c:
  Applied innodb-5.1-ss660 snapshot.
   Make dict_remove_db_name() non-static.
storage/innobase/ibuf/ibuf0ibuf.c:
  Applied innodb-5.1-ss660 snapshot.
   ibuf_fixed_addr_page(): Add parameter space. As the insert buffer
   B-tree is only located in the system tablespace (space 0),
   IBUF_TREE_ROOT_PAGE_NO is only special in space 0.
storage/innobase/include/data0type.h:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/include/dict0dict.h:
  Applied innodb-5.1-ss660 snapshot.
   Make dict_remove_db_name() non-static.
storage/innobase/include/pars0grm.h:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/include/pars0pars.h:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/include/que0que.h:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/include/sync0rw.ic:
  Applied innodb-5.1-ss660 snapshot.
   rw_lock_s_unlock_func(): Change a debug assertion to a
   production assertion in order to track down Bug#19081.
storage/innobase/include/trx0trx.h:
  Applied innodb-5.1-ss660 snapshot.
   trx_sig_send() always succeeds or asserts.
storage/innobase/include/ut0ut.h:
  Applied innodb-5.1-ss660 snapshot.
   Document better the "bool table_id" flags.
storage/innobase/mem/mem0mem.c:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/pars/lexyy.c:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/pars/pars0grm.c:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/pars/pars0grm.h:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/pars/pars0grm.y:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/pars/pars0lex.l:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/pars/pars0pars.c:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/que/que0que.c:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/row/row0mysql.c:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/row/row0sel.c:
  Applied innodb-5.1-ss660 snapshot.
   * Disable prefetch and adaptive hash index for tables
     with rows over 1024 bytes in InnoDB's SQL parser.
   * row_sel_try_search_shortcut(): Do not return SEL_FOUND
     when the record was not found. This bug was introduced
     in MySQL/InnoDB 5.0.3, but luckily it should never
     manifest itself, given that existing InnoDB SQL code
     never makes use of consistent reads.
   * Don't take unnecesary locks on supremum records when the
     srv_locks_unsafe_for_binlog option is enabled. Fixes an
     assertion failure in the innodb_unsafe_binlog testcase
     when compiled with UNIV_DEBUG.
storage/innobase/row/row0upd.c:
  Applied innodb-5.1-ss660 snapshot.
storage/innobase/trx/trx0roll.c:
  Applied innodb-5.1-ss660 snapshot.
   trx_sig_send() always succeeds or asserts.
storage/innobase/trx/trx0trx.c:
  Applied innodb-5.1-ss660 snapshot.
   trx_sig_send() always succeeds or asserts.
storage/innobase/ut/ut0ut.c:
  Applied innodb-5.1-ss660 snapshot.
   Document better the "bool table_id" flags.
2006-07-26 13:28:51 +04:00
aivanov/alexi@mysql.com/mysqld.localdomain
9f14faf7e7 Applied innodb-5.1-ss660 snapshot.
Changes in SQL parser:
 * Change default mode of SELECT from "lock in share mode"
   to "consistent read".
 * Remove support from SELECT for specifying "consistent read".
 * Add support in SELECT for specifying "lock in share mode".
 * Change all uses of SQL parser to specify "lock in share mode".
 * Modify syntax so that the only valid top-level statement is
   a procedure definition, since it's the only one that actually
   works.
 * Add support for lock waits.
2006-07-26 13:28:51 +04:00
unknown
aab5228292 Post innodb-5.1-ss594 modifications.
Avoiding compilation error ("void * - unknown size").
2006-06-15 07:24:23 +04:00
aivanov@mysql.com
413a80d42b Post innodb-5.1-ss594 modifications.
Avoiding compilation error ("void * - unknown size").
2006-06-15 07:24:23 +04:00
unknown
c637464525 Post innodb-5.1-ss594 modifications.
Avoiding build error caused by adding new files.


storage/innobase/Makefile.am:
  Post innodb-5.1-ss594 modifications.
   Including newly added functions to EXTA_DIST.
2006-06-15 05:43:19 +04:00
aivanov@mysql.com
662dd8d967 Post innodb-5.1-ss594 modifications.
Avoiding build error caused by adding new files.
2006-06-15 05:43:19 +04:00
unknown
d4c560343e Making dtype_get_max_size() non-inline to avoid build error
in non-debug mode.
2006-06-12 13:52:29 +04:00
aivanov@mysql.com
53c9173e1b Making dtype_get_max_size() non-inline to avoid build error
in non-debug mode.
2006-06-12 13:52:29 +04:00
unknown
2dca2a1a5d 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().


mysql-test/r/innodb.result:
  Applied innodb-5.1-ss594 snapshot.
mysql-test/t/innodb.test:
  Copy the comment from the beginning of the file
   to the end because MySQL developers continue
   adding test cases to this file.
sql/ha_innodb.cc:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/CMakeLists.txt:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/Makefile.am:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/btr/btr0btr.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/btr/btr0cur.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/btr/btr0pcur.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/btr/btr0sea.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/buf/buf0buf.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/buf/buf0flu.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/data/data0type.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/dict/dict0crea.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/dict/dict0dict.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/dict/dict0load.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/dict/dict0mem.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/fil/fil0fil.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/ha/hash0hash.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/ibuf/ibuf0ibuf.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/data0type.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/dict0dict.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/dict0dict.ic:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/dict0mem.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/fil0fil.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/fsp0fsp.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/ibuf0ibuf.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/mem0mem.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/pars0pars.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/pars0sym.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/pars0types.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/rem0rec.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/row0purge.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/row0undo.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/srv0srv.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/sync0rw.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/sync0sync.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/univ.i:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/ut0dbg.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/ut0ut.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/lock/lock0lock.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/log/log0log.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/log/log0recv.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/mem/mem0dbg.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/mem/mem0mem.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/mem/mem0pool.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/os/os0file.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/os/os0thread.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/pars/lexyy.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/pars/pars0lex.l:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/pars/pars0pars.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/pars/pars0sym.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/row/row0ins.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/row/row0mysql.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/row/row0purge.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/row/row0row.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/row/row0sel.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/row/row0upd.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/srv/srv0srv.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/srv/srv0start.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/sync/sync0arr.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/sync/sync0rw.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/sync/sync0sync.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/thr/thr0loc.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/trx/trx0purge.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/trx/trx0rec.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/trx/trx0roll.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/trx/trx0rseg.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/trx/trx0sys.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/trx/trx0trx.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/ut/Makefile.am:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/ut/ut0dbg.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/ut/ut0ut.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/ha_prototypes.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/ut0list.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/ut0list.ic:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/include/ut0wqueue.h:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/ut/ut0list.c:
  Applied innodb-5.1-ss594 snapshot.
storage/innobase/ut/ut0wqueue.c:
  Applied innodb-5.1-ss594 snapshot.
2006-06-01 10:34:04 +04: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
unknown
e8a5d25bea Rename cmakelists.txt -> CMakeLists.txt 2006-05-12 10:51:07 +02:00
msvensson@neptunus.(none)
40bfe246a9 Rename cmakelists.txt -> CMakeLists.txt 2006-05-12 10:51:07 +02:00
unknown
2dce7ff6f1 performing a set of bk mv on each CMakeLists.txt file to try and restore the mixed case filenames since this seems to be required with Cmake 2.4 beta 1.
This is being pushed to a private tree and tested before being sent to the mainline.


client/CMakeLists.txt:
  Rename: client/cmakelists.txt.tmp -> client/CMakeLists.txt
libmysql/CMakeLists.txt:
  Rename: libmysql/cmakelists.txt.tmp -> libmysql/CMakeLists.txt
libmysqld/CMakeLists.txt:
  Rename: libmysqld/cmakelists.txt.tmp -> libmysqld/CMakeLists.txt
sql/CMakeLists.txt:
  Rename: sql/cmakelists.txt.tmp -> sql/CMakeLists.txt
zlib/CMakeLists.txt:
  Rename: zlib/cmakelists.txt.tmp -> zlib/CMakeLists.txt
extra/CMakeLists.txt:
  Rename: extra/cmakelists.txt.tmp -> extra/CMakeLists.txt
tests/CMakeLists.txt:
  Rename: tests/cmakelists.txt.tmp -> tests/CMakeLists.txt
extra/yassl/CMakeLists.txt:
  Rename: extra/yassl/cmakelists.txt.tmp -> extra/yassl/CMakeLists.txt
extra/yassl/taocrypt/CMakeLists.txt:
  Rename: extra/yassl/taocrypt/cmakelists.txt.tmp -> extra/yassl/taocrypt/CMakeLists.txt
storage/heap/CMakeLists.txt:
  Rename: storage/heap/cmakelists.txt.tmp -> storage/heap/CMakeLists.txt
storage/myisam/CMakeLists.txt:
  Rename: storage/myisam/cmakelists.txt.tmp -> storage/myisam/CMakeLists.txt
storage/myisammrg/CMakeLists.txt:
  Rename: storage/myisammrg/cmakelists.txt.tmp -> storage/myisammrg/CMakeLists.txt
storage/csv/CMakeLists.txt:
  Rename: storage/csv/cmakelists.txt.tmp -> storage/csv/CMakeLists.txt
storage/innobase/CMakeLists.txt:
  Rename: storage/innobase/cmakelists.txt.tmp -> storage/innobase/CMakeLists.txt
server-tools/instance-manager/CMakeLists.txt:
  Rename: server-tools/instance-manager/cmakelists.txt.tmp -> server-tools/instance-manager/CMakeLists.txt
libmysqld/examples/CMakeLists.txt:
  Rename: libmysqld/examples/cmakelists.txt.tmp -> libmysqld/examples/CMakeLists.txt
vio/CMakeLists.txt:
  Rename: vio/cmakelists.txt.tmp -> vio/CMakeLists.txt
dbug/CMakeLists.txt:
  Rename: dbug/cmakelists.txt.tmp -> dbug/CMakeLists.txt
strings/CMakeLists.txt:
  Rename: strings/cmakelists.txt.tmp -> strings/CMakeLists.txt
regex/CMakeLists.txt:
  Rename: regex/cmakelists.txt.tmp -> regex/CMakeLists.txt
mysys/CMakeLists.txt:
  Rename: mysys/cmakelists.txt.tmp -> mysys/CMakeLists.txt
storage/archive/CMakeLists.txt:
  Rename: storage/archive/cmakelists.txt.tmp -> storage/archive/CMakeLists.txt
storage/bdb/CMakeLists.txt:
  Rename: storage/bdb/cmakelists.txt.tmp -> storage/bdb/CMakeLists.txt
storage/blackhole/CMakeLists.txt:
  Rename: storage/blackhole/cmakelists.txt.tmp -> storage/blackhole/CMakeLists.txt
storage/example/CMakeLists.txt:
  Rename: storage/example/cmakelists.txt.tmp -> storage/example/CMakeLists.txt
CMakeLists.txt:
  Rename: cmakelists.txt.tmp -> CMakeLists.txt
2006-05-11 11:29:08 -05:00
reggie@big_geek.
67a692f998 performing a set of bk mv on each CMakeLists.txt file to try and restore the mixed case filenames since this seems to be required with Cmake 2.4 beta 1.
This is being pushed to a private tree and tested before being sent to the mainline.
2006-05-11 11:29:08 -05:00
unknown
b0efe477fb Merge xiphis.org:/home/antony/work2/mysql-5.1
into  xiphis.org:/home/antony/work2/wl3201-post-review.2


BitKeeper/etc/ignore:
  auto-union
configure.in:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
storage/archive/ha_archive.cc:
  Auto merged
storage/archive/ha_archive.h:
  Auto merged
2006-05-01 22:45:31 -07:00
acurtis@xiphis.org
09c7374d69 Merge xiphis.org:/home/antony/work2/mysql-5.1
into  xiphis.org:/home/antony/work2/wl3201-post-review.2
2006-05-01 22:45:31 -07:00
unknown
2eff96e631 make distcheck and cosmetic fixes 2006-04-29 09:33:34 -07:00
serg@sergbook.mysql.com
281fb1cfc5 make distcheck and cosmetic fixes 2006-04-29 09:33:34 -07:00
unknown
67d23360d7 Applied innodb-5.1-ss492 snapshot.
* Fix BUG#19217 "dict_load_indexes() may read the delete-mark incorrectly".
 * Remove obsolete and unused variables from srv0srv.c.
 * Remove srv_sys->operational since it is unused.
 * Make thread_id parameter in os_thread_create() optional.
 * Add platform-specific os_thread_ret_t and OS_THREAD_DUMMY_RETURN,
   and convert thread start functions to use them.


storage/innobase/dict/dict0dict.c:
  Applied innodb-5.1-ss492 snapshot.
storage/innobase/dict/dict0load.c:
  Applied innodb-5.1-ss492 snapshot.
   dict_load_indexes(): pass comp=0 to rec_get_deleted_flag(), because
   SYS_INDEXES always is in ROW_FORMAT=REDUNDANT (Bug #19217).
storage/innobase/include/os0thread.h:
  Applied innodb-5.1-ss492 snapshot.
storage/innobase/include/srv0srv.h:
  Applied innodb-5.1-ss492 snapshot.
storage/innobase/include/trx0roll.h:
  Applied innodb-5.1-ss492 snapshot.
storage/innobase/include/univ.i:
  Applied innodb-5.1-ss492 snapshot.
storage/innobase/log/log0recv.c:
  Applied innodb-5.1-ss492 snapshot.
storage/innobase/os/os0thread.c:
  Applied innodb-5.1-ss492 snapshot.
storage/innobase/que/que0que.c:
  Applied innodb-5.1-ss492 snapshot.
storage/innobase/srv/srv0srv.c:
  Applied innodb-5.1-ss492 snapshot.
storage/innobase/srv/srv0start.c:
  Applied innodb-5.1-ss492 snapshot.
storage/innobase/trx/trx0roll.c:
  Applied innodb-5.1-ss492 snapshot.
2006-04-26 08:30:37 +04:00
aivanov@mysql.com
0eb36757a8 Applied innodb-5.1-ss492 snapshot.
* Fix BUG#19217 "dict_load_indexes() may read the delete-mark incorrectly".
 * Remove obsolete and unused variables from srv0srv.c.
 * Remove srv_sys->operational since it is unused.
 * Make thread_id parameter in os_thread_create() optional.
 * Add platform-specific os_thread_ret_t and OS_THREAD_DUMMY_RETURN,
   and convert thread start functions to use them.
2006-04-26 08:30:37 +04:00
unknown
1260bc8873 Merge xiphis.org:/home/antony/work2/wl3201.3
into  xiphis.org:/home/antony/work2/wl3201.merge


BUILD/SETUP.sh:
  Auto merged
libmysqld/Makefile.am:
  Auto merged
sql/ha_heap.cc:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/ha_myisammrg.cc:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/ha_ndbcluster_binlog.cc:
  Auto merged
sql/ha_partition.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/log.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/partition_info.cc:
  Auto merged
sql/sql_plugin.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
storage/archive/ha_archive.cc:
  Auto merged
storage/archive/ha_archive.h:
  Auto merged
storage/example/ha_example.cc:
  Auto merged
Makefile.am:
  Merge for WL#3201, some post-merge fixes will be required.
configure.in:
  Merge for WL#3201
plugin/Makefile.am:
  Merge for WL#3201
storage/innobase/Makefile.am:
  Merge for WL#3201
2006-04-24 13:36:15 -07:00
acurtis@xiphis.org
53d4594cfe Merge xiphis.org:/home/antony/work2/wl3201.3
into  xiphis.org:/home/antony/work2/wl3201.merge
2006-04-24 13:36:15 -07:00
unknown
c7a5f50342 Fix cmakelists.txt removed by innodb snapshot. 2006-04-23 18:15:41 +02:00
knielsen@mysql.com
92a8da8b18 Fix cmakelists.txt removed by innodb snapshot. 2006-04-23 18:15:41 +02:00
unknown
ca9b46f71a Applied innodb-5.1-ss475 snapshot.
* Fix BUG#15650: "DELETE with LEFT JOIN crashes server with innodb_locks_unsafe_for binlog"
* Fix BUG#17134: "Partitions: uncommitted changes are visible"
* Fix BUG#17992: "Partitions: InnoDB, somehow rotten table after UPDATE"
  row0ins.c: MySQL's partitioned table code does not set preduilt->sql_stat_start right
  if it does an insert in the same statement after doing a search first in the same
  partition table. We now write trx id always to the buffer, not just when flag
  sql_stat_start is on. This will waste CPU time very sightly.
* Fix BUG#18077: "InnoDB uses full explicit table locks in stored FUNCTION"
* Fix BUG#18238: "When locks exhaust the buffer pool, InnoDB does not roll back the trx"
* Fix BUG#18252" "Disk space leak in updates of InnoDB BLOB rows in 5.0 and 5.1"
* Fix BUG#18283: "When InnoDB returns error 'lock table full', MySQL can write to binlog too much"
* Fix BUG#18350: "Use consistent read in CREATE ... SELECT ... if innodb_locks_unsafe_for_binlog"
* Fix BUG#18384: "InnoDB memory leak on duplicate key errors in 5.0 if row has many columns"
* Fix BUG#18934: "InnoDB crashes when table uses column names like DB_ROW_ID"
  Refuse tables that use reserved column names.
* InnoDB's SQL parser:
  - Add support for UNSIGNED types, EXIT keyword, quoted identifiers, user-function callbacks
    for processing results of FETCH statements, bound literals, DATA_VARCHAR for bound literals.
  - Allow bound literals of type non-INTEGER to be of length 0.
  - Add make_flex.sh and update lexer/parser generation documentation.
  - Add comment clarifying the difference between 'alias' and 'indirection' fields in sym_node_t.
  - Remove never reached duplicate code in pars_set_dfield_type().
  - Rewrite pars_info datatypes and APIs, add a few helper functions.
  - Since the functions definitions in pars_info_t are accessed after pars_sql() returns
    in the query graph execution stage, we can't free pars_info_t in pars_sql(). Instead,
    make pars_sql() transfer ownership of pars_info_t to the created query graph, and
    make que_graph_free() free it if needed.
  - Allow access to system columns like DB_ROW_ID.
* Use bound literals in row_truncate_table_for_mysql, row_drop_table_for_mysql,
  row_discard_tablespace_for_mysql, and row_rename_table_for_mysql.
* Setting an isolation level of the transaction to read committed weakens the locks for
  this session similarly like the option innodb_locks_unsafe_for binlog. This patch removes
  alnost all gap locking (used in next-key locking) and makes MySQL to release the row locks
  on the rows which does not belong to result set. Additionally, nonlocking selects on
  INSERT INTO SELECT, UPDATE ... (SELECT ...), and CREATE ... SELECT ... use a nonlocking
  consistent read. If a binlog is used, then binlog format should be set to row based
  binloging to make the execution of the complex SQL statements.
* Disable the statistic variables btr_search_n_hash_fail and n_hash_succ, n_hash_fail,
  n_patt_succ, and n_searches of btr_search_t in builds without #ifdef UNIV_SEARCH_PERF_STAT.
* Make innodb.test faster. Group all consistent read test cases to a one test case and
  wait their lock timeout after all have been send to the server. Decrease amount of rows
  inserted in a certain test - this has no effect on the effectiveness of the test and
  reduces the running time by ~10 sec. Remove temporary work-arounds from innodb.result
  now that ALTER TABLE DROP FOREIGN KEY works once again.
* Make innodb_unsafe_binlog.test faster. Grout all consistent read test cases to a one
  test case amd wait their lock timeout after all have been sent to the server. Remove
  unnecessary option --loose_innodb_lock_wait_timeout.
* Print dictionary memory size in SHOW INNODB STATUS.
* Fix memory leaks in row_create_table_for_mysql() in rare corner cases.
* Remove code related to clustered tables. They were never implemented, and the
  implementation would be challenging with ROW_FORMAT=COMPACT. Remove the table types
  DICT_TABLE_CLUSTER_MEMBER and DICT_TABLE_CLUSTER and all related tests and functions.
  dict_table_t: Remove mix_id, mix_len, mix_id_len, mix_id_buf, and cluster_name.
  plan_t: Remove mixed_index.
  dict_create_sys_tables_tuple(): Set MIX_ID=0, MIX_LEN=0, CLUSTER_NAME=NULL when
  inserting into SYS_TABLES.
  dict_tree_check_search_tuple(): Enclose in #ifdef UNIV_DEBUG.
* Move calling of thr_local_free() from trx_free_for_mysql() to
  innobase_close_connection().


mysql-test/r/innodb.result:
  Applied innodb-5.1-ss475 snapshot.
mysql-test/r/innodb_unsafe_binlog.result:
  Applied innodb-5.1-ss475 snapshot.
mysql-test/t/innodb-master.opt:
  Applied innodb-5.1-ss475 snapshot.
mysql-test/t/innodb.test:
  Applied innodb-5.1-ss475 snapshot.
mysql-test/t/innodb_unsafe_binlog-master.opt:
  Applied innodb-5.1-ss475 snapshot.
mysql-test/t/innodb_unsafe_binlog.test:
  Applied innodb-5.1-ss475 snapshot.
sql/ha_innodb.cc:
  Applied innodb-5.1-ss475 snapshot.
   Do not use inlined functions in ha_innodb.cc.
   Remove assertion ut_error which crashes the mysqld server
   if it prints a warning about the adaptive latch.
storage/innobase/Makefile.am:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/btr/btr0btr.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/btr/btr0cur.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/btr/btr0pcur.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/btr/btr0sea.c:
  Applied innodb-5.1-ss475 snapshot.
   Fix compilation problem with non-C99 compilers.
storage/innobase/buf/buf0lru.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/cmakelists.txt:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/configure.in:
  Applied innodb-5.1-ss475 snapshot.
   Add disabled-by-default logic to switch GCC to a strict C89-mode.
   Add -Werror-implicit-function_declaration to CFLAGS when using gcc.
storage/innobase/data/data0type.c:
  Applied innodb-5.1-ss475 snapshot.
   dtype_print(): Recognize DATA_FIXBINARY and DATA_BLOB types.
   Print known flags from prtype. Use a switch statement instead
   of else-if chain.
storage/innobase/dict/dict0crea.c:
  Applied innodb-5.1-ss475 snapshot.
   Use bound literals in all SQL statements instead of elaborately
   constructing correctly allocated and quoted strings to pass the
   data in ASCII form.
storage/innobase/dict/dict0dict.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/dict/dict0load.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/dict/dict0mem.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/eval/eval0proc.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/ibuf/ibuf0ibuf.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/btr0cur.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/btr0cur.ic:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/btr0sea.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/buf0lru.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/dict0dict.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/dict0dict.ic:
  Applied innodb-5.1-ss475 snapshot.
   Remove too strict assertions from some dict_table_t
   accessor functions.
storage/innobase/include/dict0mem.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/eval0proc.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/hash0hash.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/lock0lock.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/mem0mem.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/page0page.ic:
  Applied innodb-5.1-ss475 snapshot.
   Remove UNIV_RELEASE_NOT_YET_STABLE and related checks.
storage/innobase/include/pars0grm.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/pars0pars.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/pars0sym.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/pars0types.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/que0que.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/row0mysql.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/row0sel.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/row0upd.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/trx0trx.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/univ.i:
  Applied innodb-5.1-ss475 snapshot.
   Remove UNIV_RELEASE_NOT_YET_STABLE and related checks.
   When using GCC, use __inline__ instead of inline.
storage/innobase/include/ut0mem.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/lock/lock0lock.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/log/log0recv.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/mem/mem0dbg.c:
  Applied innodb-5.1-ss475 snapshot.
   Add (void*) cast when using the %p printf format specifier.
storage/innobase/mem/mem0mem.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/os/os0sync.c:
  Applied innodb-5.1-ss475 snapshot.
   Add (void*) cast when using the %p printf format specifier.
storage/innobase/pars/lexyy.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/pars/make_bison.sh:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/pars/pars0grm.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/pars/pars0grm.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/pars/pars0grm.y:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/pars/pars0lex.l:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/pars/pars0opt.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/pars/pars0pars.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/pars/pars0sym.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/que/que0que.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/row/row0ins.c:
  Applied innodb-5.1-ss475 snapshot.
   Remove a memory leak when trying to insert a duplicate record to a
   clustered inedx comprising more than about 90 columns (Bug#18384).
   row_ins_duplicate_error_in_clust(): Call mem_heap_free(heap) at
   func_exit if needed.
storage/innobase/row/row0mysql.c:
  Applied innodb-5.1-ss475 snapshot.
   row_mysql_is_system_table(): Use strncmp, not memcmp, since we
   don't know how long the input string is.
storage/innobase/row/row0sel.c:
  Applied innodb-5.1-ss475 snapshot.
   Remove UNIV_RELEASE_NOT_YET_STABLE and related checks.
   row_sel_field_store_in_mysql_format(): Turn the assertions on
   mbminlen, mbmaxlen, and templ->type into debug assertions.
   fetch_step(): Print a more usefull error message when the cursor is closed.
storage/innobase/row/row0upd.c:
  Applied innodb-5.1-ss475 snapshot.
   row_upd_index_replace_new_col_vals_index_pos(): Add a parameter
   order_only for limiting the replacement to the ordering fields
   of the index.
storage/innobase/srv/srv0srv.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/sync/sync0arr.c:
  Applied innodb-5.1-ss475 snapshot.
   Add (void*) cast when using the %p printf format specifier.
storage/innobase/sync/sync0rw.c:
  Applied innodb-5.1-ss475 snapshot.
   Add (void*) cast when using the %p printf format specifier.
storage/innobase/sync/sync0sync.c:
  Applied innodb-5.1-ss475 snapshot.
   Add (void*) cast when using the %p printf format specifier.
storage/innobase/trx/trx0trx.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/ut/Makefile.am:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/ut/ut0mem.c:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/ut0vec.h:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/include/ut0vec.ic:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/pars/make_flex.sh:
  Applied innodb-5.1-ss475 snapshot.
storage/innobase/ut/ut0vec.c:
  Applied innodb-5.1-ss475 snapshot.
2006-04-23 12:48:31 +04:00
aivanov@mysql.com
780f80be16 Applied innodb-5.1-ss475 snapshot.
* Fix BUG#15650: "DELETE with LEFT JOIN crashes server with innodb_locks_unsafe_for binlog"
* Fix BUG#17134: "Partitions: uncommitted changes are visible"
* Fix BUG#17992: "Partitions: InnoDB, somehow rotten table after UPDATE"
  row0ins.c: MySQL's partitioned table code does not set preduilt->sql_stat_start right
  if it does an insert in the same statement after doing a search first in the same
  partition table. We now write trx id always to the buffer, not just when flag
  sql_stat_start is on. This will waste CPU time very sightly.
* Fix BUG#18077: "InnoDB uses full explicit table locks in stored FUNCTION"
* Fix BUG#18238: "When locks exhaust the buffer pool, InnoDB does not roll back the trx"
* Fix BUG#18252" "Disk space leak in updates of InnoDB BLOB rows in 5.0 and 5.1"
* Fix BUG#18283: "When InnoDB returns error 'lock table full', MySQL can write to binlog too much"
* Fix BUG#18350: "Use consistent read in CREATE ... SELECT ... if innodb_locks_unsafe_for_binlog"
* Fix BUG#18384: "InnoDB memory leak on duplicate key errors in 5.0 if row has many columns"
* Fix BUG#18934: "InnoDB crashes when table uses column names like DB_ROW_ID"
  Refuse tables that use reserved column names.
* InnoDB's SQL parser:
  - Add support for UNSIGNED types, EXIT keyword, quoted identifiers, user-function callbacks
    for processing results of FETCH statements, bound literals, DATA_VARCHAR for bound literals.
  - Allow bound literals of type non-INTEGER to be of length 0.
  - Add make_flex.sh and update lexer/parser generation documentation.
  - Add comment clarifying the difference between 'alias' and 'indirection' fields in sym_node_t.
  - Remove never reached duplicate code in pars_set_dfield_type().
  - Rewrite pars_info datatypes and APIs, add a few helper functions.
  - Since the functions definitions in pars_info_t are accessed after pars_sql() returns
    in the query graph execution stage, we can't free pars_info_t in pars_sql(). Instead,
    make pars_sql() transfer ownership of pars_info_t to the created query graph, and
    make que_graph_free() free it if needed.
  - Allow access to system columns like DB_ROW_ID.
* Use bound literals in row_truncate_table_for_mysql, row_drop_table_for_mysql,
  row_discard_tablespace_for_mysql, and row_rename_table_for_mysql.
* Setting an isolation level of the transaction to read committed weakens the locks for
  this session similarly like the option innodb_locks_unsafe_for binlog. This patch removes
  alnost all gap locking (used in next-key locking) and makes MySQL to release the row locks
  on the rows which does not belong to result set. Additionally, nonlocking selects on
  INSERT INTO SELECT, UPDATE ... (SELECT ...), and CREATE ... SELECT ... use a nonlocking
  consistent read. If a binlog is used, then binlog format should be set to row based
  binloging to make the execution of the complex SQL statements.
* Disable the statistic variables btr_search_n_hash_fail and n_hash_succ, n_hash_fail,
  n_patt_succ, and n_searches of btr_search_t in builds without #ifdef UNIV_SEARCH_PERF_STAT.
* Make innodb.test faster. Group all consistent read test cases to a one test case and
  wait their lock timeout after all have been send to the server. Decrease amount of rows
  inserted in a certain test - this has no effect on the effectiveness of the test and
  reduces the running time by ~10 sec. Remove temporary work-arounds from innodb.result
  now that ALTER TABLE DROP FOREIGN KEY works once again.
* Make innodb_unsafe_binlog.test faster. Grout all consistent read test cases to a one
  test case amd wait their lock timeout after all have been sent to the server. Remove
  unnecessary option --loose_innodb_lock_wait_timeout.
* Print dictionary memory size in SHOW INNODB STATUS.
* Fix memory leaks in row_create_table_for_mysql() in rare corner cases.
* Remove code related to clustered tables. They were never implemented, and the
  implementation would be challenging with ROW_FORMAT=COMPACT. Remove the table types
  DICT_TABLE_CLUSTER_MEMBER and DICT_TABLE_CLUSTER and all related tests and functions.
  dict_table_t: Remove mix_id, mix_len, mix_id_len, mix_id_buf, and cluster_name.
  plan_t: Remove mixed_index.
  dict_create_sys_tables_tuple(): Set MIX_ID=0, MIX_LEN=0, CLUSTER_NAME=NULL when
  inserting into SYS_TABLES.
  dict_tree_check_search_tuple(): Enclose in #ifdef UNIV_DEBUG.
* Move calling of thr_local_free() from trx_free_for_mysql() to
  innobase_close_connection().
2006-04-23 12:48:31 +04:00
unknown
83583111ca WL#3201
" Configure support for server plugins "


storage/blackhole/ha_blackhole.h:
  Rename: sql/ha_blackhole.h -> storage/blackhole/ha_blackhole.h
BitKeeper/deleted/.del-storage.m4~24bf2fffdaa328ad:
  Delete: config/ac-macros/storage.m4
BitKeeper/deleted/.del-ha_archive.m4~a07fac7110b39294:
  Delete: config/ac-macros/ha_archive.m4
BitKeeper/deleted/.del-ha_blackhole.m4~8ed06eb91f6420ed:
  Delete: config/ac-macros/ha_blackhole.m4
BitKeeper/deleted/.del-ha_example.m4~1dfb268163297708:
  Delete: config/ac-macros/ha_example.m4
BitKeeper/deleted/.del-ha_federated.m4~7acddd58286acfd6:
  Delete: config/ac-macros/ha_federated.m4
BitKeeper/deleted/.del-ha_innodb.m4~6f141fb5b80c1f39:
  Delete: config/ac-macros/ha_innodb.m4
BitKeeper/deleted/.del-ha_partition.m4~bc57067550be5f89:
  Delete: config/ac-macros/ha_partition.m4
BitKeeper/deleted/.del-ha_tina.m4~f658506ebbc113ca:
  Delete: config/ac-macros/ha_tina.m4
BitKeeper/deleted/.del-handlerton.cc.in~377156e7b06067cc:
  Delete: sql/handlerton.cc.in
BitKeeper/deleted/.del-handlerton-win.cc~322a7e59507976df:
  Delete: sql/handlerton-win.cc
BUILD/SETUP.sh:
  WL#3201
    Changes in configure arguments
Makefile.am:
  WL#3201
    changes in build subst names
config/ac-macros/ha_berkeley.m4:
  WL#3201
    remove unused variable
    Makefile is always made
config/ac-macros/ha_ndbcluster.m4:
  WL#3201
    remove unused variables
    Split big macro
configure.in:
  WL#3201
    out with storage.m4, in with plugins.m4
    change how plugins are declared
    include makefiles, remove handlerton.cc, add sql_builtin.cc
include/mysql/plugin.h:
  WL#3201
    support static and dynamic build - MYSQL_DYNAMIC_PLUGIN
libmysqld/Makefile.am:
  WL#3201
    Storage engine files still left in sql subdir are not conditionally
    compiled. Should move them out soon,
plugin/Makefile.am:
  WL#3201
    update makefile
plugin/fulltext/Makefile.am:
  WL#3201
    update makefile
plugin/fulltext/plugin_example.c:
  WL#3201
    change to mysql_declare_plugin macro
sql/Makefile.am:
  WL#3201
    Storage engine files still left in sql subdir are not conditionally
    compiled. Should move them out soon,
sql/ha_berkeley.cc:
  WL#3201
    make into a plugin
    conditionally compile content
sql/ha_federated.cc:
  WL#3201
    make into a plugin
    conditionally compile content
sql/ha_heap.cc:
  WL#3201
    make into a plugin
sql/ha_innodb.cc:
  WL#3201
    make into a plugin
    conditionally compile content
sql/ha_myisam.cc:
  WL#3201
    make into a plugin
sql/ha_myisammrg.cc:
  WL#3201
    make into a plugin
sql/ha_ndbcluster.cc:
  WL#3201
    make into a plugin
    conditionally compile content
sql/ha_ndbcluster_binlog.cc:
  WL#3201
    make into a plugin
    conditionally compile content
sql/ha_partition.cc:
  WL#3201
    make into a plugin
    conditionally compile content
sql/handler.cc:
  WL#3201
    Simplify how storage engines are found by db_type
    (hopefully we can get rid of it soon)
    Code cleanup
sql/handler.h:
  WL#3201
    new DB_TYPE_FIRST_DYNAMIC
    new func ha_finalize_handlerton()
    remove ha_register_builtin_plugins()
sql/log.cc:
  WL#3201
    make into a plugin
sql/mysqld.cc:
  WL#3201
    remove ha_register_builtin_plugins()
    alter init order so that storage engines are initialized before first use
sql/partition_info.cc:
  WL#3201
    conditionally compile content
sql/sql_delete.cc:
  WL#3201
    conditionally include ha_innodb.h
sql/sql_plugin.cc:
  WL#3201
    All compiled in plugins are in mysqld_builtins[]
    add funcs for plugin finalization
    install builtin plugins on initialization
sql/sql_show.cc:
  WL#3201
    Fix to use plugin_foreach()
sql/sql_yacc.yy:
  WL#3201
    SHOW FULL PLUGIN
storage/archive/Makefile.am:
  WL#3201
    setup as plugin makefile
storage/archive/ha_archive.cc:
  WL#3201
    Convert into a plugin
storage/archive/ha_archive.h:
  WL#3201
    azlib.h now in local dir
storage/blackhole/ha_blackhole.cc:
  WL#3201
    convert into a plugin
storage/csv/Makefile.am:
  WL#3201
    setup as plugin makefile
storage/csv/ha_tina.cc:
  WL#3201
    remove conditional compilation on MYSQL_PLUGIN
    mysql_declare_plugin macro change
storage/example/Makefile.am:
  WL#3201
    fix as new-style plugin makefile
storage/example/ha_example.cc:
  WL#3201
    remove conditional compilation on MYSQL_PLUGIN
    mysql_declare_plugin macro change
storage/innobase/Makefile.am:
  WL#3201
    Lets make life easier and reduce innodb into a single library file
config/ac-macros/plugins.m4:
  New BitKeeper file ``config/ac-macros/plugins.m4''
sql/sql_builtin.cc.in:
  New BitKeeper file ``sql/sql_builtin.cc.in''
storage/blackhole/Makefile.am:
  New BitKeeper file ``storage/blackhole/Makefile.am''
2006-04-13 13:49:29 -07:00
acurtis@xiphis.org
4e11a4d941 WL#3201
" Configure support for server plugins "
2006-04-13 13:49:29 -07:00
unknown
2254c05e33 Remove no longer needed generation of dummy ib_config.h 2006-04-06 17:03:01 +02:00
knielsen@mysql.com
534a87dda2 Remove no longer needed generation of dummy ib_config.h 2006-04-06 17:03:01 +02:00
unknown
682304af11 Merge
storage/ndb/tools/Makefile.am:
  Auto merged
2006-03-30 23:52:54 +02:00
kent@mysql.com
ac34c93bc2 Merge 2006-03-30 23:52:54 +02:00
unknown
230eab3c68 Some changes to make it possible to build for Windows with CMake from
a normal 'make dist' source .tar.gz.


libmysql/mytest.c:
  bk cp VC++Files/libmysqltest/mytest.c libmysql/mytest.c
sql/message.mc:
  bk cp VC++Files/sql/message.mc sql/message.mc
Makefile.am:
  Add Windows CMake stuff.
client/Makefile.am:
  Add extra files needed for CMake Windows build.
cmakelists.txt:
  Fix subdir order to make CMake dependency calculations happy.
configure.in:
  Add extra files needed for CMake Windows build.
extra/Makefile.am:
  Add extra files needed for CMake Windows build.
extra/yassl/Makefile.am:
  Add extra files needed for CMake Windows build.
libmysql/Makefile.am:
  Add extra files needed for CMake Windows build.
libmysql/cmakelists.txt:
  Move mytest.c to a more sensible location.
libmysqld/Makefile.am:
  Add extra files needed for CMake Windows build.
mysys/Makefile.am:
  Add extra files needed for CMake Windows build.
regex/Makefile.am:
  Add extra files needed for CMake Windows build.
server-tools/instance-manager/Makefile.am:
  Add extra files needed for CMake Windows build.
sql/Makefile.am:
  Add extra files needed for CMake Windows build.
sql/cmakelists.txt:
  Move message.mc to a more sensible location.
  Add some dependencies to avoid a stale handlerton.cc.
storage/archive/Makefile.am:
  Add extra files needed for CMake Windows build.
storage/bdb/Makefile.in:
  Add extra files needed for CMake Windows build.
storage/example/Makefile.am:
  Add extra files needed for CMake Windows build.
storage/heap/Makefile.am:
  Add extra files needed for CMake Windows build.
storage/innobase/Makefile.am:
  Add extra files needed for CMake Windows build.
storage/innobase/include/univ.i:
  Avoid including Unix config in Windows build.
storage/myisam/Makefile.am:
  Add extra files needed for CMake Windows build.
storage/myisammrg/Makefile.am:
  Add extra files needed for CMake Windows build.
strings/Makefile.am:
  Add extra files needed for CMake Windows build.
tests/Makefile.am:
  Add extra files needed for CMake Windows build.
vio/Makefile.am:
  Add extra files needed for CMake Windows build.
zlib/Makefile.am:
  Add extra files needed for CMake Windows build.
2006-03-24 22:50:56 +01:00
knielsen@mysql.com
bc6628d27f Some changes to make it possible to build for Windows with CMake from
a normal 'make dist' source .tar.gz.
2006-03-24 22:50:56 +01:00
unknown
66f7f0869b Moved cmake scripts into the proper directories
sql/cmakelists.txt:
  Rename: sql/sql -> sql/cmakelists.txt
zlib/cmakelists.txt:
  Rename: win/cmakefiles/zlib -> zlib/cmakelists.txt
vio/cmakelists.txt:
  Rename: win/cmakefiles/vio -> vio/cmakelists.txt
regex/cmakelists.txt:
  Rename: win/cmakefiles/regex -> regex/cmakelists.txt
mysys/cmakelists.txt:
  Rename: win/cmakefiles/mysys -> mysys/cmakelists.txt
cmakelists.txt:
  Rename: win/cmakefiles/base -> cmakelists.txt
dbug/cmakelists.txt:
  Rename: win/cmakefiles/dbug -> dbug/cmakelists.txt
strings/cmakelists.txt:
  Rename: win/cmakefiles/strings -> strings/cmakelists.txt
libmysql/cmakelists.txt:
  Rename: win/cmakefiles/libmysql -> libmysql/cmakelists.txt
client/cmakelists.txt:
  Rename: win/cmakefiles/client -> client/cmakelists.txt
extra/cmakelists.txt:
  Rename: win/cmakefiles/extra -> extra/cmakelists.txt
tests/cmakelists.txt:
  Rename: win/cmakefiles/tests -> tests/cmakelists.txt
server-tools/instance-manager/cmakelists.txt:
  Rename: win/cmakefiles/im -> server-tools/instance-manager/cmakelists.txt
storage/heap/cmakelists.txt:
  Rename: win/cmakefiles/heap -> storage/heap/cmakelists.txt
storage/myisam/cmakelists.txt:
  Rename: win/cmakefiles/myisam -> storage/myisam/cmakelists.txt
storage/myisammrg/cmakelists.txt:
  Rename: win/cmakefiles/myisammrg -> storage/myisammrg/cmakelists.txt
storage/bdb/cmakelists.txt:
  Rename: win/cmakefiles/bdb -> storage/bdb/cmakelists.txt
storage/innobase/cmakelists.txt:
  Rename: win/cmakefiles/innobase -> storage/innobase/cmakelists.txt
extra/yassl/cmakelists.txt:
  Rename: win/cmakefiles/yassl -> extra/yassl/cmakelists.txt
extra/yassl/taocrypt/cmakelists.txt:
  Rename: win/cmakefiles/taocrypt -> extra/yassl/taocrypt/cmakelists.txt
BitKeeper/deleted/.del-deploy.bat~f6b42340:
  Delete: win/cmakefiles/deploy.bat
2006-03-15 10:22:12 -06:00