Commit graph

13965 commits

Author SHA1 Message Date
unknown
f6ffb77cb4 Applied innodb-5.0-ss398 snapshot.
Fixed BUG#15650: DELETE with LEFT JOIN crashes server
 with innodb_locks_unsafe_for_binlog.
 Fixed compilation problem with non-C99 compilers
 in btr0sea.c


innobase/btr/btr0sea.c:
  Applied innodb-5.0-ss398 snapshot.
   Fix compilation problem with non-C99 compilers.
sql/ha_innodb.cc:
  Applied innodb-5.0-ss398 snapshot.
   Remove assertion ut_error which crashes the mysqld
   server if it prints a warning about the adaptive latch.
2006-04-01 01:54:15 +04:00
unknown
d9f5fac9ed Fix an -ansi -pedantic compilation failure 2006-03-30 00:20:14 +04:00
unknown
87e9178114 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/opt/local/work/mysql-5.0-15683


sql/sql_load.cc:
  Auto merged
2006-03-30 00:20:13 +04:00
unknown
c5ab0159e1 Merge aivanov@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/alexi/innodb/mysql-5.0-merge
2006-03-30 00:20:12 +04:00
unknown
20e609d09b Merge aivanov@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/alexi/innodb/mysql-5.0-merge
2006-03-29 23:18:44 +04:00
unknown
fd6db50c0b Applied innodb-5.0-ss368 snapshot
Fixed bugs:
  #16814: SHOW INNODB STATUS format error in LATEST FOREIGN KEY ERROR section
    dict_foreign_key_error_report(): Always print a newline after invoking
    dict_print_info_on_foreign_key_in_create_format().
  #16827: Better InnoDB error message if ibdata files omitted from my.cnf.
  #17126: CHECK TABLE on InnoDB causes a short hang during check of adaptive hash.
    CHECK TABLE blocking other queries, by releasing the btr_search_latch
    periodically during the adaptive hash table validation.
  #17405: Valgrind: conditional jump or move depends on uninitialised valuesw.
    buf_block_init(): Reset magic_n, buf_fix_count, and io_fix to avoid testing
    uninitialised variables.
  #18077: InnoDB uses full explicit table locks in stored FUNCTION.
  #18238: When locks exhaust the buffer pool, InnoDB does not roll back the trx.
    Check in pessimistic insert and update if the buffer pool is exhausted by locks.
  #18252: Disk space leaks in updates of InnoDB BLOB rows.
    btr_cur_pessimistic_update(): Invoke rec_get_offset() after rec_set_field_extern_bits().
    btr_store_big_rec_extern_fields(): Note that offsets will no longer be valid
    after calling this function.
  #18283: When InnoDB returns error 'lock table full', MySQL can write to binlog too much.
  #18384: InnoDB memory leak on duplicate key errors if row has many columns.
    row_ins_duplicate_error_in_clust(): Call mem_heap_free(heap) at func_exit if needed.
  #18350: Use consistent read in CREATE ... SELECT .. if innodb_locks_unsafe_for_binlog is used.


innobase/btr/btr0cur.c:
  Applied innodb-5.0-ss368 snapshot
innobase/btr/btr0sea.c:
  Applied innodb-5.0-ss368 snapshot
innobase/buf/buf0buf.c:
  Applied innodb-5.0-ss368 snapshot
innobase/buf/buf0lru.c:
  Applied innodb-5.0-ss368 snapshot
innobase/data/data0type.c:
  Applied innodb-5.0-ss368 snapshot
    dtype_print(): Fix printing of prtype.
innobase/dict/dict0dict.c:
  Applied innodb-5.0-ss368 snapshot
innobase/fil/fil0fil.c:
  Applied innodb-5.0-ss368 snapshot
    fil_extend_space_to_desired_size(): in UNIV_HOTBACKUP builds,
    do not touch srv_data_file_sizes[] or srv_n_data_files.
innobase/ha/ha0ha.c:
  Applied innodb-5.0-ss368 snapshot
innobase/include/btr0cur.h:
  Applied innodb-5.0-ss368 snapshot
innobase/include/buf0lru.h:
  Applied innodb-5.0-ss368 snapshot
innobase/include/ha0ha.h:
  Applied innodb-5.0-ss368 snapshot
innobase/include/page0page.ic:
  Applied innodb-5.0-ss368 snapshot
    Remove UNIV_RELEASE_NOT_YET_STABLE and related checks.
innobase/include/univ.i:
  Applied innodb-5.0-ss368 snapshot
    Remove UNIV_RELEASES_NOT_YET_STABLE and related checks.
