into a88-113-38-195.elisa-laajakaista.fi:/home/my/bk/mysql-4.1
include/thr_alarm.h:
Auto merged
mysys/my_pthread.c:
Auto merged
BUILD/SETUP.sh:
Merged from 4.0
configure.in:
Merged from 4.0
include/my_global.h:
Merged from 4.0
include/my_pthread.h:
Merged from 4.0
mysys/thr_alarm.c:
Merged from 4.0
sql/mysqld.cc:
Merged from 4.0
BUILD/SETUP.sh.rej:
Merged from 4.0
configure.in.rej:
Merged from 4.0
include/my_global.h.rej:
Merged from 4.0
include/my_pthread.h.rej:
Merged from 4.0
mysys/thr_alarm.c.rej:
Merged from 4.0
sql/mysqld.cc.rej:
Merged from 4.0
Fix to check library in use during runtime.
Fix for Bug#16995, "idle connections not being killed due to timeout when NPTL is used".
BUILD/SETUP.sh:
To avoid warnings during compilation.
configure.in:
Fixed configure so that it can correctly detect
between NPTL and Linuxthreads.
include/my_global.h:
Fix for Linuxthreads.
include/my_pthread.h:
Added defines for different libraries that can be detected.
Currently only 'other', 'nptl', and 'lt' (linuxthreads) are
being used.
changed sigset() and signal() to my_sigset() and my_signal()
include/thr_alarm.h:
Removed defines for Linuxthreads. This is now detected during
runtime and handled in the thr_alarm.c
mysys/my_pthread.c:
Runtime check for library.
mysys/thr_alarm.c:
Runtime checks for library and corresponding
signals.
sql/mysqld.cc:
Added function for detecting thread library in use
during start-up.
THR_KILL_SIGNAL removed, setting signals during runtime.
tables' lock."
Execution of ALTER TABLE ... ENABLE KEYS on a table (which can take rather
long time) prevented concurrent execution of all statements using tables.
The problem was caused by the fact that we were holding LOCK_open mutex
during whole duration of this statement and particularly during call
to handler::enable_indexes(). This behavior was introduced as part of the
fix for bug 14262 "SP: DROP PROCEDURE|VIEW (maybe more) write to binlog
too late (race cond)"
The patch simply restores old behavior. Note that we can safely do this as
this operation takes exclusive lock (similar to name-lock) which blocks both
DML and DDL on the table being altered.
It also introduces mysql-test/include/wait_show_pattern.inc helper script
which is used to make test-case for this bug robust enough.
mysql-test/include/wait_slave_status.inc:
Now wait_slave_status.inc reuses more generic wait_output_matches.inc script.
sql/sql_table.cc:
mysql_alter_table():
Changed ALTER TABLE ... ENABLE/DISABLE KEYS not to hold LOCK_open mutex
during call to handler::enable_indexes() as the latter can take rather
long time and therefore such ALTER would block execution of all other
statements that use tables. We can safely do this as this operation takes
exclusive lock (similar to name-lock) on the table which is altered.
mysql-test/include/wait_show_pattern.inc:
New BitKeeper file ``mysql-test/include/wait_show_pattern.inc''
mysql-test/r/alter_table-big.result:
New BitKeeper file ``mysql-test/r/alter_table-big.result''
mysql-test/t/alter_table-big.test:
New BitKeeper file ``mysql-test/t/alter_table-big.test''
After fix for bug#21798 JOIN stores the pointer to the buffer for sorting
fields. It is used while sorting for grouping and for ordering. If ORDER BY
clause has more elements then the GROUP BY clause then a memory overrun occurs.
Now the length of the ORDER BY list is always passed to the
make_unireg_sortorder() function and it allocates buffer big enough to be
used for bigger list.
sql/sql_delete.cc:
Bug#25172: Not checked buffer size leads to a server crash.
Length parameter is initialized to 0 for the make_unireg_sortorder() function.
sql/sql_select.cc:
Bug#25172: Not checked buffer size leads to a server crash.
Now the length of the ORDER BY list is always passed to the
make_unireg_sortorder() function and it allocates buffer big enough to be
used for bigger list.
sql/sql_table.cc:
Bug#25172: Not checked buffer size leads to a server crash.
Length parameter is initialized to 0 for the make_unireg_sortorder() function.
sql/sql_update.cc:
Bug#25172: Not checked buffer size leads to a server crash.
Length parameter is initialized to 0 for the make_unireg_sortorder() function.
mysql-test/r/select.result:
Added a test case for bug#25172: Not checked buffer size leads to a server crash.
mysql-test/t/select.test:
Added a test case for bug#25172: Not checked buffer size leads to a server crash.
UNION over correlated and uncorrelated SELECTS.
In such subqueries each uncorrelated SELECT should be considered as
uncacheable. Otherwise join_free is called for it and in many cases
it causes some problems.
mysql-test/r/subselect.result:
Added a test case for bug #25219.
mysql-test/t/subselect.test:
Added a test case for bug #25219.
sql/mysql_priv.h:
Fixed bug #25219: crash for a query that contains an EXIST subquery with
UNION over correlated and uncorrelated SELECTS.
In such subqueries each uncorrelated SELECT should be considered as
uncacheable. Otherwise join_free is called for it and in many cases
it causes some problems.
Added a new flag UNCACHEABLE_UNITED for such SELECTs.
sql/sql_lex.cc:
Fixed bug #25219: crash for a query that contains an EXIST subquery with
UNION over correlated and uncorrelated SELECTS.
In such subqueries each uncorrelated SELECT should be considered as
uncacheable. Otherwise join_free is called for it and in many cases
it causes some problems.
Added a new flag UNCACHEABLE_UNITED for such SELECTs.
into mysql.com:/usr/home/ram/work/bug22533/my51-bug22533
mysql-test/r/select.result:
Auto merged
mysql-test/t/select.test:
Auto merged
sql/field.cc:
Auto merged
sql/item.cc:
Auto merged
into weblab.(none):/home/marcsql/TREE/mysql-5.1-24562-merge
mysql-test/r/alter_table.result:
Auto merged
mysql-test/t/alter_table.test:
Auto merged
sql/sql_yacc.yy:
Auto merged
- Fixes some things missed in myisam->maria port
- Moved variables that holds the state for the current row to 'cur_row'
- Changed most uchar * to byte * to be able to remove a lot of casts
- Removed RAID support
- Added CHECK for rows-in-block
- Added allocate_dynamic() for easier usage of dynamic rows when we know how many entries we will need
- Reorder columns after CREATE for more optimal row storage (for rows-in-block)
- Removed flag 'RRND_PRESERVER_LASTINX' (not needed)
- Extended ma_test_all.sh to test more completely all row formats
- New structs and variables to hold rows-in-block and bitmap information
- Added org_data_file_type in header to allow easy restore of old record format when doing maria_pack / maria_chk -u
- More virtual functions to handle different row types
- Pointer to row is now MARIA_RECORD_POS instead of my_off_t
- New header signature for MARIA index files
- Fixed bugs in ma_test1.c and ma_test2.c
- All key and row blocks are now of same size
- We now only have one link chain for deleted key blocks
include/m_string.h:
Define bzero_if_purify
include/maria.h:
Implementation of rows-in-block
include/my_base.h:
Implementation of rows-in-block
include/my_handler.h:
Cleanup macros
Added size_to_store_key_length()
include/my_sys.h:
Added 'allocate_dynamic()'
include/myisamchk.h:
Implementation of rows-in-block
mysys/array.c:
Added allocate_dynamic()
mysys/mf_keycache.c:
Moved DBUG_ENTER to it's right position
mysys/my_pread.c:
Ensure my_errno is always set
sql/filesort.cc:
Fixed some compiler warnings
sql/gen_lex_hash.cc:
Removed not needed 'inline'
sql/ha_maria.cc:
Implementation of rows-in-block
Fixed compiler warnings
sql/mysqld.cc:
Fixed setting of wrong variable
sql/uniques.cc:
Fixed compiler warnings
storage/maria/Makefile.am:
Implementation of rows-in-block
storage/maria/ma_check.c:
Removed RAID functions
Added support for CHECK of rows-in-blocks rows
storage/maria/ma_checksum.c:
Implementation of rows-in-block
storage/maria/ma_close.c:
Implementation of rows-in-block
storage/maria/ma_create.c:
Implementation of rows-in-block:
- Reorder columns
- All key blocks are now of same size
- Removed old RAID support
storage/maria/ma_dbug.c:
Implementation of rows-in-block
storage/maria/ma_delete.c:
Implementation of rows-in-block
storage/maria/ma_delete_all.c:
Implementation of rows-in-block
storage/maria/ma_dynrec.c:
info->rec_buff is now allocated through _ma_alloc_buffer()
Use new info->cur_row structure
storage/maria/ma_extra.c:
Implementation of rows-in-block
storage/maria/ma_ft_boolean_search.c:
Removed compiler warnings
Indentation fixes
storage/maria/ma_ft_nlq_search.c:
Removed compiler warnings
Indentation fixes
storage/maria/ma_ft_update.c:
Removed some casts
storage/maria/ma_fulltext.h:
Changed pointer type
storage/maria/ma_info.c:
Implementation of rows-in-block
More general _ma_report_error()
storage/maria/ma_init.c:
Implementation of rows-in-block
storage/maria/ma_key.c:
Implementation of rows-in-block
Removed some casts
storage/maria/ma_keycache.c:
Fixed DBUG entry
storage/maria/ma_locking.c:
Implementation of rows-in-block
storage/maria/ma_open.c:
Implementation of rows-in-block
storage/maria/ma_packrec.c:
Indentation fixes
Changed uchar * to byte * to make it possible to remove some casts
storage/maria/ma_page.c:
Implementation of rows-in-block
storage/maria/ma_range.c:
Implementation of rows-in-block
storage/maria/ma_rfirst.c:
Implementation of rows-in-block
storage/maria/ma_rkey.c:
Implementation of rows-in-block
Indentation fixes
storage/maria/ma_rlast.c:
Implementation of rows-in-block
storage/maria/ma_rnext.c:
Implementation of rows-in-block
storage/maria/ma_rnext_same.c:
Implementation of rows-in-block
storage/maria/ma_rprev.c:
Implementation of rows-in-block
storage/maria/ma_rrnd.c:
Implementation of rows-in-block
Removed flag 'RRND_PRESERVER_LASTINX', by not resetting lastinx (This is reset by maria_scan_init())
storage/maria/ma_rsame.c:
Implementation of rows-in-block
storage/maria/ma_rsamepos.c:
Implementation of rows-in-block
storage/maria/ma_rt_index.c:
Implementation of rows-in-block
storage/maria/ma_rt_index.h:
Implementation of rows-in-block
storage/maria/ma_rt_key.c:
Implementation of rows-in-block
storage/maria/ma_rt_key.h:
Implementation of rows-in-block
storage/maria/ma_rt_mbr.c:
Implementation of rows-in-block
storage/maria/ma_rt_mbr.h:
Implementation of rows-in-block
storage/maria/ma_rt_split.c:
Implementation of rows-in-block
storage/maria/ma_rt_test.c:
Indentation fix
storage/maria/ma_scan.c:
Implementation of rows-in-block
Added 'maria_scan_end()'
storage/maria/ma_search.c:
Implementation of rows-in-block
storage/maria/ma_sort.c:
Indentation fixes
uchar -> byte to be able to remove some casts
storage/maria/ma_sp_defs.h:
uchar * -> byte *
storage/maria/ma_sp_key.c:
uchar * -> byte *
storage/maria/ma_sp_test.c:
Indentation fixes
storage/maria/ma_static.c:
New header signature for MARIA
storage/maria/ma_statrec.c:
int -> my_bool functions
my_off_t -> MARIA_RECORD_POS
Fixed argument order for _ma_read_static_record()
storage/maria/ma_test1.c:
Implementation of rows-in-block
Fixed some bugs in VARCHAR and BLOB testing
storage/maria/ma_test2.c:
Implementation of rows-in-block
Fixed bug in BLOB testing
storage/maria/ma_test3.c:
Implementation of rows-in-block
storage/maria/ma_test_all.sh:
Run all tests with dynamic, static and block row formats
(For the moment we skip REPAIR test of rows-in-block as this is not yet implemented)
storage/maria/ma_unique.c:
Implementation of rows-in-block
storage/maria/ma_update.c:
Implementation of rows-in-block
storage/maria/ma_write.c:
Implementation of rows-in-block
Write of row is split into two parts, as rows-in-block format require us to do write of row before keys (to get row position) in contrast to all other row formats
storage/maria/maria_chk.c:
Implementation of rows-in-block
storage/maria/maria_def.h:
Implementation of rows-in-block
- New structs and variables to hold rows-in-block and bitmap information
- Added org_data_file_type in header to allow easy restore of old record format when doing maria_pack / maria_chk -u
- More virtual functions to handle different row types
- Pointer to row is now MARIA_RECORD_POS instead of my_off_t
- uchar -> byte for many parameters to avoid casts
storage/maria/maria_ftdump.c:
Implementation of rows-in-block
storage/maria/maria_pack.c:
Implementation of rows-in-block
storage/myisam/mi_check.c:
Added new row types into switch to avoid compiler warnings
Added some casts to avoid warnings after changing type of lastkey and buff
storage/myisam/mi_create.c:
Fix that 'pack_fields' is calculated correctly
storage/myisam/mi_rsamepos.c:
Implementation of rows-in-block
storage/myisam/mi_test2.c:
Fixed wrong printf
storage/myisam/sort.c:
uchar * -> byte *
support-files/magic:
Added support for Maria files
Fided wrong entry's for MyISAM files
storage/maria/ma_bitmap.c:
New BitKeeper file ``storage/maria/ma_bitmap.c''
storage/maria/ma_blockrec.c:
New BitKeeper file ``storage/maria/ma_blockrec.c''
storage/maria/ma_blockrec.h:
New BitKeeper file ``storage/maria/ma_blockrec.h''
into siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/maint/51
client/mysql_upgrade.c:
Auto merged
client/mysqlbinlog.cc:
Auto merged
include/my_pthread.h:
Auto merged
include/my_sys.h:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/t/sp.test:
Auto merged
mysys/string.c:
Auto merged
sql/mysqld.cc:
Auto merged
mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_show.cc:
Auto merged
into siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/maint/51
client/mysqlbinlog.cc:
Auto merged
configure.in:
Auto merged
include/config-win.h:
Auto merged
include/my_global.h:
Auto merged
include/my_pthread.h:
Auto merged
mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/t/disabled.def:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/table.cc:
Auto merged
storage/myisam/mi_packrec.c:
Use local
into siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/maint/50
client/mysqlbinlog.cc:
Auto merged
include/my_pthread.h:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/t/mix_innodb_myisam_binlog.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_parse.cc:
Manual merge
crashes server
Check for null value is reliable only after calling some of the
val_xxx() methods. If the val_xxx() method is not called
the null_value flag will be set only for certain types of NULL
values (like SQL constant NULLs for example).
This caused a crash while trying to dereference a NULL pointer
that is returned by val_str() for NULL values.
Fixed by swapping the order of val_xxx() and null_value check.
mysql-test/r/udf.result:
Bug #25382: Passing NULL to an UDF called from stored procedures
crashes server
- test case
mysql-test/t/udf.test:
Bug #25382: Passing NULL to an UDF called from stored procedures
crashes server
- test case
sql/item_func.cc:
Bug #25382: Passing NULL to an UDF called from stored procedures
crashes server
- reliably check null_value
into siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/maint/51
BUILD/check-cpu:
Auto merged
configure.in:
Auto merged
include/my_global.h:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/r/type_enum.result:
Auto merged
mysql-test/r/udf.result:
Auto merged
mysql-test/r/view.result:
Auto merged
mysql-test/t/mysqladmin.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
mysql-test/t/type_enum.test:
Auto merged
mysql-test/t/view.test:
Auto merged
mysys/my_read.c:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
server-tools/instance-manager/Makefile.am:
Auto merged
sql/event_queue.cc:
Auto merged
sql/field.h:
Auto merged
sql/item_sum.h:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/share/errmsg.txt:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/table.cc:
Auto merged
storage/federated/ha_federated.cc:
Auto merged
server-tools/instance-manager/instance.cc:
Use remote (global 5.1 version)
sql/unireg.cc:
Use remote (5.1 global version)
mysql-test/t/trigger.test:
Manual merge
server-tools/instance-manager/guardian.cc:
Manual merge
into mysql.com:/usr/home/ram/work/bug22533/my50-bug22533
mysql-test/r/type_bit.result:
Auto merged
mysql-test/t/select.test:
Auto merged
sql/field.cc:
Auto merged
sql/item.cc:
Auto merged
into mysql.com:/usr/home/ram/work/bug22533/my51-bug22533
mysql-test/r/select.result:
Auto merged
mysql-test/r/type_bit.result:
Auto merged
mysql-test/t/select.test:
Auto merged
sql/field.cc:
Auto merged
sql/item.cc:
Auto merged
into mysql.com:/usr/home/ram/work/bug22533/my51-bug22533
mysql-test/r/range.result:
Auto merged
mysql-test/r/type_bit.result:
Auto merged
mysql-test/r/type_bit_innodb.result:
Auto merged
sql/field.cc:
Auto merged
The problem was that if a prepared statement accessed a view, the
access to the tables listed in the query after that view was done in
the security context of the view.
The bug was in the assigning of the security context to the tables
belonging to a view: we traversed the list of all query tables
instead. It didn't show up in the normal (non-prepared) statements
because of the different order of the steps of checking privileges
and descending into a view for normal and prepared statements.
The solution is to traverse the list and stop once the last table
belonging to the view was processed.
mysql-test/r/view_grant.result:
Add result for bug#24404: strange bug with view+permission+prepared
statement.
mysql-test/t/view_grant.test:
Add test case for bug#24404: strange bug with view+permission+prepared
statement.
sql/sql_view.cc:
Remove dead line.
When setting security context, we should traverse the list of tables
belonging to a given view, not all query tables. We achieve that by
stopping at the first table past view_tables_tail.
into mysql.com:/usr/home/ram/work/bug22533/my51-bug22533
mysql-test/t/range.test:
Auto merged
sql/item.cc:
Auto merged
mysql-test/r/select.result:
merging
mysql-test/t/select.test:
merging
when they contain the '!' operator.
Added an implementation for the method Item_func_not::print.
The method encloses any NOT expression into extra parentheses to avoid
incorrect stored representations of views that use the '!' operators.
Without this change when a view was created that contained
the expression !0*5 its stored representation contained not this
expression but rather the expression not(0)*5 .
The operator '!' is of a higher precedence than '*', while NOT is
of a lower precedence than '*'. That's why the expression !0*5
is interpreted as not(0)*5, while the expression not(0)*5 is interpreted
as not((0)*5) unless sql_mode is set to HIGH_NOT_PRECEDENCE.
Now we translate !0*5 into (not(0))*5.
mysql-test/r/sp-code.result:
Adjusted results after the fix of bug 25580.
mysql-test/r/subselect.result:
Adjusted results after the fix of bug 25580.
mysql-test/r/view.result:
Added a test case for bug #25580.
mysql-test/t/view.test:
Added a test case for bug #25580.
sql/item_cmpfunc.cc:
Fixed bug #25580: incorrect stored representations of views in cases
when they contain the '!' operator.
Added an implementation for the method Item_func_not::print.
The method encloses the NOT expression into extra parenthesis to avoid
incorrect stored representations of views that use the '!' operators.
sql/item_cmpfunc.h:
Fixed bug #25580: incorrect stored representations of views in cases
when they contain the '!' operator.
Added an implementation for the method Item_func_not::print.
The method encloses the NOT expression into extra parenthesis to avoid
incorrect stored representations of views that use the '!' operators.
into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge
client/mysqlbinlog.cc:
Auto merged
client/mysqldump.c:
Auto merged
include/my_pthread.h:
Auto merged
mysql-test/t/disabled.def:
Auto merged
mysys/my_thr_init.c:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/set_var.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_locale.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/log_event.cc:
Manual merge
into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge
configure.in:
Auto merged
sql/CMakeLists.txt:
Auto merged
sql/field.h:
Auto merged
sql/handler.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sp_head.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/table.cc:
Auto merged
into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge
sql/item_timefunc.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/mysqld.cc:
Once again, disable symlink.test under valgrind builds. symlink.test
fails deep in mi_repair - the result of this having been disabled
for almost 5 years.
by the patch for Bug#4968
sql/sql_parse.cc:
Fix lowercase_tables2 test failure on powermacg5: table_case_name()
function needed create_info.alias if lowercase_table_names=2, which
was not set for the stack copy of HA_CREATE_INFO. Move the
update of create_info.alias from create_table_precheck to
mysql_execute_command, so that it is done on the right object.