Commit graph

644 commits

Author SHA1 Message Date
unknown
3dc93a9c0f Merge jlindstrom@bk-internal.mysql.com:/home/bk/mysql-5.0
into  hundin.mysql.fi:/home/jan/mysql-5.0


mysql-test/r/innodb.result:
  Auto merged
mysql-test/t/innodb.test:
  Auto merged
sql/ha_innodb.cc:
  Content merge.
2005-09-29 13:15:09 +03:00
unknown
612b9cebb2 Minor corrections to InnoDB function comments
innobase/include/mem0mem.h:
  Correct the comment of mem_heap_create_func().
innobase/include/mem0mem.ic:
  Correct the comment of mem_heap_create_func().
sql/ha_innodb.cc:
  Correct comments regarding return value
2005-09-29 12:37:27 +03:00
unknown
2c0e2a147d Fixed a bug checksum table locks the InnoDB table and does not use a
consistent read (Bug #12669). This fixes InnoDB part of the bug.


mysql-test/r/innodb.result:
  Added results for a checksum test.
mysql-test/t/innodb.test:
  Addeed a test case for a checksum bug #12669.
sql/ha_innodb.cc:
  Use consistent read for checksum table.
2005-09-29 08:34:38 +03:00
unknown
95754006eb Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0


BitKeeper/deleted/.del-disabled.def:
  Delete: mysql-test/t/disabled.def
libmysqld/lib_sql.cc:
  Auto merged
mysql-test/t/innodb.test:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
mysql-test/r/innodb.result:
  Manual merge from 4.1 to 5.0
mysql-test/r/select.result:
  Manual merge from 4.1 to 5.0
mysql-test/t/select.test:
  Manual merge from 4.1 to 5.0
sql/item.cc:
  Manual merge from 4.1 to 5.0
2005-09-28 15:32:05 +02:00
unknown
a11fc7341c InnoDB: Remove compiler warnings.
innobase/os/os0proc.c:
  Add UT_NOT_USED for parameters in dummy implementations of AWE functions.
sql/ha_innodb.cc:
  Tweak casts to eliminate compiler warnings.
2005-09-28 14:26:33 +03:00
unknown
2de206b4ee Fixed a bug checksum table locks the InnoDB table and does not use a
consistent read (Bug #12669).


mysql-test/r/innodb.result:
  Added test results for a checksum test.
mysql-test/t/innodb.test:
  Added test case for a checksum bug #12669.
sql/ha_innodb.cc:
  Use consistent read for checksum table and convert MySQL lock type
  to the TL_READ because at the moment MySQL uses TL_READ_NO_INSERT.
2005-09-28 14:14:49 +03:00
unknown
ce8af21694 Merge 127.(none):/home/osku/mysql/5.0/clean
into  127.(none):/home/osku/mysql/5.0/3443


innobase/dict/dict0dict.c:
  Auto merged
innobase/include/trx0trx.h:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
mysql-test/r/innodb.result:
  Merge fixes.
mysql-test/t/innodb.test:
  Merge fixes.
2005-09-23 16:44:25 +03:00
unknown
e4b0b0d00c Fix bug #3443, better foreign key error messsages.
innobase/dict/dict0dict.c:
  Add 'add_newline' parameter to dict_print_info_on_foreign_key_in_create_format.
innobase/include/dict0dict.h:
  Add 'add_newline' parameter to dict_print_info_on_foreign_key_in_create_format.
innobase/include/os0file.h:
  Add os_file_read_string.
innobase/include/trx0trx.h:
  Add trx_set_detailed_error and trx_set_detailed_error_from_file functions
  and a detailed_error field to trx_struct.
innobase/include/ut0mem.h:
  Add ut_strlcpy.
innobase/os/os0file.c:
  Add os_file_read_string.
innobase/row/row0ins.c:
  Add row_ins_set_detailed function and call it when needed.
  
  Adapt to changes in dict_print_info_on_foreign_key_in_create_format.
innobase/trx/trx0trx.c:
  Add trx_set_detailed_error and trx_set_detailed_error_from_file.
  
  Clear trx->detailed_error in trx_create.
innobase/ut/ut0mem.c:
  Add ut_strlcpy.
mysql-test/r/innodb.result:
  Add new tests, adapt existing ones whose output was changed.
mysql-test/t/innodb.test:
  Add new tests, adapt existing ones whose output was changed.
sql/ha_innodb.cc:
  Add get_error_message.
  
  Clear trx->detailed_error in start_stmt and external_lock.
sql/ha_innodb.h:
  Add get_error_message.
sql/handler.cc:
  Add special case code in print_error for HA_ERR_ROW_IS_REFERENCED and
  HA_ERR_NO_REFERENCED_ROW.
  
  Change SETMSG to point to new error messages.
sql/share/errmsg.txt:
  Add ER_ROW_IS_REFERENCED_2 and ER_NO_REFERENCED_ROW_2.
2005-09-23 16:22:27 +03:00
unknown
8acd0fa422 InnoDB: Minor fixes.
innobase/include/trx0trx.h:
  Fix invalid comment.
sql/ha_innodb.cc:
  Change some memory allocations to fail-on-error.
  
  Cast argument of my_free to gptr, not char*.
2005-09-23 14:31:31 +03:00
unknown
6fbbb1d5be InnoDB: Fix bug #13315, index columns having a maximum length of 767.
innobase/data/data0data.c:
  Adapt to DICT_MAX_COL_PREFIX_LEN rename.
innobase/dict/dict0dict.c:
  Adapt to DICT_MAX_COL_PREFIX_LEN rename.
innobase/include/dict0mem.h:
  Rename DICT_MAX_COL_PREFIX_LEN to DICT_MAX_INDEX_COL_LEN.
innobase/include/row0mysql.h:
  Add field_lengths parameter to row_create_index_for_mysql.
innobase/rem/rem0rec.c:
  Adapt to DICT_MAX_COL_PREFIX_LEN rename.
innobase/row/row0mysql.c:
  Add field_lengths parameter to row_create_index_for_mysql and use it to
  check for too long index columns.
mysql-test/r/innodb.result:
  New tests.
mysql-test/t/innodb.test:
  New tests.
sql/ha_innodb.cc:
  Create temporary field_lengths buffer and pass it to
  row_create_index_for_mysql.
2005-09-23 11:20:34 +03:00
unknown
aa95f0d447 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into  sanja.is.com.ua:/home/bell/mysql/bk/work-owner5-5.0


sql/ha_innodb.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_view.cc:
  Auto merged
sql/item_func.cc:
  merge
2005-09-20 21:27:28 +03:00
unknown
3fe752f527 WL#2787 (Add view definer/owner to the view definition (.frm) to check privileges on used tables and stored routines when using a VIEW.)
Part 2 postreview fixes.


sql/ha_innodb.cc:
  Renamed structure st_security_context to class Security_context
sql/item_func.cc:
  Renamed structure st_security_context to class Security_context
sql/item_strfunc.cc:
  fixed USER() function
sql/log.cc:
  variable used to optimize access to security context
sql/mysql_priv.h:
  Renamed structure st_security_context to class Security_context
sql/mysqld.cc:
  main security context used direcly
sql/sp_head.cc:
  Renamed structure st_security_context to class Security_context
  removed unneed variable
sql/sp_head.h:
  Comment inmroved
  Renamed structure st_security_context to class Security_context
sql/sql_acl.cc:
  Renamed structure st_security_context to class Security_context
  fixed function comment and return value
  variable used to optimize access to security context
  Renamed method of Security_ontext
sql/sql_acl.h:
  fixed return value type
sql/sql_class.cc:
  Renamed structure st_security_context to class Security_context
sql/sql_class.h:
  Renamed structure st_security_context to class Security_context
  Method renamed
sql/sql_db.cc:
  Renamed structure st_security_context to class Security_context
  fixed layout
sql/sql_parse.cc:
  registration of wanted access for underlying tables
sql/sql_show.cc:
  Renamed structure st_security_context to class Security_context
  fixed layout
sql/sql_yacc.yy:
  Renamed structure st_security_context to class Security_context
2005-09-20 21:20:38 +03:00
unknown
fa8fcecb8e Cleanup for handlerton structure to allow for loadable engine work. This is the first in a series of patches.
sql/examples/ha_archive.cc:
  Now declared externally.
sql/examples/ha_example.cc:
  Now declared externally
sql/examples/ha_tina.cc:
  Now declared externally
sql/ha_berkeley.cc:
  Now declared externally
sql/ha_blackhole.cc:
  Now declared externally
sql/ha_federated.cc:
  Now declared externally.
sql/ha_heap.cc:
  Now declared externally.
sql/ha_innodb.cc:
  Now declared externally.
sql/ha_myisam.cc:
  Now declared externally
sql/ha_myisammrg.cc:
  Now declared externally.
sql/ha_ndbcluster.cc:
  Now declared externally.
sql/handler.cc:
  Changes for eventual loadable engines. This will allow us to gain faster access to the handlerton (eventually this will just be a handlteron array).
sql/handler.h:
  New alias structure and change to show_table_st to place handlerton in the structure.
2005-09-19 12:06:23 -07:00
unknown
84f029a448 WL#2787 (part 2, ver 3 (merged)) changed securety context switching
libmysqld/lib_sql.cc:
  changed securety context switching
mysql-test/r/rpl_sp.result:
  now it show real information from changed security context of SP (checked)
sql/ha_innodb.cc:
  changed securety context switching
sql/item.cc:
  changed securety context switching
sql/item_func.cc:
  changed securety context switching
sql/item_strfunc.cc:
  changed securety context switching
sql/log.cc:
  changed securety context switching
sql/mysql_priv.h:
  changed securety context switching
sql/mysqld.cc:
  changed securety context switching
sql/repl_failsafe.cc:
  changed securety context switching
sql/set_var.cc:
  changed securety context switching
sql/slave.cc:
  changed securety context switching
sql/sp.cc:
  changed securety context switching
sql/sp_head.cc:
  changed securety context switching
  in case of inability to switch context  we return error now
sql/sp_head.h:
  changed securety context switching
sql/sql_acl.cc:
  changed securety context switching
sql/sql_acl.h:
  changed securety context switching
sql/sql_base.cc:
  changed securety context switching
sql/sql_class.cc:
  changed securety context switching
sql/sql_class.h:
  changed securety context switching
sql/sql_db.cc:
  changed securety context switching
sql/sql_insert.cc:
  changed securety context switching
sql/sql_parse.cc:
  changed securety context switching
sql/sql_show.cc:
  changed securety context switching
sql/sql_trigger.cc:
  changed securety context switching
sql/sql_view.cc:
  changed securety context switching
sql/sql_yacc.yy:
  changed securety context switching
2005-09-15 22:29:07 +03:00
unknown
2d1c26cc61 InnoDB: Reject foreign keys in temporary tables. Closes bug #12084.
innobase/dict/dict0dict.c:
  Add reject_fks parameter to dict_create_foreign_constraints_low and
  dict_create_foreign_constraints.
innobase/include/dict0dict.h:
  Add reject_fks parameter to dict_create_foreign_constraints.
innobase/include/row0mysql.h:
  Add reject_fks parameter to row_table_add_foreign_constraints.
innobase/row/row0mysql.c:
  Add reject_fks parameter to row_table_add_foreign_constraints.
sql/ha_innodb.cc:
  In create, pass correct reject_fks argument to
  row_table_add_foreign_constraints depending on whether we're creating a
  temporary table or not. Also move duplicated cleanup code to a single
  place.
2005-09-06 14:38:21 +03:00
unknown
c02509b17b row0mysql.c, ha_innodb.cc:
Fix bug #12308 : do not roll back the whhole transaction in a lock wait timeout error, just roll back the latest SQL statement; note that the locks set in the latest SQL statements remain, as InnoDB does not know what locks were set in which SQL statement


sql/ha_innodb.cc:
  Fix bug #12308 : do not roll back the whhole transaction in a lock wait timeout error, just roll back the latest SQL statement; note that the locks set in the latest SQL statements remain, as InnoDB does not know what locks were set in which SQL statement
innobase/row/row0mysql.c:
  Fix bug #12308 : do not roll back the whhole transaction in a lock wait timeout error, just roll back the latest SQL statement; note that the locks set in the latest SQL statements remain, as InnoDB does not know what locks were set in which SQL statement
2005-09-05 01:13:44 +03:00
unknown
d6b70bf4ae ha_innodb.cc:
Better comments about auto-inc and SHOW TABLE STATUS


sql/ha_innodb.cc:
  Better comments about auto-inc and SHOW TABLE STATUS
2005-09-04 13:00:03 +03:00
unknown
53379f982d ha_innodb.cc:
Fix bug #12973 : set the table handle field auto_increment_value if ::info() is called with the flag HA_STATUS_AUTO


sql/ha_innodb.cc:
  Fix bug #12973 : set the table handle field auto_increment_value if ::info() is called with the flag HA_STATUS_AUTO
2005-09-04 12:04:21 +03:00
unknown
bdddd8c089 Merge mysql.com:/home/jimw/my/mysql-4.1-clean
into  mysql.com:/home/jimw/my/mysql-5.0-clean


mysql-test/r/func_gconcat.result:
  Auto merged
mysql-test/t/func_gconcat.test:
  Auto merged
mysql-test/t/system_mysql_db_fix.test:
  Auto merged
ndb/src/kernel/blocks/backup/BackupInit.cpp:
  Auto merged
ndb/src/kernel/blocks/dbacc/Dbacc.hpp:
  Auto merged
ndb/src/kernel/blocks/dbacc/DbaccInit.cpp:
  Auto merged
ndb/src/kernel/blocks/dbacc/DbaccMain.cpp:
  Auto merged
ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
  Auto merged
ndb/src/kernel/blocks/dbdict/Dbdict.hpp:
  Auto merged
ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
  Auto merged
ndb/src/kernel/blocks/dblqh/Dblqh.hpp:
  Auto merged
ndb/src/kernel/blocks/dblqh/DblqhInit.cpp:
  Auto merged
ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
  Auto merged
ndb/src/kernel/blocks/dbtup/Dbtup.hpp:
  Auto merged
ndb/src/kernel/blocks/dbtup/DbtupGen.cpp:
  Auto merged
ndb/src/kernel/blocks/dbtup/DbtupMeta.cpp:
  Auto merged
ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp:
  Auto merged
ndb/src/kernel/vm/SimulatedBlock.cpp:
  Auto merged
ndb/src/kernel/vm/SimulatedBlock.hpp:
  Auto merged
ndb/src/mgmclient/CommandInterpreter.cpp:
  Auto merged
ndb/src/mgmsrv/ConfigInfo.cpp:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
ndb/src/ndbapi/ndberror.c:
  Resolve conflicts
sql/ha_innodb.cc:
  Resolve conflicts
sql/item_strfunc.cc:
  Resolve conflicts
2005-08-31 15:24:06 -07:00
unknown
8510e74765 ha_innodb.cc:
Fix bug #12410 : InnoDB was too permissive with LOCK TABLE ... READ LOCAL, and alowed new inserts to the table; we now make READ LOCAL equivalent to READ for InnoDB; note that this will cause slightly more locking in mysqldump, but makes the InnoDB table dumps consistent with MyISAM table dumps; note that the real code change patch was accidentally pushed with my another patch 5 minutes ago


sql/ha_innodb.cc:
  Fix bug #12410 : InnoDB was too permissive with LOCK TABLE ... READ LOCAL, and alowed new inserts to the table; we now make READ LOCAL equivalent to READ for InnoDB; note that this will cause slightly more locking in mysqldump, but makes the InnoDB table dumps consistent with MyISAM table dumps; note that the real code change patch was accidentally pushed with my another patch 5 minutes ago
2005-08-31 14:27:44 +03:00
unknown
138e44b873 ha_innodb.cc:
Fix bug #12852 : do not increment the open handle count to a table if the table does not have an .ibd file and InnoDB decides to return an error from the ::open() function; then the table can be dropped even if the user has tried to open it


sql/ha_innodb.cc:
  Fix bug #12852 : do not increment the open handle count to a table if the table does not have an .ibd file and InnoDB decides to return an error from the ::open() function; then the table can be dropped even if the user has tried to open it
2005-08-31 14:17:05 +03:00
unknown
a02f8735af ha_innodb.cc:
Reorder out-of-order status variables


sql/ha_innodb.cc:
  Reorder out-of-order status variables
2005-08-30 13:17:50 -05:00
unknown
c12a760ce9 Bug #11946: Review fixes.
sql/ha_innodb.cc:
  Add 'value' parameter to reset_auto_increment.
sql/ha_innodb.h:
  Add 'value' parameter to reset_auto_increment.
sql/handler.h:
  Add 'value' parameter to reset_auto_increment.
sql/mysql_priv.h:
  Add 'reset_auto_increment' parameter to mysql_delete.
sql/sql_delete.cc:
  Add 'reset_auto_increment' parameter to mysql_delete, and use it instead
  of checking for SQLCOM_TRUNCATE.
  
  mysql_truncate: Adapt to changes in mysql_delete.
sql/sql_parse.cc:
  mysql_execute_command: Adapt to changes in mysql_delete.
2005-08-30 12:39:20 +03:00
unknown
d7d3b4cdcb Merge osalerma@bk-internal.mysql.com:/home/bk/mysql-5.0
into  127.(none):/home/osku/mysql-5.0


sql/ha_innodb.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
2005-08-29 09:06:43 +03:00
unknown
0f94385b65 ha_innodb.cc:
Fix typo


sql/ha_innodb.cc:
  Fix typo
2005-08-25 16:57:13 +03:00
unknown
9363d02fbb Merge osalerma@bk-internal.mysql.com:/home/bk/mysql-5.0
into  127.(none):/home/osku/mysql-5.0


sql/ha_innodb.cc:
  Auto merged
2005-08-25 14:15:31 +03:00
unknown
173e5df37f Merge mishka.local:/home/my/mysql-4.1
into  mishka.local:/home/my/mysql-5.0


BitKeeper/etc/ignore:
  auto-union
BitKeeper/deleted/.del-Grep.cpp~ad798e9ae519d667:
  Auto merged
BitKeeper/deleted/.del-Grep.hpp~b05e3af6cfabe387:
  Auto merged
BitKeeper/deleted/.del-ctype_cp932.result:
  Auto merged
BitKeeper/deleted/.del-ctype_cp932.test:
  Auto merged
BitKeeper/deleted/.del-have_lowercase0.inc:
  Delete: mysql-test/include/have_lowercase0.inc
VC++Files/mysql-test/mysql_test_run_new.dsp:
  Auto merged
configure.in:
  Auto merged
mysql-test/include/ps_conv.inc:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/examples/ha_archive.cc:
  Auto merged
sql/examples/ha_example.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
support-files/mysql.spec.sh:
  Auto merged
VC++Files/client/mysqltest.dsp:
  manual merge
VC++Files/sql/mysqld.dsp:
  manual merge
mysql-test/r/grant2.result:
  patch merge
mysql-test/r/subselect2.result:
  manual merge
mysql-test/t/grant2.test:
  patch merge
mysys/charset.c:
  Remove already deleted function
sql/examples/ha_archive.h:
  Manual merge
sql/sql_acl.cc:
  manual merge
sql/sql_db.cc:
  merge (no differences)
sql/sql_select.cc:
  manual merge
sql/table.h:
  merge (no differences)
tests/mysql_client_test.c:
  patch merge
2005-08-25 06:55:48 +03:00
unknown
891740bff5 Merge hundin.mysql.fi:/home/heikki/mysql-4.0
into  hundin.mysql.fi:/home/heikki/mysql-4.1


sql/ha_innodb.cc:
  Auto merged
2005-08-24 17:30:25 +03:00
unknown
4c76d94f2e ha_innodb.cc:
Fix bug #12779 : never give a row count estimate of 0 to the MySQL query optimizer, as then left join optimizer may beleive it KNOWS that the table is empty; note that this fix may change query optimization of many other queries where one table is empty; note that the proper fix would be to make the query optimizer to know that the row count estimates it receives really are just estimates, it cannot assume they are certain


sql/ha_innodb.cc:
  Fix bug #12779 : never give a row count estimate of 0 to the MySQL query optimizer, as then left join optimizer may beleive it KNOWS that the table is empty; note that this fix may change query optimization of many other queries where one table is empty; note that the proper fix would be to make the query optimizer to know that the row count estimates it receives really are just estimates, it cannot assume they are certain
2005-08-24 17:27:46 +03:00
unknown
7d423fed15 Merge osalerma@bk-internal.mysql.com:/home/bk/mysql-5.0
into  127.(none):/home/osku/mysql-5.0


sql/ha_innodb.cc:
  Auto merged
2005-08-17 11:11:50 +03:00
unknown
fa31a9950b Fix bug #11946, truncate not always resetting the auto-increment counter
in InnoDB tables.


mysql-test/r/innodb.result:
  New tests.
mysql-test/t/innodb.test:
  New tests.
sql/ha_innodb.cc:
  Add reset_auto_increment.
sql/ha_innodb.h:
  Add reset_auto_increment.
sql/handler.h:
  Add reset_auto_increment.
sql/sql_delete.cc:
  Call handler->reset_auto_increment when needed.
2005-08-17 11:00:20 +03:00
unknown
97441bb118 Fixed indentations in error and warning messages. 2005-08-16 15:32:41 +03:00
unknown
03e8517cb2 merged
sql/ha_innodb.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2005-08-12 22:58:13 +02:00
unknown
87ae5a1597 BUG#12162 - one can start two transactions with the same XID.
Now we keep all active XID's in a hash
2005-08-12 21:15:01 +02:00
unknown
0cd772782e Merge osalerma@bk-internal.mysql.com:/home/bk/mysql-5.0
into  127.(none):/home/osku/mysql-5.0


innobase/srv/srv0srv.c:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
2005-08-12 11:40:02 +03:00
unknown
babc9f5d2b InnoDB: Print more than 300 characters of queries in various error conditions,
most notably deadlocked ones in SHOW INNODB STATUS. Fixes bug #7819.


innobase/btr/btr0pcur.c:
  Adapt to changes in trx_print.
innobase/include/trx0trx.h:
  Add max_query_len parameter to trx_print.
innobase/lock/lock0lock.c:
  Adapt to changes in trx_print.
innobase/row/row0ins.c:
  Adapt to changes in trx_print.
innobase/row/row0sel.c:
  Adapt to changes in trx_print.
innobase/row/row0umod.c:
  Adapt to changes in trx_print.
innobase/row/row0upd.c:
  Adapt to changes in trx_print.
innobase/srv/srv0srv.c:
  Adapt to changes in trx_print.
innobase/trx/trx0trx.c:
  Add max_query_len parameter to trx_print.
sql/ha_innodb.cc:
  Add max_query_len parameter to innobase_mysql_print_thd.
2005-08-12 11:39:19 +03:00
unknown
4eacb83d65 Merge bk-internal:/home/bk/mysql-5.0
into quadxeon.mysql.com:/users/vtkachenko/bk/mysql-5.0-tmp


sql/ha_innodb.cc:
  Auto merged
2005-08-11 20:19:28 +02:00
unknown
1d3d9ec13f Fixed some warning and error messages so that they use
sql_print_warning() and sql_print_error() instead of fprintf to stderr.
Above functions are tuned for different platforms so that the behavior
is consistent around platforms. Using fprintf() different behavior can
be expected at least on Windows and Unix.
2005-08-11 19:19:20 +03:00
unknown
8158bb033d set_var.cc, mysqld.cc, ha_innodb.h, ha_innodb.cc, srv0srv.c, srv0srv.h:
Added innodb_commit_concurrency variable


innobase/include/srv0srv.h:
  Added innodb_commit_concurrency variable
innobase/srv/srv0srv.c:
  Added innodb_commit_concurrency variable
sql/ha_innodb.cc:
  Added innodb_commit_concurrency variable
sql/ha_innodb.h:
  Added innodb_commit_concurrency variable
sql/mysqld.cc:
  Added innodb_commit_concurrency variable
sql/set_var.cc:
  Added innodb_commit_concurrency variable
2005-08-11 18:03:01 +02:00
unknown
6861b1bf9b A fix and a test case for Bug#12243 "MySQL Server crashes with 2
cursors (+ commit)" and Bug#11832 "Server crash with InnoDB + Cursors"
See comments to the changed files.


innobase/include/read0read.h:
  - add cursor_view_t::n_mysql_tables_in_use
innobase/read/read0read.c:
  - maintain cursor_view_t::n_mysql_tables_in_use. InnoDB
  maintains trx->n_mysql_tables_in_use to know when it can auto-commit
  a read-only statement. When this count drops to zero,
  MySQL has ended processing of such statement and InnoDB can commit.
  Cursors should not break this invariant, and should exclude the tables
  used in a cursor from the count of active tables.
  When a cursor is closed, the number of its tables is added back, 
  to ensure that close_thread_tables->unlock_external->
  ha_innobase::external_lock(F_UNLCK) won't drop the count in trx 
  below zero.
innobase/row/row0sel.c:
  - remove the restoration of the global read view from 
  row_search_for_mysql: MySQL may call row_search_for_mysql
  more than once when fetching a row for a cursor (e.g. if there
  is a WHERE clause that filters out some rows).
sql/ha_innodb.cc:
  - add more verbose printout for the case when we close an InnoDB
  connection without priorlly issuing a commit or rollback. The problem
  should be investigated.
tests/mysql_client_test.c:
  - add a test case for Bug#12243 "MySQL Server crashes with 2 cursors 
  (+ commit)"
2005-08-10 18:36:13 +04:00
unknown
71a8b11ff2 Fix bug #12340 Wrong comparison in ha_innobase::cmp_ref()
When PRIMARY KEY is present ha_innobase::cmp_ref() uses it to compare refs.
After comparing part of key it moves pointers to compare next part.
For varchar parts pointers were moved only by length of parts, not including
bytes containig part length itself. This results in wrong comparision and
wrong number of deleted records.



sql/ha_innodb.cc:
  Fix bug #12340  ha_innobase::cmp_ref() moves pointers by wrong length.
mysql-test/t/innodb.test:
  Test case for bug #12340 ha_innobase::cmp_ref() moves pointers by wrong length.
mysql-test/r/innodb.result:
  Test case for bug #12340 ha_innobase::cmp_ref() moves pointers by wrong length.
2005-08-09 22:05:07 +04:00
unknown
c4228519a6 Fixed test that failed on 32 bit systems
sql/ha_innodb.cc:
  Don't print not critical warning if log_warnings is not set
  Use sql_print_warning() instead of fprintf().
  (We should not use fprintf() as this causes problems on windows and with the embedded server)
2005-08-09 11:21:45 +03:00
unknown
807a9c8dff ha_innodb.cc:
Add a forgotten newline to a print


sql/ha_innodb.cc:
  Add a forgotten newline to a print
2005-08-08 21:43:08 +03:00
unknown
1bdc18b909 ha_innodb.cc:
Fix compilation error in the fix of Bug #12263


sql/ha_innodb.cc:
  Fix compilation error in the fix of Bug #12263
2005-08-03 18:53:22 +03:00
unknown
076c375ab5 ha_innodb.cc:
Fix compilation error in previous commit


sql/ha_innodb.cc:
  Fix compilation error in previous commit
2005-08-03 18:47:50 +03:00
unknown
43b1710c51 ha_innodb.cc:
Backport of Bug #9670 to 4.0: assertion failure in ut_a(cursor->old_stored == BTR_PCUR_OLD_STORED)


sql/ha_innodb.cc:
  Backport of Bug #9670 to 4.0: assertion failure in ut_a(cursor->old_stored == BTR_PCUR_OLD_STORED)
2005-08-03 18:11:55 +03:00
unknown
a8bb376fc7 Many files:
Push the patch of Jan Lindstrom: better comments
ha_innodb.cc:
  Partial fix for Bug #12263 : we let InnoDB always to perform a rollback on the trx object if MySQL closes a connection; but we do print a warning to the .err log if an InnoDB transaction was active; we may remove that print later, since the situation really is not a bug; MySQL just is not aware that some cursor operation started an InnoDB transaction


sql/ha_innodb.cc:
  Partial fix for Bug #12263 : we let InnoDB always to perform a rollback on the trx object if MySQL closes a connection; but we do print a warning to the .err log if an InnoDB transaction was active; we may remove that print later, since the situation really is not a bug; MySQL just is not aware that some cursor operation started an InnoDB transaction
sql/ha_innodb.h:
  Push the patch of Jan Lindstrom: better comments
innobase/trx/trx0trx.c:
  Push the patch of Jan Lindstrom: better comments
innobase/srv/srv0srv.c:
  Push the patch of Jan Lindstrom: better comments
innobase/srv/srv0start.c:
  Push the patch of Jan Lindstrom: better comments
innobase/row/row0sel.c:
  Push the patch of Jan Lindstrom: better comments
innobase/read/read0read.c:
  Push the patch of Jan Lindstrom: better comments
innobase/include/read0read.h:
  Push the patch of Jan Lindstrom: better comments
innobase/include/trx0trx.h:
  Push the patch of Jan Lindstrom: better comments
2005-08-03 17:09:21 +03:00
unknown
5ce4ee3d65 [Patch from Konstantin] Enable InnoDB cursor view functionality. 2005-07-29 00:32:03 +00:00
unknown
6fd13aaa3c Implement MySQL framework to support consistent read views in
cursors for InnoDB. The idea of the patch is that if MySQL requests
a consistent read view, we open one when open a cursor, set is as the
active view to a transaction when fetch from the cursor, and close
together with cursor close. This patch is associated to bugs #11813, 
#11832, and #11833. Contains after review fixes.
2005-07-22 14:10:03 +03:00
unknown
ec55fec92d Implement MySQL framework to support consistent read views in
cursors. This should fix Bug#11813 when InnoDB part is in 
(tested with a draft patch).
The idea of the patch is that if a storage engine supports
consistent read views, we open one when open a cursor,
set is as the active view when fetch from the cursor, and close
together with cursor close.


sql/examples/ha_archive.cc:
  - extend handlerton with cursors methods; fix coding style
sql/examples/ha_example.cc:
  - extend handlerton with cursors methods; fix coding style
sql/examples/ha_tina.cc:
  - extend handlerton with cursors methods; fix coding style
sql/ha_berkeley.cc:
  - extend handlerton with cursors methods
sql/ha_blackhole.cc:
  - extend handlerton with cursors methods; fix coding style
sql/ha_federated.cc:
  - extend handlerton with cursors methods; fix coding style
sql/ha_heap.cc:
  - extend handlerton with cursors methods; fix coding style
sql/ha_innodb.cc:
  - extend handlerton with cursors methods
sql/ha_myisam.cc:
  - extend handlerton with cursors methods; fix coding style
sql/ha_myisammrg.cc:
  - extend handlerton with cursors methods; fix coding style
sql/ha_ndbcluster.cc:
  - extend handlerton with cursors methods
sql/handler.h:
  - extend handlerton with cursors methods
sql/sql_select.cc:
  - create a consistent read view when we open a cursor,
    set it for a fetch, and free when we closing the cursor.
sql/sql_select.h:
  - add Cursor::ht_info to remember read views used in a cursor.
tests/mysql_client_test.c:
  Disable an assert that will be no longer valid when consistent
  read views in InnoDB are used.
2005-07-20 20:02:36 +04:00