Commit graph

253 commits

Author SHA1 Message Date
unknown
35209c68ea Fixed bug#12185: Data type aggregation may produce wrong result
The Item::tmp_table_field_from_field_type() function creates Field_datetime
object instead of Field_timestamp object for timestamp field thus always
changing data type is a tmp table is used.

The Field_blob object constructor which is used in the 
Item::tmp_table_field_from_field_type() is always setting packlength field of
newly created blob to 4. This leads to changing fields data type for example
from the blob to the longblob if a temporary table is used.

The Item::make_string_field() function always converts Field_string objects 
to Field_varstring objects. This leads to changing data type from the 
char/binary to varchar/varbinary.

Added appropriate Field_timestamp object constructor for using in the 
Item::tmp_table_field_from_field_type() function.

Added Field_blob object constructor which sets pack length according to
max_length argument.

The Item::tmp_table_field_from_field_type() function now creates
Field_timestamp object for a timestamp field.

The Item_type_holder::display_length() now returns correct NULL length NULL
length. 

The Item::make_string_field() function now doesn't change Field_string to
Field_varstring in the case of Item_type_holder. 

The Item::tmp_table_field_from_field_type() function now uses the Field_blob
constructor which sets packlength according to max_length.


mysql-test/t/union.test:
  Added test case for bug#12185: Data type aggregation may produce wrong result
  Corrected test case after fix for bug#12185
mysql-test/t/innodb.test:
  Corrected test case after fix for bug#12185
mysql-test/r/union.result:
  Added test case for bug#12185: Data type aggregation may produce wrong result
   Corrected test case after fix for bug#12185
mysql-test/r/innodb.result:
  Corrected test case after fix for bug#12185
mysql-test/r/create.result:
  Corrected the test case after fixing bug#12185
sql/field.h:
  Fixed bug#12185: Data type aggregation may produce wrong result
  Added Field_blob object constructor which sets packlength according to
  max_length argument.
sql/item.cc:
  Fixed bug#12185: Data type aggregation may produce wrong result
  The Item::make_string_field() function now doesn't change Field_string to
  Field_varstring in the case of Item_type_holder.
  The Item::tmp_table_field_from_field_type() function now creates
  Field_timestamp object for a timestamp field.
  The Item::tmp_table_field_from_field_type() function now uses the Field_blob
  constructor which sets packlength according to max_length.
  The Item_type_holder::display_length() now returns correct NULL length NULL
  length.
sql/field.cc:
  Fixed bug#12185: Data type aggregation may produce wrong result
  Added appropriate Field_timestamp object constructor for using in the 
  Item::tmp_table_field_from_field_type() function.
2006-07-22 02:08:00 +04:00
unknown
83c8e2c910 merging
sql/handler.h:
  Auto merged
sql/sql_table.cc:
  Auto merged
2006-05-03 16:42:39 +05:00
unknown
dc796fce4d Merge aivanov@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/alexi/innodb/mysql-5.0


mysql-test/r/innodb.result:
  SCCS merged
mysql-test/t/innodb.test:
  SCCS merged
2006-04-23 13:32:37 +04:00
unknown
4369050126 Restoring changes erroneously removed by applying
the innodb-5.0-ss476 snapshot.
2006-04-21 01:37:31 +04:00
unknown
7ee05d7c71 Applied innodb-5.0-ss476 snapshot.
Fix BUG#18934: "InnoDB crashes when table uses column like DB_ROW_ID".
 Also, fix memory leaks in row_create_table_for_mysql() in rare
 corner cases.