innobase/row/row0ins.c:
  Applied innodb-5.0-ss368 snapshot
innobase/row/row0sel.c:
  Applied innodb-5.0-ss368 snapshot
    Remove UNIV_RELEASE_NOT_YET_STABLE and related checks.
    page_rec_is_comp(): Remove the bounds check.
    row_sel_field_store_in_mysql_format(): Turn the assertions
    on mbminlen, mbmaxlen, and templ->type into debug assertions.
innobase/row/row0upd.c:
  Applied innodb-5.0-ss368 snapshot
mysql-test/t/innodb.test:
  Applied innodb-5.0-ss368 snapshot
sql/ha_innodb.cc:
  Applied innodb-5.0-ss368 snapshot
    Fix memory allocation bug (by changing MY_WME to MY_FAE) in get_share.
    Also partially fix coding style of the function.
2006-03-29 23:04:32 +04:00
unknown
686b42da4d Reverting yesterday's patch. (cmiller:1.2099) 2006-03-29 10:56:11 -05:00
unknown
1b45888854 Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  mysql.com:/home/dlenev/mysql-5.0-bg17764


mysql-test/r/trigger.result:
  Auto merged
mysql-test/t/trigger.test:
  Auto merged
sql/sql_insert.cc:
  Auto merged
2006-03-29 14:55:04 +04:00
unknown
1d166b1760 Proposed fix for bug #17764 "Trigger crashes MyISAM table"
A table with an on insert trigger was reported as crashed when the insert
was processed with bulk insert mode on (handler::start_bulk_insert).
The trigger was also selecting from the same table, and that caused
the "crash".
The same problem was present when an insert statement, which was processed
in bulk mode, also used a stored function that was reading the same table.

This fix disables bulk inserts if a statement uses functions or invokes
triggers. Implementing more granular checks will require much more code and
therefore can hardly be done in 5.0


mysql-test/r/trigger.result:
  Added test bug #17764 "Trigger crashes MyISAM table".
mysql-test/t/trigger.test:
  Added test bug #17764 "Trigger crashes MyISAM table".
sql/sql_insert.cc:
  We should not start bulk inserts for INSERT (or similar) statement if it uses
  functions or invokes triggers since they may access to the same table and
  therefore should not see its inconsistent state created by this optimization.
sql/sql_load.cc:
  We should not start bulk inserts for INSERT (or similar) statement if it uses
  functions or invokes triggers since they may access to the same table and
  therefore should not see its inconsistent state created by this optimization.
2006-03-29 14:53:00 +04:00
unknown
be236e43e0 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  zippy.(none):/home/cmiller/work/mysql/mysql-5.0__bug11151
2006-03-28 17:38:28 -05:00
unknown
e0a48a8c40 Bug#11151: LOAD DATA INFILE commits transaction in 5.0
No longer create or commit transactions within the loading of files.


mysql-test/r/loaddata.result:
  Add test result.
mysql-test/t/loaddata.test:
  Add test case.
sql/sql_load.cc:
  Loading data from a table should neither create new transactions nor destroy
  (by committing or rolling-back) existing transactions.
2006-03-28 17:15:45 -05:00
unknown
dfe5769a04 Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/usr/home/bar/mysql-5.0
2006-03-28 20:04:50 +05:00
unknown
53595c7020 Merge mysql.com:/extern/mysql/bk/mysql-5.0-runtime
into  mysql.com:/extern/mysql/5.0/bug17015/mysql-5.0-runtime
2006-03-28 17:03:14 +02:00
unknown
c47405e2ed Removed forgotten comment line in sql_select.cc.
sql/sql_select.cc:
  Forgot to remove commented line in previous commit.
2006-03-28 16:05:06 +02:00
unknown
3ba8f36675 Merge joreland@bk-internal.mysql.com:/home/bk/mysql-5.0
into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.0


sql/ha_ndbcluster.cc:
  Auto merged
2006-03-28 15:40:08 +02:00
unknown
743a5055da Merge perch.ndb.mysql.com:/home/jonas/src/50-work
into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.0


sql/ha_ndbcluster.cc:
  Auto merged
2006-03-28 15:31:26 +02:00
unknown
442383892e Merge mysql.com:/extern/mysql/bk/mysql-5.0-runtime
into  mysql.com:/extern/mysql/5.0/bug17015/mysql-5.0-runtime


mysql-test/r/sp-error.result:
  Auto merged
mysql-test/t/sp-error.test:
  Auto merged
sql/field.h:
  Auto merged
sql/sp.cc:
  Auto merged
