An error occurred fetching the project authors.
- 25 Aug, 2005 1 commit
-
-
unknown authored
Fix typo sql/ha_innodb.cc: Fix typo
-
- 24 Aug, 2005 1 commit
-
-
unknown authored
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
-
- 17 Aug, 2005 1 commit
-
-
unknown authored
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.
-
- 16 Aug, 2005 1 commit
-
-
unknown authored
-
- 12 Aug, 2005 2 commits
-
-
unknown authored
Now we keep all active XID's in a hash
-
unknown authored
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.
-
- 11 Aug, 2005 2 commits
-
-
unknown authored
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.
-
unknown authored
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
-
- 10 Aug, 2005 1 commit
-
-
unknown authored
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)"
-
- 09 Aug, 2005 2 commits
-
-
unknown authored
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.
-
unknown authored
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)
-
- 08 Aug, 2005 1 commit
-
-
unknown authored
Add a forgotten newline to a print sql/ha_innodb.cc: Add a forgotten newline to a print
-
- 03 Aug, 2005 4 commits
-
-
unknown authored
Fix compilation error in the fix of Bug #12263 sql/ha_innodb.cc: Fix compilation error in the fix of Bug #12263
-
unknown authored
Fix compilation error in previous commit sql/ha_innodb.cc: Fix compilation error in previous commit
-
unknown authored
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)
-
unknown authored
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
-
- 29 Jul, 2005 1 commit
-
-
unknown authored
-
- 22 Jul, 2005 1 commit
-
-
unknown authored
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.
-
- 20 Jul, 2005 1 commit
-
-
unknown authored
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.
-
- 19 Jul, 2005 1 commit
-
-
unknown authored
The idea of the patch is that every cursor gets its own lock id for table level locking. Thus cursors are protected from updates performed within the same connection. Additionally a list of transient (must be closed at commit) cursors is maintained and all transient cursors are closed when necessary. Lastly, this patch adds support for deadlock timeouts to TLL locking when using cursors. + post-review fixes. include/thr_lock.h: - add a notion of lock owner to table level locking. When using cursors, lock owner can not be identified by a thread id any more, as we must protect cursors from updates issued within the same connection (thread). So, each cursor has its own lock identifier to use with table level locking. - extend return values of thr_lock and thr_multi_lock with THR_LOCK_TIMEOUT and THR_LOCK_DEADLOCK, since these conditions are now possible (see comments to thr_lock.c) mysys/thr_lock.c: Better support for cursors: - use THR_LOCK_OWNER * as lock identifier, not pthread_t. - check and return an error for a trivial deadlock case, when an update statement is issued to a table locked by a cursor which has been previously opened in the same connection. - add support for locking timeouts: with use of cursors, trivial deadlocks can occur. For now the only remedy is the lock wait timeout, which is initialized from a new global variable 'table_lock_wait_timeout' Example of a deadlock (assuming the storage engine does not downgrade locks): con1: open cursor for select * from t1; con2: open cursor for select * from t2; con1: update t2 set id=id*2; -- blocked con2: update t1 set id=id*2; -- deadlock Lock timeouts are active only if a connection is using cursors. - the check in the wait_for_lock loop has been changed from data->cond != cond to data->cond != 0. data->cond is zeroed in every place it's changed. - added comments sql/examples/ha_archive.cc: - extend the handlerton with the info about cursor behaviour at commit. sql/examples/ha_archive.h: - ctor moved to .cc to make use of archive handlerton sql/examples/ha_example.cc: - add handlerton instance, init handler::ht with it sql/examples/ha_example.h: - ctor moved to .cc to make use of ha_example handlerton sql/examples/ha_tina.cc: - add handlerton instance, init handler::ht with it sql/examples/ha_tina.h: - ctor moved to .cc to make use of CSV handlerton sql/ha_berkeley.cc: - init handlerton::flags and handler::ht sql/ha_berkeley.h: - ctor moved to .cc to make use of BerkeleyDB handlerton sql/ha_blackhole.cc: - add handlerton instance, init handler::ht with it sql/ha_blackhole.h: - ctor moved to .cc to make use of blackhole handlerton sql/ha_federated.cc: - add handlerton instance, init handler::ht with it sql/ha_federated.h: - ctor moved to .cc to make use of federated handlerton sql/ha_heap.cc: - add handlerton instance, init handler::ht with it sql/ha_heap.h: - ctor moved to .cc to make use of ha_heap handlerton sql/ha_innodb.cc: - init handlerton::flags and handler::ht of innobase storage engine sql/ha_innodb.h: - ctor moved to .cc to make use of archive handlerton sql/ha_myisam.cc: - add handlerton instance, init handler::ht with it sql/ha_myisam.h: - ctor moved to .cc to make use of MyISAM handlerton sql/ha_myisammrg.cc: - init handler::ht in the ctor sql/ha_myisammrg.h: - ctor moved to .cc to make use of MyISAM MERGE handlerton sql/ha_ndbcluster.cc: - init handlerton::flags and handler::ht sql/handler.cc: - drop support for ISAM storage engine, which was removed from 5.0 - close all "transient" cursors at COMMIT/ROLLBACK. A "transient" SQL level cursor is a cursor that uses tables that have a transaction- specific state. sql/handler.h: - extend struct handlerton with flags, add handlerton *ht to every handler instance. sql/lock.cc: - extend mysql_lock_tables to send error to the client if thr_multi_lock returns a timeout or a deadlock error. sql/mysqld.cc: - add server option --table_lock_wait_timeout (in seconds) sql/set_var.cc: - add new global variable 'table_lock_wait_timeout' to specify a wait timeout for table-level locks of MySQL (in seconds). The default timeout is 50 seconds. The timeout is active only if the connection has open cursors. sql/sql_class.cc: - implement Statement_map::close_transient_cursors - safety suggests that we need an assert ensuring llock_info->n_cursors is functioning properly, adjust destruction of the Statement_map to allow such assert in THD::~THD sql/sql_class.h: - add support for Cursors registry to Statement map. sql/sql_prepare.cc: - maintain a list of cursors that must be closed at commit/rollback. sql/sql_select.cc: - extend class Cursor to support specific at-COMMIT/ROLLBACK behavior. If a cursor uses tables of a storage engine that invalidates all open tables at COMMIT/ROLLBACK, it must be closed before COMMIT/ROLLBACK is executed. sql/sql_select.h: - add an own lock_id and commit/rollback status flag to class Cursor tests/mysql_client_test.c: A test case for Bug#10760 and complementary issues: test a simple deadlock case too. mysql-test/var: New BitKeeper file ``mysql-test/var''
-
- 18 Jul, 2005 1 commit
-
-
unknown authored
Changed defaults option --instance to --defaults-group-suffix Changed option handling to allow --defaults-file, --defaults-extra-file and --defaults-group-suffix to be given in any order Changed MYSQL_INSTANCE to MYSQL_GROUP_SUFFIX mysql_print_defaults now understands --defaults-group-suffix Remove usage of my_tempnam() (not safe function) if( -> if ( and while( to while ( BitKeeper/deleted/.del-my_tempnam.c~a8562f15dad3012f: Delete: mysys/my_tempnam.c VC++Files/client/mysqlclient.dsp: Remove not used file my_tempnam.c VC++Files/client/mysqlclient_ia64.dsp: Remove not used file my_tempnam.c VC++Files/libmysql/libmysql.dsp: Remove not used file my_tempnam.c VC++Files/libmysql/libmysql_ia64.dsp: Remove not used file my_tempnam.c VC++Files/mysys/mysys.dsp: Remove not used file my_tempnam.c VC++Files/mysys/mysys_ia64.dsp: Remove not used file my_tempnam.c client/mysql.cc: Change to use get_defaults_options() Remove compiler warnings client/mysqldump.c: Indentation fixes Use quoted table name for 'primary_key_fields' extra/my_print_defaults.c: Add support for --defaults-group-suffix change to use get_default_options() extra/replace.c: Replace my_tempnam() with create_tmp_file() to allow us to remove my_tempnam.c include/config-win.h: Added DEFAULT_GROUP_SUFFIX_ENV include/my_sys.h: Change defaults_instance -> defaults_group_suffix Change get_defaults_files -> get_defaults_options libmysql/Makefile.shared: Added DEFAULT_GROUP_SUFFIX_ENV mysys/Makefile.am: Added DEFAULT_GROUP_SUFFIX_ENV Remove my_tempnam.c mysys/default.c: Changed --instance to --defaults-group-suffix Changed MYSQL_INSTANCE to MYSQL_GROUP_SUFFIX and moved the name to Makefile.am (mysys shouldn't by MySQL independent) Changed option handling to allow --defaults-file, --defaults-extra-file and --defaults-group-suffix to be given in any order mysys/default_modify.c: Optimized code to use allocated space more efficently Reduce code size Ensure that realloc() works independent of argument size mysys/my_bitmap.c: Added missing return sql/ha_innodb.cc: Change if( -> if ( sql/ha_ndbcluster.cc: Change while( -> while ( sql/item_cmpfunc.cc: Break loop early (simple optimization) sql/item_strfunc.cc: Change if( -> if ( sql/log.cc: Fixed comment sql/mysqld.cc: Change if( -> if ( sql/opt_range.cc: while( -> while ( if( -> if ( sql/parse_file.cc: Change if( -> if ( sql/sql_cache.cc: while( -> while ( sql/sql_parse.cc: Change if( -> if ( sql/sql_prepare.cc: Added comment sql/sql_select.cc: while( -> while ( Removed index variable by incrementing pointer sql/sql_show.cc: Change if( -> if ( sql/sql_yacc.yy: Change if( -> if ( tests/mysql_client_test.c: Added cast to first argument to bzero()
-
- 06 Jul, 2005 1 commit
-
-
unknown authored
innobase/include/srv0srv.h: Define SRV_CONCURRENCY_THRESHOLD innobase/srv/srv0srv.c: Remove srv_thread_concurrency check from srv_conc_enter_innodb() and srv_conc_exit_innodb(), as the check is in the (only) caller of these functions, in ha_innodb.cc. srv_conc_force_enter_innodb(), srv_conc_force_exit_innodb(): Check for srv_thread_concurrency >= SRV_CONCURRENCY_THRESHOLD sql/ha_innodb.cc: Make use of SRV_CONCURRENCY_THRESHOLD
-
- 01 Jul, 2005 2 commits
-
-
unknown authored
Fix Bug #3300 : if innodb_locks_unsafe_for_binlog is set, release locks on rows that we do not UPDATE or DELETE sql/ha_innodb.cc: Fix Bug #3300 : if innodb_locks_unsafe_for_binlog is set, release locks on rows that we do not UPDATE or DELETE innobase/row/row0mysql.c: Fix Bug #3300 : if innodb_locks_unsafe_for_binlog is set, release locks on rows that we do not UPDATE or DELETE innobase/row/row0sel.c: Fix Bug #3300 : if innodb_locks_unsafe_for_binlog is set, release locks on rows that we do not UPDATE or DELETE innobase/include/trx0trx.ic: Fix Bug #3300 : if innodb_locks_unsafe_for_binlog is set, release locks on rows that we do not UPDATE or DELETE innobase/include/row0mysql.h: Fix Bug #3300 : if innodb_locks_unsafe_for_binlog is set, release locks on rows that we do not UPDATE or DELETE innobase/include/trx0trx.h: Fix Bug #3300 : if innodb_locks_unsafe_for_binlog is set, release locks on rows that we do not UPDATE or DELETE innobase/lock/lock0lock.c: Fix Bug #3300 : if innodb_locks_unsafe_for_binlog is set, release locks on rows that we do not UPDATE or DELETE innobase/trx/trx0trx.c: Fix Bug #3300 : if innodb_locks_unsafe_for_binlog is set, release locks on rows that we do not UPDATE or DELETE
-
unknown authored
sql/ha_innodb.cc: build_template(): Optimize (and make more readable) the conditions for skipping or including a field.
-
- 29 Jun, 2005 1 commit
-
-
unknown authored
Let InnoDB use a consistent read when it initializes the auto-inc counter for a table: this will eliminate spurious deadlocks, but will ignore an UPDATE if that happens at the same time that we init the auto-inc counter; this has to be documented; this path also fixes most of Bug #11633, but not all: if ::external_lock() is not called on the table in SHOW TABLE STATUS, that might cause a crash if someone simultaneously DROPs the table sql/ha_innodb.cc: Let InnoDB use a consistent read when it initializes the auto-inc counter for a table: this will eliminate spurious deadlocks, but will ignore an UPDATE if that happens at the same time that we init the auto-inc counter; this has to be documented; this path also fixes most of Bug #11633, but not all: if ::external_lock() is not called on the table in SHOW TABLE STATUS, that might cause a crash if someone simultaneously DROPs the table
-
- 21 Jun, 2005 1 commit
-
-
unknown authored
innobase/log/log0recv.c: Remove GCC 4.0.0 warnings about possibly uninitialized variables. innobase/row/row0umod.c: row_undo_mod_undo_also_prev_vers(): Remove unused parameter thr, always initialize *undo_no to remove GCC 4.0.0 warning innobase/trx/trx0undo.c: trx_undo_write_xid(): Remove warning about signedness mismatch, add const qualifier to parameter xid. sql/ha_innodb.cc: Add proper casts from ulonglong to ulong in fprintf statements.
-
- 13 Jun, 2005 1 commit
-
-
unknown authored
Add a patch by Georg Richter to remove compiler warnings on 64-bit Windows sql/ha_innodb.cc: Add a patch by Georg Richter to remove compiler warnings on 64-bit Windows
-
- 08 Jun, 2005 1 commit
-
-
unknown authored
Since UNLOCK TABLES will commit the transaction (and thus release all InnoDB locks held by it), it is unnecessary to release the user-requested table locks separately. innobase/include/lock0lock.h: Remove references to LOCK_TABLE_EXP and LOCK_TABLE_TRANSACTIONAL. Remove lock_release_tables_off_kernel(). innobase/include/row0mysql.h: Remove row_unlock_tables_for_mysql(). innobase/include/trx0trx.h: Remove n_lock_table_exp and n_lock_table_transactional. innobase/lock/lock0lock.c: Remove references to LOCK_TABLE_EXP and LOCK_TABLE_TRANSACTIONAL. Remove lock_release_tables_off_kernel(). Remove references to trx->n_lock_table_exp and trx->n_lock_table_transactional. innobase/row/row0mysql.c: Remove row_unlock_tables_for_mysql(). Remove references to LOCK_TABLE_TRANSACTIONAL and LOCK_TABLE_EXP. innobase/trx/trx0trx.c: Remove n_lock_table_exp and n_lock_table_transactional. sql/ha_innodb.cc: Remove references to LOCK_TABLE_EXP and LOCK_TABLE_TRANSACTIONAL and row_unlock_tables_for_mysql().
-
- 07 Jun, 2005 1 commit
-
-
unknown authored
Update the InnoDB internal auto-inc counter in ::write_row() if the statement is a REPLACE that fails in a duplicate key error: REPLACE will handle duplicate key error, and the insert will eventually succeed; note that we did NOT change InnoDB's behavior in an UPDATE, because updating the auto-inc counter in an UPDATE would require a bigger patch (Bug #11005) sql/ha_innodb.cc: Update the InnoDB internal auto-inc counter in ::write_row() if the statement is a REPLACE that fails in a duplicate key error: REPLACE will handle duplicate key error, and the insert will eventually succeed; note that we did NOT change InnoDB's behavior in an UPDATE, because updating the auto-inc counter in an UPDATE would require a bigger patch (Bug #11005)
-
- 05 Jun, 2005 1 commit
-
-
unknown authored
'#pragma interface' (that comes with the #include'd header file)
-
- 03 Jun, 2005 1 commit
-
-
unknown authored
Ensure that 'null_value' is not accessed before val() is called in FIELD() functions Fixed initialization of key maps. This fixes some problems with keys when you have more than 64 keys Fixed that ROLLUP don't always create a temporary table. This fix ensures that func_gconcat.test results are now predictable mysql-test/r/func_gconcat.result: Move innodb specific test to innodb.test Changed table name r2 -> t2 More test to see how ROLLUP was optimized mysql-test/r/innodb.result: Moved test here form func_gconcat mysql-test/r/olap.result: New test results after optimization mysql-test/t/func_gconcat.test: Move innodb specific test to innodb.test Changed table name r2 -> t2 More test to see how ROLLUP was optimized mysql-test/t/innodb.test: Moved test here form func_gconcat sql/field.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/ha_berkeley.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/ha_blackhole.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/ha_heap.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/ha_innodb.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/ha_isam.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/ha_isammrg.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/ha_myisam.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/ha_myisammrg.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/ha_ndbcluster.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/handler.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/hash_filo.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/item.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/item_cmpfunc.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/item_func.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place Ensure that 'null_value' is not accessed before val() is called sql/item_geofunc.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/item_strfunc.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/item_subselect.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/item_sum.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/item_timefunc.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/item_uniq.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/log_event.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/mysql_priv.h: Change key_map_full to not be const as we are giving it a proper value on startup sql/mysqld.cc: Move key_map variables here and initialize key_map_full properly sql/opt_range.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/opt_range.h: Fix that test_quick_select() works with any ammount of keys sql/procedure.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/protocol.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/protocol_cursor.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/set_var.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/sql_analyse.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/sql_class.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/sql_crypt.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/sql_insert.cc: Fixed that max_rows is ulong sql/sql_list.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/sql_map.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/sql_olap.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/sql_select.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place Fixed that ROLLUP don't have to always create a temporary table Added new argument to remove_const() to make above possible Fixed some errors that creapt up when we don't always do a temporary table for ROLLUP sql/sql_string.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/sql_table.cc: Simple optimizations Fixed wrong checking of build_table_path() in undef-ed code sql/sql_udf.cc: Move USE_PRAGMA_IMPLEMENTATION to proper place sql/sql_yacc.yy: removed extra {}
-
- 02 Jun, 2005 2 commits
-
-
unknown authored
Weaken InnoDB table locking at the start of a stored procedure call: this will make multi-transaction stored procedures less deterministic for binlogging, but since they are non-deterministic anyway, it is not that bad; this fix will remove the huge amount of InnoDB tranasctional deadlocks caused by table locking at the start of a stored procedure sql/ha_innodb.cc: Weaken InnoDB table locking at the start of a stored procedure call: this will make multi-transaction stored procedures less deterministic for binlogging, but since they are non-deterministic anyway, it is not that bad; this fix will remove the huge amount of InnoDB tranasctional deadlocks caused by table locking at the start of a stored procedure
-
unknown authored
Set #pragma implementation" earlier Many files: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION client/sql_string.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION mysys/raid.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/field.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/ha_berkeley.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/ha_blackhole.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/ha_heap.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/ha_innodb.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/ha_isam.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/ha_isammrg.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/ha_myisam.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/ha_myisammrg.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/ha_ndbcluster.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/handler.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/hash_filo.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/item.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/item_cmpfunc.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/item_func.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/item_geofunc.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/item_strfunc.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/item_subselect.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/item_sum.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/item_timefunc.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/item_uniq.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/log_event.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/opt_range.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/procedure.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/protocol.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/protocol_cursor.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/set_var.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/sql_analyse.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/sql_class.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/sql_crypt.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/sql_list.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/sql_map.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/sql_olap.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/examples/ha_archive.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/sql_select.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/sql_string.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/sql_udf.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/examples/ha_example.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/examples/ha_tina.cc: Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION sql/tztime.cc: Set #pragma implementation" earlier
-
- 27 May, 2005 2 commits
- 26 May, 2005 1 commit
-
-
unknown authored
Added some more ifdefs for "#pragma interface" client/sql_string.cc: USE_PRAGMA_IMPLEMENTATION client/sql_string.h: USE_PRAGMA_INTERFACE include/my_global.h: Use pragma implementation for gcc pre version 3 mysys/raid.cc: USE_PRAGMA_IMPLEMENTATION sql/field.cc: USE_PRAGMA_IMPLEMENTATION sql/ha_berkeley.cc: USE_PRAGMA_IMPLEMENTATION sql/ha_blackhole.cc: USE_PRAGMA_IMPLEMENTATION sql/ha_heap.cc: USE_PRAGMA_IMPLEMENTATION sql/ha_innodb.cc: USE_PRAGMA_IMPLEMENTATION sql/ha_isam.cc: USE_PRAGMA_IMPLEMENTATION sql/ha_isammrg.cc: USE_PRAGMA_IMPLEMENTATION sql/ha_myisam.cc: USE_PRAGMA_IMPLEMENTATION sql/ha_myisammrg.cc: USE_PRAGMA_IMPLEMENTATION sql/ha_ndbcluster.cc: USE_PRAGMA_IMPLEMENTATION sql/handler.cc: USE_PRAGMA_IMPLEMENTATION sql/hash_filo.cc: USE_PRAGMA_IMPLEMENTATION sql/item.cc: USE_PRAGMA_IMPLEMENTATION sql/item_cmpfunc.cc: USE_PRAGMA_IMPLEMENTATION sql/item_func.cc: USE_PRAGMA_IMPLEMENTATION sql/item_geofunc.cc: USE_PRAGMA_IMPLEMENTATION sql/item_strfunc.cc: USE_PRAGMA_IMPLEMENTATION sql/item_subselect.cc: USE_PRAGMA_IMPLEMENTATION sql/item_sum.cc: USE_PRAGMA_IMPLEMENTATION sql/item_timefunc.cc: USE_PRAGMA_IMPLEMENTATION sql/item_uniq.cc: USE_PRAGMA_IMPLEMENTATION sql/item_uniq.h: USE_PRAGMA_INTERFACE sql/log_event.cc: USE_PRAGMA_IMPLEMENTATION sql/log_event.h: USE_PRAGMA_INTERFACE sql/opt_range.cc: USE_PRAGMA_IMPLEMENTATION sql/procedure.cc: USE_PRAGMA_IMPLEMENTATION sql/protocol.cc: USE_PRAGMA_IMPLEMENTATION sql/protocol_cursor.cc: USE_PRAGMA_IMPLEMENTATION sql/set_var.cc: USE_PRAGMA_IMPLEMENTATION sql/sql_analyse.cc: USE_PRAGMA_IMPLEMENTATION sql/sql_analyse.h: USE_PRAGMA_INTERFACE sql/sql_class.cc: USE_PRAGMA_IMPLEMENTATION sql/sql_crypt.cc: USE_PRAGMA_IMPLEMENTATION sql/sql_crypt.h: USE_PRAGMA_IMPLEMENTATION sql/sql_list.cc: USE_PRAGMA_IMPLEMENTATION sql/sql_map.cc: USE_PRAGMA_IMPLEMENTATION sql/sql_map.h: USE_PRAGMA_INTERFACE sql/sql_olap.cc: USE_PRAGMA_IMPLEMENTATION sql/sql_select.cc: USE_PRAGMA_IMPLEMENTATION sql/sql_string.cc: USE_PRAGMA_IMPLEMENTATION sql/sql_udf.cc: USE_PRAGMA_IMPLEMENTATION sql/tztime.cc: USE_PRAGMA_IMPLEMENTATION
-
- 21 May, 2005 1 commit
-
-
unknown authored
The natural InnoDB type for NEWDECIMAL is FIXBINARY, not BINARY, since there probably is no benefit from stripping trailing bytes 0x20; note that tables created with 5.0.6 and containing DECIMAL do not need to be rebuilt, as BINARY works as well; note that because of Jani's fix to bug 10465, tables created with 5.0.? - 5.0.5 DO NEED TO BE REBUILT if they contain DECIMAL sql/ha_innodb.cc: The natural InnoDB type for NEWDECIMAL is FIXBINARY, not BINARY, since there probably is no benefit from stripping trailing bytes 0x20; note that tables created with 5.0.6 and containing DECIMAL do not need to be rebuilt, as BINARY works as well; note that because of Jani's fix to bug 10465, tables created with 5.0.? - 5.0.5 DO NEED TO BE REBUILT if they contain DECIMAL
-
- 17 May, 2005 2 commits
-
-
unknown authored
Fix bug #10359 : remove extra code sql/ha_innodb.cc: Fix bug #10359 : remove extra code
-
unknown authored
Fix bug #10359 : the critical AUTO-INC bug in InnoDB; since reading of the auto-inc counter in an INSERT was not protected by the AUTO-INC table lock of InnoDB, two inserted rows could get the same value for the auto-inc counter, leading to a duplicate key error sql/ha_innodb.cc: Fix bug #10359 : the critical AUTO-INC bug in InnoDB; since reading of the auto-inc counter in an INSERT was not protected by the AUTO-INC table lock of InnoDB, two inserted rows could get the same value for the auto-inc counter, leading to a duplicate key error sql/ha_innodb.h: Fix bug #10359 : the critical AUTO-INC bug in InnoDB; since reading of the auto-inc counter in an INSERT was not protected by the AUTO-INC table lock of InnoDB, two inserted rows could get the same value for the auto-inc counter, leading to a duplicate key error
-
- 06 May, 2005 1 commit
-
-
unknown authored
Added option --count to mysqlshow (to show number of rows) Fixed possible core dump in information schema client/client_priv.h: --count for mysqlshow client/mysqlshow.c: Added option --count to be used when the user want's number of rows per table in the output (We shouldn't use count(*) as default as this can be a slow operation) mysys/my_thr_init.c: Correct comment sql/ha_berkeley.cc: Remove not used variable sql/ha_berkeley.h: Remove not used variable sql/ha_innodb.cc: Remove not used function sql/ha_ndbcluster.cc: false -> FALSE true -> TRUE sql/handler.cc: Added and fixed comments Remove 'strange' code to remove compiler warnings (better to do things like this with attribute) sql/item.cc: false -> FALSE sql/item_cmpfunc.cc: Fixed indentation sql/item_cmpfunc.h: marked BETWEEN as a bool function sql/item_func.cc: Simple optimzation sql/key.cc: Removed wrong code sql/log.cc: Check result from open_index_file() sql/mysql_priv.h: Simplyfy some test of netware sql/mysqld.cc: Fixed indentation Check result form open_index_file() Simplify code with IF_NETWARE() sql/opt_range.cc: false -> FALSE true -> TRUE Fixed indentation sql/opt_sum.cc: Fixed comments sql/sp_head.cc: Simple optimzation Move variable declarations to begining of blocks sql/sql_acl.cc: Fix long lines Rename xx -> column Move declaration to beginning of block sql/sql_parse.cc: Removed comment sql/sql_select.cc: Indentation fixes sql/sql_show.cc: Fixed reference outside of array (possible core dump) sql/sql_table.cc: Simplify code Combine common code sql/sql_test.cc: false -> FALSE sql/sql_trigger.cc: false -> false true -> TRUE sql/sql_yacc.yy: Simpler test sql/unireg.cc: Added comment
-