innobase/dict/dict0dict.c:
  Applied innodb-5.0-ss476 snapshot.
   Refuse tables that use reserved column names (Bug#18934).
innobase/dict/dict0load.c:
  Applied innodb-5.0-ss476 snapshot.
   dict_load_table(): Refuse to load tables with other TYPE
   than DICT_TABLE_ORDINARY.
innobase/dict/dict0mem.c:
  Applied innodb-5.0-ss476 snapshot.
   Add dict_mem_table_free(), use it instead of duplicating
   the code everywhere.
innobase/ibuf/ibuf0ibuf.c:
  Applied innodb-5.0-ss476 snapshot.
innobase/include/dict0dict.h:
  Applied innodb-5.0-ss476 snapshot.
   Refuse tables that use reserved column name (Bug#18934).
innobase/include/dict0mem.h:
  Applied innodb-5.0-ss476 snapshot.
   Add dict_mem_table_free(), use it instead of duplicating
   the code everywhere.
innobase/include/univ.i:
  Applied innodb-5.0-ss476 snapshot.
innobase/log/log0recv.c:
  Applied innodb-5.0-ss476 snapshot.
innobase/row/row0mysql.c:
  Applied innodb-5.0-ss476 snapshot.
   Refuse tables that use reserved column names (Bug#18934).
mysql-test/r/innodb.result:
  Applied innodb-5.0-ss476 snapshot.
   Fix result for test case for Bug#18934.
   (Other changes are to be restored by the next cset).
mysql-test/t/innodb.test:
  Applied innodb-5.0-ss476 snapshot.
   Fix result for test case for Bug#18934.
   (Removed test case for Bug#14360 is to be restored by the next cset).
2006-04-21 01:07:37 +04:00
unknown
7b14ac64bc BUG#17152: Wrong result with BINARY comparison on aliased column
Testsuite added
2006-04-17 16:46:56 +03:00
unknown
f01b0ac221 bug #15860 (SPATIAL keys in INNODB)
mysql-test/r/innodb.result:
  result added
mysql-test/t/innodb.test:
  testcase
sql/ha_myisam.cc:
  HA_CAN_RTREEKEYS added to ha_myisam
sql/handler.h:
  HA_CAN_RTREEKEYS defined
sql/share/errmsg.txt:
  error message added
sql/sql_table.cc:
  check that the handler allows SPATIAL keys
2006-04-12 22:05:23 +05:00
unknown
1ef739636a Fix for bug #14360: Date Between Interval Broken.
mysql-test/r/innodb.result:
  Fix for bug #14360: Date Between Interval Broken.                               
    - test case.
mysql-test/t/innodb.test:
  Fix for bug #14360: Date Between Interval Broken.                               
    - test case.
sql/item_timefunc.cc:
  Fix for bug #14360: Date Between Interval Broken.                               
    - Item_date_add_interval::eq() introduced.
sql/item_timefunc.h:
  Fix for bug #14360: Date Between Interval Broken.                               
    - Item_date_add_interval::eq() introduced.
2006-04-11 16:13:57 +05:00
unknown
7897a3613a Fixed test case result (after BUG#15868 fix). 2006-04-10 22:44:01 +04:00
unknown
0afb6ff660 Fixes to embedded server to be able to run tests with it
(Needed for "list of pushes" web page and autopush)


include/mysql.h:
  Fix to embedded server to be able to run tests on it
libmysql/libmysql.c:
  Fix to embedded server to be able to run tests on it
libmysqld/emb_qcache.cc:
  Fix to embedded server to be able to run tests on it
libmysqld/embedded_priv.h:
  Fix to embedded server to be able to run tests on it
libmysqld/lib_sql.cc:
  Fix to embedded server to be able to run tests on it
libmysqld/libmysqld.c:
  Fix to embedded server to be able to run tests on it
mysql-test/mysql-test-run.sh:
  Fix to embedded server to be able to run tests on it
mysql-test/r/binlog.result:
  Updated test for embedded server
mysql-test/r/ctype_cp932.result:
  Updated test for embedded server
mysql-test/r/innodb.result:
  Updated test for embedded server
mysql-test/r/mysqltest.result:
  Updated test for embedded server
mysql-test/r/query_cache.result:
  Updated test for embedded server
mysql-test/r/query_cache_notembedded.result:
  Updated test for embedded server
mysql-test/r/sp-error.result:
  Updated test for embedded server
mysql-test/r/sp.result:
  Updated test for embedded server
mysql-test/r/subselect.result:
  Updated test for embedded server
mysql-test/r/view.result:
  Updated test for embedded server
mysql-test/r/view_grant.result:
  Updated test for embedded server
mysql-test/t/backup.test:
  Updated test for embedded server
mysql-test/t/binlog.test:
  Updated test for embedded server
mysql-test/t/blackhole.test:
  Updated test for embedded server
mysql-test/t/compress.test:
  Updated test for embedded server
mysql-test/t/ctype_cp932.test:
  Updated test for embedded server
mysql-test/t/delayed.test:
  Updated test for embedded server
mysql-test/t/handler.test:
  Updated test for embedded server
mysql-test/t/innodb.test:
  Updated test for embedded server
mysql-test/t/mysql.test:
  Updated test for embedded server
mysql-test/t/mysql_client_test.test:
  Updated test for embedded server
mysql-test/t/mysqltest.test:
  Updated test for embedded server
mysql-test/t/query_cache.test:
  Updated test for embedded server
mysql-test/t/query_cache_notembedded.test:
  Updated test for embedded server
mysql-test/t/read_only.test:
  Updated test for embedded server
mysql-test/t/skip_grants.test:
  Updated test for embedded server
mysql-test/t/sp-destruct.test:
  Updated test for embedded server
mysql-test/t/sp-error.test:
  Updated test for embedded server
mysql-test/t/sp-threads.test:
  Updated test for embedded server
mysql-test/t/sp.test:
  Updated test for embedded server
mysql-test/t/subselect.test:
  Updated test for embedded server
mysql-test/t/temp_table.test:
  Updated test for embedded server
mysql-test/t/view.test:
  Updated test for embedded server
mysql-test/t/view_grant.test:
  Updated test for embedded server
mysql-test/t/wait_timeout.test:
  Updated test for embedded server
mysys/mf_dirname.c:
  Review fix: Don't access data outside of array
mysys/my_bitmap.c:
  Remove compiler warnings
scripts/mysql_fix_privilege_tables.sql:
  Add flush privileges to .sql script so that one doesn't have to reboot mysqld when one runs the mysql_fix_privilege_script
sql-common/client.c:
  Updated test for embedded server
sql/item.cc:
  Remove DBUG_PRINT statement that can cause crashes when running with --debug
sql/mysqld.cc:
  Fix to embedded server to be able to run tests on it
sql/protocol.cc:
  Fix to embedded server to be able to run tests on it
  (Trivial reconstruction of code)
sql/protocol.h:
  Fix to embedded server to be able to run tests on it
sql/sql_base.cc:
  Better comment
sql/sql_class.cc:
  Fix to embedded server to be able to run tests on it
sql/sql_class.h:
  Fix to embedded server to be able to run tests on it
sql/sql_cursor.cc:
  Fix to embedded server to be able to run tests on it
sql/sql_parse.cc:
  Fix to embedded server to be able to run tests on it
  Don't crash for disabled commands when using embedded server
sql/sql_prepare.cc:
  Fix to embedded server to be able to run tests on it
mysql-test/r/ctype_cp932_notembedded.result:
  New BitKeeper file ``mysql-test/r/ctype_cp932_notembedded.result''
mysql-test/r/innodb_notembedded.result:
  New BitKeeper file ``mysql-test/r/innodb_notembedded.result''
mysql-test/r/sp.result.orig:
  New BitKeeper file ``mysql-test/r/sp.result.orig''
mysql-test/r/sp_notembedded.result:
  New BitKeeper file ``mysql-test/r/sp_notembedded.result''
mysql-test/r/subselect_notembedded.result:
  New BitKeeper file ``mysql-test/r/subselect_notembedded.result''
mysql-test/t/ctype_cp932_notembedded.test:
  New BitKeeper file ``mysql-test/t/ctype_cp932_notembedded.test''
mysql-test/t/innodb_notembedded.test:
  New BitKeeper file ``mysql-test/t/innodb_notembedded.test''
mysql-test/t/sp.test.orig:
  New BitKeeper file ``mysql-test/t/sp.test.orig''
mysql-test/t/sp_notembedded.test:
  New BitKeeper file ``mysql-test/t/sp_notembedded.test''
mysql-test/t/subselect_notembedded.test:
  New BitKeeper file ``mysql-test/t/subselect_notembedded.test''
2006-02-24 18:34:15 +02:00
unknown
4ecc62881f Merge mysql.com:/home/mydev/mysql-5.0
into  mysql.com:/home/mydev/mysql-5.0-bug8841


mysql-test/r/innodb.result:
  Auto merged
mysql-test/r/myisam.result:
  Auto merged
2006-02-16 08:59:55 +01:00
unknown
08394605dc Bug#8841 - CHECKSUM TABLE is broken in MyISAM
There are (at least) two implementations of the checksum
computation. One is in MyISAM for the quick checksum. It
is executed on every row change. The other is in the
SQL layer for the extended checksum. It retrieves all rows
of a table via the respective storage engine.

In former MySQL versions varchars were stored with their 
maximum length, but now with their real length similar to
blobs.

This change had been forgotten to take care of in the
extended checksum calculation. Hence too much data was
checksumed. In MyISAM this change had been taken care of 
already. Only the real data is included in the checksum.

I changed mysql_checksum_table() so that it uses the
length information of true varchar fields instead
of the field length like in former varchar 
implementations.


mysql-test/r/innodb.result:
  Bug#8841 - CHECKSUM TABLE is broken in MyISAM
  Fixed test results.
mysql-test/r/myisam.result:
  Bug#8841 - CHECKSUM TABLE is broken in MyISAM
  Fixed test results.
sql/sql_table.cc:
  Bug#8841 - CHECKSUM TABLE is broken in MyISAM
  Changed mysql_checksum_table() so that it uses the
  length information of true varchar fields instead
  of the field length like in former varchar 
  implementations.
2006-02-01 16:46:44 +01:00
unknown
6a9a96dc61 Fixed: BUG#15653, BUG#16157, BUG#16229, BUG#16298, BUG#16387, BUG#16582.
Applied innodb-5.0-ss149/162 snapshots.


innobase/btr/btr0sea.c:
  Applied innodb-5.0-149/162 snapshots.
    Account for a race condition when dropping the adaptive hash
    index for a B-tree page (Bug #16582).
    btr_search_drop_page_hash_index(): Retry the operation if a
      hash index with different parameters was built meanwhile.
      Add diagnostics for the case that hash node pointers to
      the page remain. This fix is from Heikki.
    btr_search_info-update_hash(), btr_search_info_update_slow():
      Document the parameter "info" as in/out.
innobase/dict/dict0dict.c:
  Applied innodb-5.0-149/162 snapshots.
    Do not mistake TABLENAME_ibfk_0 for auto generated id (Bug #16387).
    dict_table_get_highest_foreign_id(): Ignore foreign constraint
      identifiers starting with the pattern TABLENAME_ibfk_0.
innobase/dict/dict0load.c:
  Applied innodb-5.0-149/162 snapshots.
    dict_load_columns(): Set the charset-collation code
    DATA_MYSQL_BINARY_CHARSET_COLL for those binary string columns
    that lack a charset-collation code, i.e., the tables were created
    with an older version of MySQL/InnoDB than 4.1.2 (Bug #16298).
innobase/fil/fil0fil.c:
  Applied innodb-5.0-149/162 snapshots.
    Keep track on unflushed modifications to file spaces. When there
    are tens of thousands of file spaces, flushing all files in
    fil_flush_file_spaces() would be very slow (Bug #15653).
    fil_flush_file_spaces(): Only flush unflushed file spaces.
    fil_space_t, fil_system_t: Add a list of unflushed spaces.
innobase/include/univ.i:
  Applied innodb-5.0-149/162 snapshots.
    Avoid breaking --with-debug builds on QNS and other systems
    whose compiler pretends to be GCC 2.
    Outside __WIN__ define UNIV_INLINE as static inline.
innobase/os/os0sync.c:
  Applied innodb-5.0-149/162 snapshots.
    Replace goto in os_event_wait with a normal loop.
innobase/srv/srv0start.c:
  Applied innodb-5.0-149/162 snapshots.
    Fix bug #16157, a crash when innodb_log_group_home_dir is set
    to an empty string. This patch is from Heikki.
mysql-test/r/innodb.result:
  Applied innodb-5.0-149/162 snapshots.
    Fixed results for added test cases.
mysql-test/t/innodb.test:
  Applied innodb-5.0-149/162 snapshots.
    Added test cases.
sql/ha_innodb.cc:
  Applied innodb-5.0-149/162 snapshots.
    Remove some declarations of unused global variables and member
      variables of class ha_innobase.
    Added diagnostic code trx_print() to
      innobase_query_caching_of_table_permitted() to find reason
      why we are holding adaptive search latch.
    Fixed bug #16229 MySQL/InnoDB uses full explicit table locks
      in trigger processing. Take a InnoDB table lock only if user
      has explicitly requested a table lock. Added some additional
      comments to store_lock() and external_lock(). Fixed some
      code style errors.
    Remember to use noninlined versions of the functions on
      ha_innodb.cc !
sql/ha_innodb.h:
  Applied innodb-5.0-149/162 snapshots.
    Remove some declarations of unused global variables and member
    variables of class ha_innobase.
2006-01-31 21:41:48 +03:00
unknown
e3f0690d9b Applied patch recieved from Marko:
Make innodb_thread_concurrency 0 by default, and extend the usable
 range from 0 to 1000 (0 disables the thread throttling).


innobase/include/srv0srv.h:
  Remove SRV_CONCURRENCY_THRESHOLD. The magic value is 0 from now on.
innobase/srv/srv0srv.c:
  Remove SRV_CONCURRENCY_THRESHOLD. The magic value is 0 from now on.
mysql-test/r/innodb.result:
  innodb_thread_concurrency is 0..1000 now, and the default is 0.
mysql-test/t/innodb.test:
  innodb_thread_concurrency is 0..1000 now.
sql/ha_innodb.cc:
  Remove SRV_CONCURRENCY_THRESHOLD. The magic value is 0 from now on.
sql/mysqld.cc:
  innodb_thread_concurrency is 0..1000 now, and 0 (the default)
   disables the thread throttling.
2006-01-18 15:20:56 +03:00
unknown
7bafd119a3 Changes from the innodb-5.0-ss115 snapshot.
Fixed bugs:
 BUG#15991: "innodb-file-per-table + symlink database + rename = crash"
 BUG#15650: "DELETE with LEFT JOIN crashes server"
 BUG#15308: "Problem of Order with Enum Column in Primary Key"
 BUG#14189: "VARBINARY and BINARY variables: trailing space ignored"


innobase/include/data0type.h:
  Changes from the innodb-5.0-ss115 snapshot.
innobase/include/data0type.ic:
  Changes from the innodb-5.0-ss115 snapshot.
   Fixed bug #14189. dtype_get_pad_char(): Do not pad VARBINARY
   or BINARY cloumns.
innobase/include/lock0lock.h:
  Changes from the innodb-5.0-ss115 snapshot.
innobase/include/os0file.h:
  Changes from the innodb-5.0-ss115 snapshot.
   os_file_handle_error(): Map the error codes EXDEV, ENOTDIR, and
   EISDIR to the new code OS_FILE_PATH_ERROR. Treat this code as
   OS_FILE_PATH_ERROR. This fixes the crash on RENAME TABLE when
   the .ibd file is a symbolic link to a different file system
   (bug#15991).
innobase/include/row0mysql.h:
  Changes from the innodb-5.0-ss115 snapshot.
innobase/lock/lock0lock.c:
  Changes from the innodb-5.0-ss115 snapshot.
   lock_rec_unlock(): Initialize local variable release_lock,
   in order to avoid dereferencing an uninitialized pointer
   when no lock exists on rec.
innobase/os/os0file.c:
  Changes from the innodb-5.0-ss115 snapshot.
   os_file_handle_error(): Map the error codes EXDEV, ENOTDIR, and
     EISDIR to the new code OS_FILE_PATH_ERROR. Treat this code as
     OS_FILE_PATH_ERROR. This fixes the crash on RENAME TABLE when
     the .ibd file is a symbolic link to a different file system
     (bug#15991).
   Protect the increment and decrement operations on the statistic
     variables os_n_pending_writes/reads with os_file_count_mutes.
innobase/row/row0ins.c:
  Changes from the innodb-5.0-ss115 snapshot.
   Fixed bug #14189. row_ins_cascade_calc_update_vec(): Refuse
   ON UPDATE_CASCADE when trying to change the length of of a
   VARBINARY column that refers to or is referenced by a BINARY
   column. BINARY columns are no longer padded on comparison,
   and thus they cannot be padded on storage either.
innobase/row/row0mysql.c:
  Changes from the innodb-5.0-ss115 snapshot.
   Fixed bug on unlock_row. In a unlock_row we may unlock
   only the latest lock granted to this transaction to the row.
innobase/row/row0sel.c:
  Changes from the innodb-5.0-ss115 snapshot.
   Fixed bug #15308.
   Fixed bug #14189: innobase_init(): Assert that
     DATA_MYSQL_BINARY_CHARSET_COLL == my_charset_bin.number.
   After review fixes for unlock bug where unlock released all
     locks transaction requested for a row. Only a latest requested
     lock to a row should be released. Update function comments to
     reflect current state. Persistent cursor should be stored
     whenever select lock type != LOCK_NONE.
innobase/trx/trx0trx.c:
  Changes from the innodb-5.0-ss115 snapshot.
   trx_commit_off_kernel(): Do not write empty trx->mysql_log_file_name.
mysql-test/r/innodb.result:
  Changes from the innodb-5.0-ss115 snapshot.
mysql-test/t/innodb.test:
  Changes from the innodb-5.0-ss115 snapshot.
sql/ha_innodb.cc:
  Changes from the innodb-5.0-ss115 snapshot.
   Fixed bug #15308.
   Fixed bug #14189: innobase_init(): Assert that
     DATA_MYSQL_BINARY_CHARSET_COLL == my_charset_bin.number.
   After review fixes for unlock bug where unlock released all
     locks transaction requested for a row. Only a latest requested
     lock to a row should be released. Update function comments to
     reflect current state. Persistent cursor should be stored
     whenever select lock type != LOCK_NONE.
mysql-test/r/innodb_unsafe_binlog.result:
  Changes from the innodb-5.0-ss115 snapshot.
mysql-test/t/innodb_unsafe_binlog-master.opt:
  Changes from the innodb-5.0-ss115 snapshot.
mysql-test/t/innodb_unsafe_binlog.test:
  Changes from the innodb-5.0-ss115 snapshot.
   Added testcases for bug #15650.
2006-01-16 14:32:43 +03:00
unknown
778d212b8c Fix BUG#12071: "Windows hang:'Opening tables' or 'Waiting for
table' lockup".
 Changes from the innodb-5.0-ss92 snapshot.
 Do not call os_file_create_tmpfile() at runtime. Instead, create
 all tempfiles at startup and guard access to them with mutexes.


innobase/btr/btr0sea.c:
  Changes from the innodb-5.0ss92 snapshot.
innobase/include/buf0buf.h:
  Changes from the innodb-5.0ss92 snapshot.
innobase/include/os0file.h:
  Changes from the innodb-5.0ss92 snapshot.
innobase/include/srv0srv.h:
  Changes from the innodb-5.0ss92 snapshot.
innobase/row/row0ins.c:
  Changes from the innodb-5.0ss92 snapshot.
innobase/srv/srv0srv.c:
  Changes from the innodb-5.0ss92 snapshot.
innobase/srv/srv0start.c:
  Changes from the innodb-5.0ss92 snapshot.
mysql-test/r/innodb.result:
  Changes from the innodb-5.0ss92 snapshot.
mysql-test/t/innodb.test:
  Changes from the innodb-5.0ss92 snapshot.
sql/ha_innodb.cc:
  Changes from the innodb-5.0ss92 snapshot.
2005-12-13 21:35:24 +03:00
unknown
43dd386df9 Fix innodb.result file (was missing a line)
mysql-test/r/innodb.result:
  Update result file
2005-12-06 18:18:35 -08:00
unknown
b83c29766c Fix BUG#14747: "Race condition can cause btr_search_drop_page_hash_index()
to crash".
 Changes from snapshot innodb-5.0-ss52.
 Note that buf_block_t::index should be protected by btr_search_latch
 or an s-latch or x-latch on the index page.
 btr_search_drop_page_hash_index(): Read block->index while holding
 btr_search_latch and use the cached value in the loop. Remove some
 redundant assertions.
 Also fix 13778. When FOREIGN_KEY_CHECKS=0 we still need to check that
 datatypes between foreign key references are compatible.
 Also added test cases to 9802.


innobase/btr/btr0sea.c:
  Changes from innodb-5.0-ss52
innobase/dict/dict0dict.c:
  Changes from innodb-5.0-ss52
innobase/dict/dict0load.c:
  Changes from innodb-5.0-ss52
innobase/include/buf0buf.h:
  Changes from innodb-5.0-ss52
innobase/include/dict0dict.h:
  Changes from innodb-5.0-ss52
innobase/include/dict0load.h:
  Changes from innodb-5.0-ss52
innobase/include/rem0cmp.h:
  Changes from innodb-5.0-ss52
innobase/rem/rem0cmp.c:
  Changes from innodb-5.0-ss52
innobase/row/row0mysql.c:
  Changes from innodb-5.0-ss52
mysql-test/r/innodb.result:
  Changes from innodb-5.0-ss52
mysql-test/t/innodb.test:
  Changes from innodb-5.0-ss52
sql/ha_innodb.cc:
  Changes from innodb-5.0-ss52
sql/ha_innodb.h:
  Changes from innodb-5.0-ss52
2005-12-06 22:02:40 +03:00
unknown
4b4f7f7612 Enable key lengths of up to 3K on 32-bit platforms.
mysql-test/r/bdb.result:
  Add new results
mysql-test/r/innodb.result:
  Add new results
mysql-test/t/bdb.test:
  Add simple test that large keys are allowed
mysql-test/t/innodb.test:
  Add simple test that large keys are allowed
sql/unireg.h:
  Allow key length of 3K even on 32-bit platforms
2005-12-01 11:11:03 -08:00
unknown
33b4154cec BUG#14056 Column prefix index on UTF-8 primary key column causes 'Can't find record..'
Applying InnoDB patch from Jan Lindstrom
2005-10-19 12:06:29 -04:00
unknown
04af49a97f innodb.result:
somehow it didn't get into the previous changeset


mysql-test/r/innodb.result:
  somehow it didn't get into the previous changeset
2005-10-04 21:37:50 +02:00
unknown
8f842e8fc9 Bug#11238
"SELECT ... FOR UPDATE executed as consistent read inside LOCK TABLES"
Do not discard lock_type information as handler::start_stmt() may require knowledge.
(fixed by Antony)
2005-09-30 20:20:10 +02:00
unknown
31f7a0e831 duplicate error message removed
mysql-test/r/innodb.result:
  after merge fix
2005-09-30 12:01:39 +02:00
unknown
0669d1e024 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/psergey/mysql-5.0-bug13455


mysql-test/r/innodb.result:
  Auto merged
2005-09-30 01:38:04 +04:00
unknown
8bdb41ab87 Fix for BUG#13455: Make "ref" optimizer able to make this inference:
"t.key BETWEEN c1 AND c2" and c1 = c2 -> can access table t using "t.key = c1".


mysql-test/r/heap.result:
  BUG#13455: updated test results
mysql-test/r/innodb.result:
  BUG#13455: updated test results
mysql-test/r/myisam.result:
  BUG#13455: updated test results
mysql-test/r/range.result:
  Testcase for BUG#13455
mysql-test/t/range.test:
  Testcase for BUG#13455
2005-09-30 01:34:19 +04:00
unknown
811d98adc8 Fix incorrectly merged changeset, these may not be before a first 5.0 test
i.e. range test.
2005-09-29 13:50:27 +03:00
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
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
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
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
4956432b12 aftermerge fix 2005-09-21 17:38:26 +02:00
unknown
aa7bc459f7 merged
VC++Files/mysys/mysys.dsp:
  Auto merged
VC++Files/mysys/mysys_ia64.dsp:
  Auto merged
client/mysql.cc:
  Auto merged
include/my_sys.h:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/myisamchk.c:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/r/rpl_multi_delete2.result:
  Auto merged
mysql-test/t/innodb.test:
  Auto merged
mysql-test/t/rpl_multi_delete2-slave.opt:
  Auto merged
mysql-test/t/rpl_multi_delete2.test:
  Auto merged
sql/ha_myisam.cc:
  Auto merged
sql/opt_sum.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2005-09-21 13:53:22 +02:00
unknown
5bc4501259 Fix bug #13218: InnoDB: using a partial-field key prefix in search
This is backport from 5.0 of fix for bug #11039


mysql-test/t/innodb.test:
  Backport from 5.0 of test case for bug#11039
mysql-test/r/innodb.result:
  Backport from 5.0 of test case for bug#11039
sql/opt_sum.cc:
  Fix bug #13218:  backport from 5.0 of bug #11039 fix
2005-09-19 04:39:49 +04:00
unknown
4d29b85d14 Merged from 4.1 to 5.0. 2005-09-13 01:44:50 +03:00
unknown
8c3423652d Merge a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-4.1
into  a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-5.0


mysql-test/r/temp_table.result:
  Auto merged
mysql-test/r/warnings.result:
  Auto merged
sql/sql_db.cc:
  Auto merged
client/mysqltest.c:
  Auto merged
mysql-test/t/innodb.test:
  Auto merged
sql/filesort.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
mysql-test/r/create.result:
  Merged from 4.1 to 5.0
mysql-test/r/innodb.result:
  Merged from 4.1 to 5.0
mysql-test/t/create.test:
  Merged from 4.1 to 5.0
sql/item_cmpfunc.cc:
  Merged from 4.1 to 5.0
sql/sql_table.cc:
  Merged from 4.1 to 5.0
2005-09-12 20:18:49 +03:00
unknown
90ca6d15b3 Review fixes since last pull
Fix for bug #13025; Server crash in filesort because wrong call to handler::position()


client/mysqltest.c:
  Code cleanup during review
mysql-test/r/innodb.result:
  Added test case for bug #13025; Server crash in filesort because wrong call to handler::position()
mysql-test/t/innodb.test:
  Added test case for bug #13025; Server crash in filesort because wrong call to handler::position()
sql/filesort.cc:
  Don't call handler::position() if row was not found
sql/item_cmpfunc.cc:
  Indentation changes
sql/sql_select.cc:
  Moved variable to outer level
2005-09-12 18:48:17 +03:00
unknown
d17b361e8e Add testcase for bug #12084. 2005-09-06 16:08:05 +03:00
unknown
68e31099b0 Merge mysql.com:/home/mydev/mysql-5.0
into  mysql.com:/home/mydev/mysql-5.0-5000


mysql-test/r/innodb.result:
  Auto merged
mysql-test/t/innodb.test:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_delete.cc:
  After merge fix.
2005-08-30 12:35:37 +02:00
unknown
6e4c74c1ef After merge fix.
mysql-test/r/innodb.result:
  After merge fix.
  Test for bug 11816 has four more inserts.
2005-08-29 21:06:45 +02:00
unknown
194a520d21 Merge mysql.com:/home/mydev/mysql-4.1-4100
into  mysql.com:/home/mydev/mysql-5.0-5000


myisam/mi_search.c:
  Auto merged
mysql-test/r/alter_table.result:
  Auto merged
mysql-test/t/alter_table.test:
  Auto merged
mysql-test/t/innodb.test:
  Auto merged
sql/sql_table.cc:
  Auto merged
mysql-test/r/innodb.result:
  Hand merged.
mysql-test/r/key.result:
  Hand merged.
mysql-test/r/myisam.result:
  Hand merged.
mysql-test/t/key.test:
  Hand merged.
mysql-test/t/myisam.test:
  Hand merged.
sql/sql_delete.cc:
  Hand merged.
sql/sql_parse.cc:
  Hand merged.
2005-08-29 18:18:30 +02:00
unknown
6318e449e3 Bug#11816 - Truncate table doesn't work with temporary innodb tables
Handle temporary tables like permanent tables: If the storage engine
cannot truncate, delete instead.


mysql-test/r/innodb.result:
  Bug#11816 - Truncate table doesn't work with temporary innodb tables
  The test result.
mysql-test/t/innodb.test:
  Bug#11816 - Truncate table doesn't work with temporary innodb tables
  The test case.
sql/sql_delete.cc:
  Bug#11816 - Truncate table doesn't work with temporary innodb tables
  Handle temporary tables like permanent tables: If the storage engine
  cannot truncate, delete instead.
  Replaced a numeric literal by its symbolic name.
2005-08-29 17:01:46 +02:00
unknown
1d406fb9a2 Merge osalerma@bk-internal.mysql.com:/home/bk/mysql-5.0
into  127.(none):/home/osku/mysql-5.0


mysql-test/r/innodb.result:
  Auto merged
mysql-test/t/innodb.test:
  Auto merged
2005-08-24 09:25:32 +03:00
unknown
fe24add743 WL#2486 - natural and using join according to SQL:2003
* Provide backwards compatibility extension to name resolution of
  coalesced columns. The patch allows such columns to be qualified
  with a table (and db) name, as it is in 4.1.
  Based on a patch from Monty.

* Adjusted tests accordingly to test both backwards compatible name
  resolution of qualified columns, and ANSI-style resolution of
  non-qualified columns.
  For this, each affected test has two versions - one with qualified
  columns, and one without. 


mysql-test/include/ps_query.inc:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/bdb.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/innodb.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/join.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/join_nested.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/join_outer.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/null_key.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/order_by.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/ps_2myisam.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/ps_3innodb.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/ps_4heap.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/ps_5merge.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/ps_6bdb.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/ps_7ndb.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/select.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/subselect.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/type_ranges.result:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/bdb.test:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/innodb.test:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/join.test:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/join_nested.test:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/join_outer.test:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/null_key.test:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/order_by.test:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/select.test:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/subselect.test:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/type_ranges.test:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
sql/sql_base.cc:
  * Applied Monty's patch for backwards compatible name resolution
    of qualified columns. The idea is:
    - When a column is qualified, search for the column in all
      tables/views underlying each natural join. In this case
      natural joins are *not* considered leaves.
    - If a column is not qualified, then consider natural joins
      as leaves, thus directly search the result columns of
      natural joins.
  * Simplified 'find_field_in_tables()' - unified two similar
    loops into one.
sql/table.cc:
  - Removed method & members not needed after Monty's patch.
sql/table.h:
  - Removed method & members not needed after Monty's patch.
tests/mysql_client_test.c:
  Put back old tests to test that coalesced columns of natural joins can be qualified.
2005-08-23 18:08:04 +03:00
unknown
4f16ca27ef Merge osalerma@bk-internal.mysql.com:/home/bk/mysql-5.0
into  127.(none):/home/osku/mysql-5.0


mysql-test/r/innodb.result:
  Auto merged
mysql-test/t/innodb.test:
  Auto merged
2005-08-19 11:34:04 +03:00
unknown
fce5427ebe test fix for fix of 12591
mysql-test/r/innodb.result:
  fix result for fix of 12591
mysql-test/t/innodb.test:
  fix test for fix of 12591
2005-08-19 09:08:41 +02: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
2b53b711d8 Merge mysql.com:/home/timka/mysql/src/5.0-virgin
into  mysql.com:/home/timka/mysql/src/5.0-2486-merge


mysql-test/r/errors.result:
  Auto merged
mysql-test/r/fulltext.result:
  Auto merged
mysql-test/r/fulltext_order_by.result:
  Auto merged
mysql-test/r/innodb.result:
  Auto merged
mysql-test/r/join_nested.result:
  Auto merged
mysql-test/r/subselect.result:
  Auto merged
mysql-test/t/errors.test:
  Auto merged
mysql-test/t/fulltext.test:
  Auto merged
mysql-test/t/fulltext_order_by.test:
  Auto merged
mysql-test/t/innodb.test:
  Auto merged
mysql-test/t/join_nested.test:
  Auto merged
mysql-test/t/subselect.test:
  Auto merged
sql/item.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/table.h:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
sql/sql_insert.cc:
  merge WL#2486
sql/sql_show.cc:
  merge WL#2486
2005-08-12 19:27:54 +03:00