2006-03-28 15:08:17 +02:00
unknown
e550d6e7e3 Review fix for BUG#17015: Routine name truncation not an error
sql/field.h:
  Added new method to Field class: char_length()
sql/sp.cc:
  Use Field::char_length() to check number of characters in the name field.
2006-03-28 15:06:06 +02:00
unknown
56e4b53576 ndb - bug#17729 bug#18406
Ndbapi can reorder recattr when doing sorted scan (for faster comparision)
    make sure handler maps correct recattr to correct mysql column


mysql-test/r/ndb_read_multi_range.result:
  bug#17729
mysql-test/t/ndb_read_multi_range.test:
  bug#17729
sql/ha_ndbcluster.cc:
  Make sure to map correct rec-attr against correct mysql column
    (ndbapi reorders when doing sorted scan)
2006-03-28 14:38:16 +02:00
unknown
9a139c3adb Merge mysql.com:/extern/mysql/bk/mysql-5.0-runtime
into  mysql.com:/extern/mysql/5.0/bug16474/mysql-5.0-runtime


mysql-test/t/sp.test:
  Auto merged
sql/sql_select.cc:
  Auto merged
mysql-test/r/sp.result:
  Manual merge.
2006-03-28 14:18:47 +02:00
unknown
537ec1e6df Post review fixes for BUG#16474: SP crashed MySQL.
mysql-test/r/ps.result:
  Added test coverage for "order by" in prepared statements (related to BUG#16474).
mysql-test/r/sp.result:
  Added reference to test case for BUG#16474.
mysql-test/t/ps.test:
  Added test coverage for "order by" in prepared statements (related to BUG#16474).
mysql-test/t/sp.test:
  Added reference to test case for BUG#16474.
sql/sql_select.cc:
  Fixed comment and test for basic_const_item() instead of is_splocal().
2006-03-28 14:16:21 +02:00
unknown
e1cd462ea6 Merge mysql.com:/usr/home/bar/mysql-4.1.b15098
into  mysql.com:/usr/home/bar/mysql-5.0
Bug#15098


mysql-test/t/cast.test:
  Auto merged
mysql-test/r/cast.result:
  After merge fix
sql/field.cc:
  After merge fix
2006-03-28 17:07:26 +05:00
unknown
1d73c16b87 A fix and a test case for Bug#15683 "crash, Function on nested
VIEWs, Prepared statement": we didn't mark the nested views
as 'prelockng placeholders' when building the prelocking list. 
This resulted in these views being processed (merged, materialized)
before they are actually used. 


mysql-test/r/sp-prelocking.result:
  Test results fixed (Bug#15683)
mysql-test/t/sp-prelocking.test:
  Add a test case for Bug#15683
sql/sql_view.cc:
  When initializing tables used in a view, inherite 
  its 'prelocking_placeholder' flag. This flag is set when we're 
  opening the view in order to build the prelocking list for a query.
  In this case we should only calculate the list to 
  prelock, and should not merge neither this view nor any of the 
  nested views, of there are any. The flag is used to indicate this 
  mode.
2006-03-28 15:06:29 +04:00
unknown
5d621a1b97 Post review fix for Bug #15722 Engine_condition_pushdown fails when using blobs(text) 2006-03-28 11:46:35 +02:00
unknown
3372c31d12 Fix for Bug #15722 Engine_condition_pushdown fails when using blobs(text) 2006-03-28 09:59:20 +02:00
unknown
2568c2cfed Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0
into  rurik.mysql.com:/home/igor/mysql-5.0
2006-03-27 20:16:52 -08:00
unknown
b0654461df Fixed bug #18386.
An invalid assertion in Item_direct_view_ref::eq caused 
an assertion abort in the debug version.


mysql-test/r/view.result:
  Added a test case for bug #18386.
mysql-test/t/view.test:
  Added a test case for bug #18386.
sql/item.cc:
  Fixed bug #18386.
  An invalid assertion in Item_direct_view_ref::eq caused 
  an assertion abort in the debug version.
  Changed the assertion.
2006-03-27 18:28:55 -08:00
unknown
e4e2e5024a Fix for BUG#15921: DROP TRIGGER - can't be drop trigger created
in older version.

The problem is that TRN-files created in "old" versions contain
junk in trigger_table field, which is not acceptable in "new" versions.


sql/parse_file.cc:
  1. Made parse_escaped_string() available globally;
  2. Polishing: fixing the comments.
sql/parse_file.h:
  Made parse_escaped_string() available globally.
sql/sql_trigger.cc:
  1. Polishing
  2. Removed declaration of global handle_old_incorrect_sql_modes()
     since it is not used anymore.
  3. Added a hook to support invalid "trigger_table" field in TRN-file
     from old versions.
2006-03-28 01:01:51 +04:00
unknown
2a70440543 Merge rurik.mysql.com:/home/igor/mysql-5.0
into  rurik.mysql.com:/home/igor/dev/mysql-5.0-0
2006-03-24 12:56:31 -08:00
unknown
c0579144d5 Fixed bug #17164.
If the WHERE condition of a query contained an ORed FALSE term
then the set of tables whose rows cannot serve for null complements
in outer joins was determined incorrectly. It resulted in blocking 
possible conversions of outer joins into joins for such queries.


mysql-test/r/join_outer.result:
  Added a test case for bug #17164.
mysql-test/t/join_outer.test:
  Added a test case for bug #17164.
2006-03-24 12:44:54 -08:00
unknown
bb7e682809 Follow-up for the fix for bug #18153 "ALTER/OPTIMIZE/REPAIR on transactional
tables corrupt triggers".

It turned out that we also have relied at certain places that
(new_table != table_name) were always true on Windows and for transactional
tables. Since our fix for the bug brakes this assumption we have to add new
flag to pass this information around.
This code needs to be refactored but I dare not to do this in 5.0.


sql/sql_table.cc:
  mysql_alter_table():
    Follow-up for the fix for bug #18153 "ALTER/OPTIMIZE/REPAIR on
    transactional tables corrupt triggers". It turned out that we also have
    relied at certain places that (new_table != table_name) were always true
    on Windows and for transactional tables. Since our fix for the bug brakes
    this assumption we have to add new flag to pass this information around.
    This code needs to be refactored but I dare not to do this in 5.0.
2006-03-24 22:46:33 +03:00
unknown
98dfa6a1eb Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/dlenev/mysql-5.0-bg18153
2006-03-24 16:46:37 +03:00
unknown
5d119bf62c Merge bk-internal:/home/bk/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0
2006-03-24 13:56:05 +01:00
unknown
c62de1d5a8 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/dlenev/mysql-5.0-bg18153
2006-03-24 15:28:08 +03:00
unknown
a389ec0b1b Fix for bug #18153 "ALTER/OPTIMIZE/REPAIR on transactional tables corrupt
triggers".

Applying ALTER/OPTIMIZE/REPAIR TABLE statements to transactional table or to
table of any type on Windows caused disappearance of its triggers.
Bug was introduced in 5.0.19 by my fix for bug #13525 "Rename table does not
keep info of triggers" (see comment for sql_table.cc for more info).
.


mysql-test/r/trigger.result:
  Added test-case covering handling of triggers when one does ALTER TABLE which
  should move table to different database.
mysql-test/t/trigger.test:
  Added test-case covering handling of triggers when one does ALTER TABLE which
  should move table to different database.
sql/sql_table.cc:
  mysql_alter_table():
    Removal of strdup() which is no longer necessary allows us to preserve
    nice assumption that "(new_db != db || new_table != table_name) indicates
    that table will be renamed. So now we really can use this condition to
    avoid updating trigger definitions when table is not renamed.
    Note that we can't use (alter_info->flags & ALTER_RENAME) condition instead
    since it can be also true when we do "ALTER TABLE t1 RENAME TO t1".
sql/sql_trigger.cc:
  Table_triggers_list::change_table_name():
    Mentioned assumption that subject table is not renamed to itself in method
    description. Added DBUG_ASSERT() to catch wrong usage of this method.
mysql-test/r/trigger-trans.result:
  New BitKeeper file ``mysql-test/r/trigger-trans.result''
mysql-test/t/trigger-trans.test:
  New BitKeeper file ``mysql-test/t/trigger-trans.test''
2006-03-24 14:58:18 +03:00
unknown
7c8acd5931 Fix 'metaphon' function to correctly calculate the length of the returned string
sql/udf_example.cc:
  Calculate length of returned string correctly
2006-03-24 11:12:32 +01:00
unknown
72470a9828 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/usr/local/home/marty/MySQL/mysql-5.0
2006-03-24 10:52:44 +01:00
unknown
cebcd28232 If doing write, then peeking is not needed 2006-03-24 10:45:00 +01:00
unknown
2711b9d5de Remove DBUG print that looks at args[0] even if arg_count is 0 2006-03-23 21:45:00 +01:00
unknown
52c4dbd88b Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  shellback.(none):/home/msvensson/mysql/mysql-5.0


client/mysqltest.c:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
2006-03-23 18:58:53 +01:00
unknown
65942df9c9 Post review fix of Bug#17431 INSERT IGNORE INTO returns failed: 1296: err 4350 'Transaction already aborted', shared locking is sufficient
sql/ha_ndbcluster.cc:
  Post review fix of Bug#17431 INSERT IGNORE INTO returns failed: 1296: err 4350 'Transacti
2006-03-23 15:20:24 +01:00
unknown
de752e89ea Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/usr/home/ram/work/mysql-5.0
2006-03-23 18:11:40 +04:00
unknown
abffce9cad Fix for bug #18306: MySQL crashes and restarts using subquery
mysql-test/r/subselect.result:
  Fix for bug #18306: MySQL crashes and restarts using subquery
  test case
mysql-test/t/subselect.test:
  Fix for bug #18306: MySQL crashes and restarts using subquery
  test case
sql/opt_range.cc:
  Fix for bug #18306: MySQL crashes and restarts using subquery
  Restore thd->mem_root because
  during the cond->val_int() evaluation we can come across a subselect 
  item which may allocate memory on the thd->mem_root and assumes
  all the memory allocated has the same life span as the subselect
  item itself.
2006-03-23 18:09:35 +04:00
unknown
6e73098f85 Fix for Bug#17431 INSERT IGNORE INTO returns failed: 1296: err 4350 'Transaction already aborted' 2006-03-23 09:48:46 +01:00
unknown
8c8e0567c7 Merge mysql.com:/usr/home/bar/mysql-4.1.b15376
into  mysql.com:/usr/home/bar/mysql-5.0


BitKeeper/deleted/.del-ctype-cp932.c:
  Auto merged
mysql-test/t/ctype_ujis.test:
  Auto merged
sql/sql_string.cc:
  Auto merged
strings/ctype-big5.c:
  Auto merged
strings/ctype-bin.c:
  Auto merged
strings/ctype-euc_kr.c:
  Auto merged
strings/ctype-gb2312.c:
  Auto merged
strings/ctype-gbk.c:
  Auto merged
strings/ctype-latin1.c:
  Auto merged
strings/ctype-simple.c:
  Auto merged
strings/ctype-sjis.c:
  Auto merged
strings/ctype-tis620.c:
  Auto merged
strings/ctype-ucs2.c:
  Auto merged
strings/ctype-ujis.c:
  Auto merged
strings/ctype-utf8.c:
  Auto merged
include/m_ctype.h:
  After merge fix.
mysql-test/r/ctype_ujis.result:
  After merge fix
2006-03-23 12:41:28 +04:00
unknown
0003994a5f Fix unused variable warning
sql/parse_file.cc:
  Remove unused variable
2006-03-22 22:37:32 +01:00
unknown
be47bcecb6 Merge perch.ndb.mysql.com:/home/jonas/src/41-work
into  perch.ndb.mysql.com:/home/jonas/src/50-work


mysql-test/lib/mtr_timer.pl:
  Auto merged
ndb/src/kernel/blocks/ERROR_codes.txt:
  Auto merged
ndb/src/kernel/blocks/dbdih/Dbdih.hpp:
  Auto merged
ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
  Auto merged
ndb/src/kernel/blocks/dbtc/Dbtc.hpp:
  Auto merged
ndb/src/kernel/blocks/qmgr/QmgrMain.cpp:
  Auto merged
ndb/src/ndbapi/NdbTransaction.cpp:
  Auto merged
ndb/src/ndbapi/TransporterFacade.hpp:
  Auto merged
ndb/test/ndbapi/testNodeRestart.cpp:
  Auto merged
ndb/test/run-test/Makefile.am:
  Auto merged
ndb/test/src/NdbRestarter.cpp:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
  merge
ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
  merge
ndb/src/ndbapi/Ndbif.cpp:
  merge
ndb/src/ndbapi/TransporterFacade.cpp:
  merge
ndb/test/ndbapi/testTimeout.cpp:
  merge
ndb/test/run-test/daily-basic-tests.txt:
  merge
ndb/tools/desc.cpp:
  merge
2006-03-22 15:24:32 +01:00
unknown
4399da26b4 Merge mysql.com:/usr/home/bar/mysql-4.1.b18004
into  mysql.com:/usr/home/bar/mysql-5.0


sql/table.cc:
  Auto merged
2006-03-22 13:11:31 +04:00
unknown
16c47ef42d Merge bk-internal:/home/bk/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0
2006-03-21 20:08:25 +01:00
unknown
bda51a4275 Merge mysql.com:/home/bkroot/mysql-5.0
into  mysql.com:/home/bk/b18293-mysql-5.0
2006-03-21 14:37:41 +01:00