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.
resolve_const_item() assumed to be not called for Item_row items. For
ensuring that DBUG_ASSERT(0) was set there.
This patch adds section for Item_row items. If it can it recursively calls
resolve_const_item() for each item the Item_row contains. If any of the
contained items is null then whole Item_row substitued by Item_null. Otherwise
it just returns.
sql/item.cc:
Fix bug#13356 resolve_const_item() wasn't able to handle Item_row items.
Added section to resolve_const_item() for Item_row items. If it can it
recursively calls resolve_const_item() for each item the Item_row contains. If
any of the contained items is null then Item_row is substituted by Item_null.
Otherwise it just returns.
Comment moved closer to function it belongs to.
mysql-test/t/select.test:
Test case for bug#13356 resolve_const_item() wasn't able to handle Item_row items.
mysql-test/r/select.result:
Test case for bug#13356 resolve_const_item() wasn't able to handle Item_row items.
myisam/mi_check.c:
info->s->state.checksum moved to info->state->checksum
myisam/mi_delete.c:
info->s->state.checksum moved to info->state->checksum
myisam/mi_delete_all.c:
info->s->state.checksum moved to info->state->checksum
myisam/mi_open.c:
info->s->state.checksum moved to info->state->checksum
myisam/mi_update.c:
info->s->state.checksum moved to info->state->checksum
myisam/mi_write.c:
info->s->state.checksum moved to info->state->checksum
myisam/myisamchk.c:
info->s->state.checksum moved to info->state->checksum
myisam/myisamdef.h:
info->s->state.checksum moved to info->state->checksum
myisam/myisampack.c:
info->s->state.checksum moved to info->state->checksum
mysql-test/r/system_mysql_db.result:
result fixed
sql/ha_myisam.cc:
info->s->state.checksum moved to info->state->checksum
procedure variable
Second version, after review.
Keep the unsigned_flag in Item_decimal updated. Note that this also changed
the result of several old test results - creating tables from decimal
templates now gives unsigned columns and different sizes. (Several tests
had Length > Max_length before.)
mysql-test/r/case.result:
Updated result (after fixing BUG#12589).
mysql-test/r/metadata.result:
Updated result (after fixing BUG#12589).
mysql-test/r/ps_2myisam.result:
Updated result (after fixing BUG#12589).
mysql-test/r/ps_3innodb.result:
Updated result (after fixing BUG#12589).
mysql-test/r/ps_4heap.result:
Updated result (after fixing BUG#12589).
mysql-test/r/ps_5merge.result:
Updated result (after fixing BUG#12589).
mysql-test/r/ps_6bdb.result:
Updated result (after fixing BUG#12589).
mysql-test/r/ps_7ndb.result:
Updated result (after fixing BUG#12589).
mysql-test/r/sp.result:
New test case for BUG#12589.
mysql-test/r/type_newdecimal.result:
Updated result (after fixing BUG#12589).
mysql-test/t/sp.test:
New test case for BUG#12589.
sql/item.cc:
Keep the unsigned_flag updated in Item_splocal and Item_decimal.
into mysql.com:/home/mydev/mysql-4.1-4100
mysql-test/r/merge.result:
Bug#9112 - Merge table with composite index producing invalid results with some queries
Manual merge
mysql-test/t/merge.test:
Bug#9112 - Merge table with composite index producing invalid results with some queries
Manual merge
Reduced the precision of the test numbers.
Not all platforms could reproduce the exact numbers.
mysql-test/r/merge.result:
Bug#9112 - Merge table with composite index producing invalid results with some queries
The new test result
mysql-test/r/type_decimal.result:
test result fixed
mysql-test/r/type_float.result:
test result fixed
mysql-test/t/type_decimal.test:
test case added
mysql-test/t/type_float.test:
test case added
sql/item.cc:
Fixed counting of the max_length for the REAL_RESULT
Fixed bug #13410.
Fixed name resolution for qualified reference to a view column
in the HAVING clause.
view.result, view.test:
Added a test case for bug #13410.
mysql-test/t/view.test:
Added a test case for bug #13410.
mysql-test/r/view.result:
Added a test case for bug #13410.
sql/item.cc:
Fixed bug #13410.
Fixed name resolution for qualified reference to a view column
in the HAVING clause.
Changes per serg to http://lists.mysql.com/internals/30281
Re-enabled --delayed-insert
client/mysqldump.c:
BUG #7815
Changes per serg on patch: http://lists.mysql.com/internals/30281
1. Re-enabled --delayed-insert
- modified options, removed code that was in place until bug was
fixed
2. Moved the call to get_table_structure to dump_table
- Use added 'ignore_flag' variable to determine what exactly is
being ignored - whole table or just delayed insert ability
3. Changed return type of ignore_table to char with byte value that
determines what exactly is being ignored - the whole table, or
delayed inserts
4. Added ignore_table flags IGNORE_DATA and IGNORE_INSERT_DELAYED
5. Added logic in get_table_structure to not append INSERT data text
if the table's data isn't going to be dumped because the return
value from ignore_table is IGNORE_DATA
6. Changed the name of numFields to numfields. Studly caps aren't
consistent with the rest of the code!
7. Added inclusive list to check_if_ignore_table to set the flag to
IGNORE_INSERT_DELAYED if the table type doesn't support delayed
inserts.
8. More documentation
mysql-test/r/mysqldump.result:
BUG #7815 new results
mysql-test/r/mysqldump-max.result:
BUG #7815
New test results
mysql-test/t/mysqldump-max.test:
BUG #7815
New test for testing if insert delayed is applied to tables that support
it in mysqldump, but only if all storage engines in test have been compiled
in
Fixed bug #13411.
Fixed name resolution for non-qualified reference to a view column
in the HAVING clause.
view.result, view.test:
Added a test case for bug #13411.
mysql-test/t/view.test:
Added a test case for bug #13411.
mysql-test/r/view.result:
Added a test case for bug #13411.
sql/item.cc:
Fixed bug #13411.
Fixed name resolution for non-qualified reference to a view column
in the HAVING clause.
sql/sql_base.cc:
Fixed bug #13411.
Fixed name resolution for non-qualified reference to a view column
in the HAVING clause.
Search the chain of sp_rcontexts recursively for handlers. If one is found,
it will be detected in the sp_head::execute() method at the corresponding
level.
mysql-test/r/sp.result:
New test case for BUG#7049.
Note that the spurious warnings in the BUG#12379 test now are gone (as expected).
mysql-test/t/sp.test:
New test case for BUG#7049.
sql/sp_head.cc:
Link sp_rcontexts to allow catching errors across invokation boundaries.
(Also fixed print method for the hreturn instruction.)
sql/sp_rcontext.cc:
Link sp_rcontexts to allow catching errors across invokation boundaries.
If a handler is not found in the current sp_rcontext, recurse into the previous ones (if any).
sql/sp_rcontext.h:
Link sp_rcontexts to allow catching errors across invokation boundaries.
Replaced the dumb in-handler/not-in-handler check with a proper recursion
check of handlers being executed.
(Re-commit in a different tree, to make push possible.)
mysql-test/r/sp.result:
New test case for BUG#6127.
mysql-test/t/sp.test:
New test case for BUG#6127.
sql/sp_head.cc:
Replaced the setting of ctx->in_handler with a enter/exit handler methods.
sql/sp_rcontext.cc:
Replaced the boolean in_handler flag with a stack of handlers being exectuted, for proper recursion check.
sql/sp_rcontext.h:
Replaced the boolean in_handler flag with a stack of handlers being exectuted, for proper recursion check.
(And added some comments in the sp_rcontext class.)
For LOCK view is opened but not prepared thus leaving 'table' field set to
NULL. invalidate_locked_for_write() wasn't checking that and call to
invalidate_table(NULL) crashes server.
To invalidate_locked_for_write() added check that ensures that table is
completely opened.
sql/sql_cache.cc:
Fix bug #13424 locking view with query cache enabled crashes server
Added check that table is completely opened.
mysql-test/t/view_query_cache.test:
Test case for bug#13424 locking view with query cache enabled crashes server
mysql-test/r/view_query_cache.result:
Test case for bug#13424 locking view with query cache enabled crashes server
client/mysql.cc:
Don't use c_ptr() for cgets() and ensure buffer is not overwritten
mysql-test/r/cast.result:
More test for CAST(0x.... as signed)
sql/opt_sum.cc:
Fix bugs found during review
- Changed code to be able to remove one if
- Ensure that count == 0 only if is_exact_count == TRUE
sql/sql_delete.cc:
Ensure 'allow_sum_func' is reset before call to setup_conds
sql/sql_lex.cc:
allow_sum_func doesn't have to be reset for each query
(It's to be reset in setup_fields() or before call to setup_conds()
sql/sql_load.cc:
Move set of auto_increment_field_not_null so that it's not set if field value is NULL
sql/sql_prepare.cc:
allow_sum_func doesn't have to be reset for each query
(It's to be reset in setup_fields() or before call to setup_conds()
sql/sql_update.cc:
Ensure 'allow_sum_func' is reset before call to setup_conds
myisam/mi_check.c:
Auto merged
myisam/myisamchk.c:
Auto merged
mysql-test/r/myisam.result:
Auto merged
mysql-test/t/func_in.test:
Auto merged
sql/ha_myisam.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_select.cc:
Manually merged.
into mysql.com:/home/mydev/mysql-5.0-5000
myisam/mi_dbug.c:
Auto merged
myisam/mi_rkey.c:
Auto merged
myisam/mi_search.c:
Auto merged
myisam/myisamdef.h:
Auto merged
mysql-test/r/merge.result:
Auto merged
mysql-test/t/merge.test:
Auto merged
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.
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.
mysql-test/r/loaddata.result:
Add drop tablea after test case
mysql-test/r/type_decimal.result:
Update warnings
mysql-test/r/union.result:
Miss in merge
mysql-test/t/loaddata.test:
Add drop table after test case
sql/opt_sum.cc:
Add missing }
sql/sql_load.cc:
Manual merge
not equivalent to "x=y" when item->negated == TRUE.
mysql-test/r/func_in.result:
Testcase for BUG#13419
mysql-test/t/func_in.test:
Testcase for BUG#13419
sql/sql_select.cc:
Fix for BUG#13419:
* Take into account that item=Item_func_in(x,y) is not equivalent to "x=y" when
item->negated == TRUE.
* Removed comment that is no longer true.
into mysql.com:/home/mydev/mysql-4.1-4100
myisam/mi_dbug.c:
Auto merged
myisam/mi_rkey.c:
Auto merged
myisam/mi_search.c:
Auto merged
myisam/myisamdef.h:
Auto merged
myisammrg/myrg_rkey.c:
Bug#9112 - Merge table with composite index producing invalid results with some queries
Manual merge
mysql-test/r/merge.result:
Bug#9112 - Merge table with composite index producing invalid results with some queries
Manual merge
mysql-test/t/merge.test:
Bug#9112 - Merge table with composite index producing invalid results with some queries
Manual merge
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.
The problem was an ab-use of last_rkey_length.
Formerly we saved the packed key length (of the search key)
in this element. But in certain cases it got replaced by
the (packed) result key length.
Now we use a new element of MI_INFO to save the packed key
length of the search key.
myisam/mi_dbug.c:
Bug#9112 - Merge table with composite index producing invalid results with some queries
Fixed the recognition of NULL values in _mi_print_key().
myisam/mi_rkey.c:
Bug#9112 - Merge table with composite index producing invalid results with some queries
Saved the packed key length in a new element of MI_INFO.
myisam/mi_search.c:
Bug#9112 - Merge table with composite index producing invalid results with some queries
Added a comment and trace prints.
myisam/myisamdef.h:
Bug#9112 - Merge table with composite index producing invalid results with some queries
Added a new element to store the packed key length
for use by the MyISAMMRG engine.
myisammrg/myrg_rkey.c:
Bug#9112 - Merge table with composite index producing invalid results with some queries
Changed to use the new element of MI_INFO to get at the
packed key length.
mysql-test/r/merge.result:
Bug#9112 - Merge table with composite index producing invalid results with some queries
The test result.
mysql-test/t/merge.test:
Bug#9112 - Merge table with composite index producing invalid results with some queries
The test case.