1
0
mirror of https://github.com/MariaDB/server.git synced 2025-11-08 00:28:29 +03:00
Commit Graph

21999 Commits

Author SHA1 Message Date
unknown
c06d3d7071 Post-merge fixes to make binlog test suite pass.
mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test:
  Fixing test to use different positions depending on binlog format.
mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result:
  Result change.
mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result:
  Result change.
mysql-test/suite/binlog/t/binlog_row_mix_innodb_myisam.test:
  Removing part of test that does not work any more.
mysql-test/suite/binlog/t/binlog_stm_mix_innodb_myisam.test:
  Removing part of test that does not work any more.
2008-01-11 12:35:35 +01:00
unknown
a114ede24a Bug#33699: The UPDATE statement allows NULL as new value on a NOT NULL
columns (default datatype value is assigned).

The mysql_update function has been modified to generate
an error when trying to set a NOT NULL field to NULL rather than a warning
in the set_field_to_null_with_conversions function.



mysql-test/extra/rpl_tests/rpl_extraMaster_Col.test:
  Updated test case (for bug#33699).
mysql-test/include/ps_modify.inc:
  Updated test case (for bug#33699).
mysql-test/r/auto_increment.result:
  Updated test case (for bug#33699).
mysql-test/r/null.result:
  Updated test case (for bug#33699).
mysql-test/r/ps_2myisam.result:
  Updated test case (for bug#33699).
mysql-test/r/ps_3innodb.result:
  Updated test case (for bug#33699).
mysql-test/r/ps_4heap.result:
  Updated test case (for bug#33699).
mysql-test/r/ps_5merge.result:
  Updated test case (for bug#33699).
mysql-test/r/warnings.result:
  Updated test case (for bug#33699).
mysql-test/suite/ndb/r/ps_7ndb.result:
  Updated test case (for bug#33699).
mysql-test/suite/rpl/r/rpl_extraColmaster_innodb.result:
  Updated test case (for bug#33699).
mysql-test/suite/rpl/r/rpl_extraColmaster_myisam.result:
  Updated test case (for bug#33699).
mysql-test/suite/rpl/t/rpl_err_ignoredtable.test:
  Updated test case (for bug#33699).
mysql-test/t/auto_increment.test:
  Updated test case (for bug#33699).
mysql-test/t/null.test:
  Updated test case (for bug#33699).
mysql-test/t/warnings.test:
  Updated test case (for bug#33699).
sql/sql_update.cc:
  Bug#33699: The mysql_update function has been modified to generate
  an error when trying to set a NOT NULL field to NULL rather than
  a warning in the set_field_to_null_with_conversions function.
tests/mysql_client_test.c:
  Updated test case (for bug#33699).
2008-01-11 05:06:08 +04:00
unknown
266fde77b2 Added --loose-skip-maria to MYSQLD_BOOTSTRAP_CMD to get bootstrap.test to work
Allow one to run bootstrap even if --skip-maria is used (needed for bootstrap.test)
Fixed lots of compiler warnings

NOTE:
maria-big and maria-recover tests failes becasue of bugs in transaction log handling.
Sanja knows about this and is working on it!


mysql-test/mysql-test-run.pl:
  Added --loose-skip-maria to MYSQLD_BOOTSTRAP_CMD to get bootstrap.test to work
mysql-test/r/maria-recovery.result:
  Updated results
mysql-test/t/bootstrap.test:
  Removed not needed empty line
mysql-test/t/change_user.test:
  Fixed results for 32 bit systems
mysql-test/t/maria-big.test:
  Only run this when you use --big
mysql-test/t/maria-recovery.test:
  Added test case for recovery with big blobs
mysys/my_uuid.c:
  Fixed compiler warning
sql/mysqld.cc:
  Allow one to run bootstrap even if --skip-maria is used (needed for bootstrap.test)
sql/set_var.cc:
  Compare max_join_size with ULONG_MAX instead of HA_POS_ERROR as we set max_join_size to ULONG_MAX by default
storage/maria/ma_bitmap.c:
  Added __attribute((unused)) to fix compiler warning
storage/maria/ma_blockrec.c:
  Added casts to remove compiler warnings
  Change variable types to avoid compiler warnings
storage/maria/ma_check.c:
  Added casts to remove compiler warnings
storage/maria/ma_checkpoint.c:
  Change variable types to avoid compiler warnings
storage/maria/ma_create.c:
  Change variable types to avoid compiler warnings
storage/maria/ma_delete.c:
  Added casts to remove compiler warnings
storage/maria/ma_key_recover.c:
  Added casts to remove compiler warnings
storage/maria/ma_loghandler.c:
  Moved initiazation of prev_buffer first as this could otherwise not be set in case of errors
storage/maria/ma_page.c:
  Added casts to remove compiler warnings
storage/maria/ma_pagecache.c:
  Added __attribute((unused)) to fix compiler warning
storage/maria/ma_pagecrc.c:
  Added #ifndef DBUG_OFF to remove compiler warning
storage/maria/ma_recovery.c:
  Added casts to remove compiler warnings
storage/maria/ma_write.c:
  Added casts to remove compiler warnings
storage/maria/maria_chk.c:
  Split long string into two to avoid compiler warnings
storage/myisam/ft_boolean_search.c:
  Added LINT_INIT() to remove compiler warning
support-files/compiler_warnings.supp:
  Suppress wrong compiler warning
unittest/mytap/tap.c:
  Fixed declaration to match prototypes to remove compiler warnings
2008-01-11 01:47:52 +02:00
unknown
5ad477f6cb Added --with-maria-tmp-tables (default one) to allow on to configure if Maria should be used for internal temporary tables
Abort mysqld if Maria engine didn't start and we are using Maria for temporary tables
Fixed bug that caused update of big blobs to crash
Use pagecache_page_no_t as type for pages (to get rid of compiler warnings)
Added cast to get rid of compiler warning
Fixed wrong types of variables and arguments that caused lost information
Fixed wrong DBUG_ASSERT() that caused REDO of big blobs to fail
Removed some historical ifdefs that caused problem with windows compilations


BUILD/SETUP.sh:
  Added --with-maria-tmp-tables
include/maria.h:
  Use pagecache_page_no_t as type for pages
  Use my_bool as parameter for 'rep_quick' option
include/my_base.h:
  Added comment
mysql-test/r/maria-big.result:
  Added test that uses big blobs
mysql-test/t/maria-big.test:
  Added test that uses big blobs
sql/mysqld.cc:
  Abort mysqld if Maria engine didn't start and we are using Maria for temporary tables
sql/sql_class.h:
  Don't use Maria for temporary tables if --with-maria-tmp-tables is not defined
sql/sql_select.cc:
  Don't use Maria for temporary tables if --with-maria-tmp-tables is not defined
storage/maria/ha_maria.cc:
  Fixed compiler warnings reported by MCC
  - Fixed usage of wrong types that caused data loss
  - Changed parameter for rep_quick to my_bool
  - Added safe casts
  
  Fixed indentation
storage/maria/ma_bitmap.c:
  Use pagecache_page_no_t as type for pages
  Fixed compiler warnings
  Fixed bug that caused update of big blobs to crash
storage/maria/ma_blockrec.c:
  Use pagecache_page_no_t as type for pages
  Use my_bool as parameter for 'rep_quick' option
  Fixed compiler warnings
  Fixed wrong DBUG_ASSERT()
storage/maria/ma_blockrec.h:
  Use pagecache_page_no_t as type for pages
storage/maria/ma_check.c:
  Fixed some wrong parameters where we didn't get all bits for test_flag
  Changed rep_quick to be of type my_bool
  Use pagecache_page_no_t as type for pages
  Added cast's to get rid of compiler warnings
  Changed type of record_pos to get rid of compiler warning
storage/maria/ma_create.c:
  Added safe cast's to get rid of compiler warnings
storage/maria/ma_dynrec.c:
  Fixed usage of wrong type
storage/maria/ma_key.c:
  Fixed compiler warning
storage/maria/ma_key_recover.c:
  Use pagecache_page_no_t as type for pages
storage/maria/ma_loghandler_lsn.h:
  Added cast's to get rid of compiler warnings
storage/maria/ma_page.c:
  Changed variable name from 'page' to 'pos' as it was an offset and not a page address
  Moved page_size inside block to get rid of compiler warning
storage/maria/ma_pagecache.c:
  Fixed compiler warnings
  Replaced compile time assert with TODO
storage/maria/ma_pagecache.h:
  Use pagecache_page_no_t as type for pages
storage/maria/ma_pagecrc.c:
  Allow bitmap pages that is all zero
storage/maria/ma_preload.c:
  Added cast to get rid of compiler warning
storage/maria/ma_recovery.c:
  Changed types to get rid of compiler warnings
  Use bool for quick_repair to get rid of compiler warning
  Fixed some variables that was wrongly declared (not enough precission)
  Added cast to get rid of compiler warning
storage/maria/ma_test2.c:
  Remove historical undefs
storage/maria/maria_chk.c:
  Changed rep_quick to bool
  Fixed wrong parameter to maria_chk_data_link()
storage/maria/maria_def.h:
  Use pagecache_page_no_t as type for pages
storage/maria/maria_pack.c:
  Renamed isam -> maria
storage/maria/plug.in:
  Added option --with-maria-tmp-tables
storage/maria/trnman.c:
  Added cast to get rid of compiler warning
storage/myisam/mi_test2.c:
  Remove historical undefs
2008-01-10 21:21:36 +02:00
unknown
824ced465e Merge kaamos.(none):/data/src/mysql-5.1
into  kaamos.(none):/data/src/opt/mysql-5.1-opt


client/mysql.cc:
  Auto merged
client/mysqltest.c:
  Auto merged
sql/log.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
2008-01-10 20:44:23 +03:00
unknown
84762ce2cb Merge kaamos.(none):/data/src/mysql-5.0
into  kaamos.(none):/data/src/opt/mysql-5.0-opt


client/mysql.cc:
  Auto merged
2008-01-10 20:43:05 +03:00
unknown
3a6e84a2b3 BUG#27779: Slave cannot read old rows log events.
Problem: Replication fails when master is mysql-5.1-wl2325-5.0-drop6 and
slave is mysql-5.1-new-rpl. The reason is that, in
mysql-5.1-wl2325-5.0-drop6, the event type id's were different than in
mysql-5.1-new-rpl.
Fix (in mysql-5.1-new-rpl):
 (1) detect that the server that generated the events uses the old
format, by checking the server version of the format_description_log_event
This patch recognizes mysql-5.1-wl2325-5.0-drop6p13-alpha,
mysql-5.1-wl2325-5.0-drop6, mysql-5.1-wl2325-5.0, mysql-5.1-wl2325-no-dd.
 (2) if the generating server is old, map old event types to new event
types using a permutation array.

I've also added a test case which reads binlogs for four different
versions.


mysql-test/suite/binlog/std_data/binlog_old_version_5_1-telco.000001:
  BitKeeper file /home/sven/bk/b27779-old_row_events/5.1-new-rpl/mysql-test/suite/binlog/std_data/binlog_old_version_5_1-telco.000001
mysql-test/suite/binlog/std_data/binlog_old_version_5_1-wl2325_row.000001:
  BitKeeper file /home/sven/bk/b27779-old_row_events/5.1-new-rpl/mysql-test/suite/binlog/std_data/binlog_old_version_5_1-wl2325_row.000001
mysql-test/suite/binlog/std_data/binlog_old_version_5_1-wl2325_stm.000001:
  BitKeeper file /home/sven/bk/b27779-old_row_events/5.1-new-rpl/mysql-test/suite/binlog/std_data/binlog_old_version_5_1-wl2325_stm.000001
mysql-test/suite/binlog/std_data/binlog_old_version_5_1_17.000001:
  BitKeeper file /home/sven/bk/b27779-old_row_events/5.1-new-rpl/mysql-test/suite/binlog/std_data/binlog_old_version_5_1_17.000001
mysql-test/suite/binlog/std_data/binlog_old_version_5_1_23.000001:
  BitKeeper file /home/sven/bk/b27779-old_row_events/5.1-new-rpl/mysql-test/suite/binlog/std_data/binlog_old_version_5_1_23.000001
sql/log_event.cc:
  Added code to read events generated by
  mysql-5.1-wl2325-5.0-drop6p13-alpha, mysql-5.1-wl2325-5.0-drop6,
  mysql-5.1-wl2325-5.0, mysql-5.1-wl2325-no-dd.
  More precisely, the event type id's had different numbers in
  those versions. To fix, we add a permutation array which maps old_id to
  new_id when the format_description_log_event indicates that the
  originating server is of the old type. We also need to permute the
  post_header_len array accordingly.
sql/log_event.h:
  sql/log_event.h@1.169, 2008-01-09 11:34:37+01:00, sven@riska.(none) +5 -1
  Added declaration needed in log_event.cc. Also, the destructor of
  Format_description_log_event is sometimes called when post_header_len is
  null, so we must pass the MY_ALLOW_ZERO_PTR flag to my_free.
mysql-test/suite/binlog/r/binlog_old_versions.result:
  Result file for new test.
mysql-test/suite/binlog/t/binlog_old_versions.test:
  New test case that loads binlogs from several old versions.
2008-01-10 16:39:44 +01:00
unknown
da11be8106 Merge dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-5.0/mysql-5.0-ndb
into  dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-5.0/mysql-5.0-ndb-bj


mysql-test/r/view.result:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
2008-01-10 20:04:21 +08:00
unknown
69ddcb8c4a Merge gni@bk-internal.mysql.com:/home/bk/mysql-5.1-new-ndb-bj
into  dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-5.1/mysql-5.1-new-ndb-bj
2008-01-10 19:52:54 +08:00
unknown
d8d857e0cc Merge dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-5.1/mysql-5.1-new-ndb
into  dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-5.1/mysql-5.1-new-ndb-bj


storage/ndb/src/kernel/blocks/backup/Backup.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/lgman.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/tsman.cpp:
  Auto merged
storage/ndb/test/ndbapi/testDict.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/ERROR_codes.txt:
  SCCS merged
storage/ndb/src/ndbapi/ndberror.c:
  SCCS merged
2008-01-10 19:49:32 +08:00
unknown
1040bea9ae Merge kaamos.(none):/data/src/opt/mysql-5.0-opt
into  kaamos.(none):/data/src/opt/mysql-5.1-opt


sql/field.h:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/item_timefunc.h:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
mysql-test/r/subselect.result:
  Manual merge.
mysql-test/t/subselect.test:
  Manual merge.
sql/filesort.cc:
  Manual merge.
2008-01-10 14:35:11 +03:00
unknown
3869d3630a Merge kaamos.(none):/data/src/opt/bug33305/my51-bug33305
into  kaamos.(none):/data/src/opt/mysql-5.1-opt


mysql-test/r/union.result:
  Auto merged
mysql-test/t/union.test:
  Auto merged
sql/field.cc:
  Auto merged
sql/field.h:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/item_timefunc.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
2008-01-10 13:46:34 +03:00
unknown
7085583c51 Merge kaamos.(none):/data/src/opt/bug33305/my50-bug33305
into  kaamos.(none):/data/src/opt/mysql-5.0-opt
2008-01-10 13:45:11 +03:00
unknown
10909bf44b Merge kaamos.(none):/data/src/opt/bug33305/my50-bug33305
into  kaamos.(none):/data/src/opt/bug33305/my51-bug33305


mysql-test/r/cast.result:
  Auto merged
mysql-test/r/type_date.result:
  Auto merged
mysql-test/r/union.result:
  Auto merged
mysql-test/t/cast.test:
  Auto merged
mysql-test/t/skip_grants.test:
  Auto merged
mysql-test/t/type_date.test:
  Auto merged
mysql-test/t/union.test:
  Auto merged
sql/field.cc:
  Auto merged
sql/field.h:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/item_timefunc.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
mysql-test/r/skip_grants.result:
  Manual merge.
2008-01-10 13:37:54 +03:00
unknown
b048153128 Shouldn't let the non-deterministic temperary filename output in result file for bug#30417
mysql-test/suite/ndb/r/ndb_autoinc.result:
  Temperory table name shouldn't output in result file for its name is non-deterministic
mysql-test/suite/ndb/t/ndb_autoinc.test:
  don't output temperary file name
2008-01-10 17:39:50 +08:00
unknown
ea0cfa8028 Merge gni@bk-internal.mysql.com:/home/bk/mysql-5.1-new-ndb-bj
into  dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-5.1/mysql-5.1-bug30417
2008-01-10 13:37:54 +08:00
unknown
3dba2ea82a Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  moonbone.local:/work/33675-bug-5.0-opt-mysql
2008-01-09 23:19:46 +03:00
unknown
d12cc6e066 merge of the fix for bug 33133 to 5.1-opt 2008-01-09 18:00:12 +02:00
unknown
e2584c9fa0 Merge macbook.gmz:/Users/kgeorge/mysql/work/B33133-5.0-opt
into  macbook.gmz:/Users/kgeorge/mysql/work/B33133-5.1-opt


mysql-test/r/func_group.result:
  Auto merged
mysql-test/t/func_group.test:
  Auto merged
sql/sql_base.cc:
  Auto merged
2008-01-09 17:10:09 +02:00
unknown
693f81f0f3 Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  magare.gmz:/home/kgeorge/mysql/autopush/B33133-5.0-opt


sql/sql_base.cc:
  Auto merged
2008-01-09 16:52:11 +02:00
unknown
ed2ab9338e fixed sorting differences in results. 2008-01-09 15:50:36 +01:00
unknown
06b68454ea Bug #33133: Views are not transparent
When resolving references we need to take into consideration
the view "fields" and allow qualified access to them.
Fixed by extending the reference resolution to process view
fields correctly.


mysql-test/r/func_group.result:
  Bug #33133: test case
mysql-test/t/func_group.test:
  Bug #33133: test case
sql/sql_base.cc:
  Bug #33133: allow qualified alias refs to view fields
2008-01-09 16:49:13 +02:00
unknown
d84a0e5caa Bug#31931 Partitions: unjustified 'mix of handlers' error message
Problem was that the mix of handlers was not consistent between
CREATE and ALTER

changed so that it works like:
    - All partitions must use the same engine
      AND it must be the same as the table.
    - if one does NOT specify an engine on the table level
      then one must either NOT specify any engine on any
      partition/subpartition OR for ALL partitions/subpartitions

Note: that after a table have been created, the storage engine
is specified for all parts of the table (table/partition/subpartition)
and so when using alter, one does not need to specify it (unless one
wants to change the storage engine, then one have to specify it on the
table level)


mysql-test/r/partition.result:
  Bug#31931 Partitions: unjustified 'mix of handlers' error message
  test result updated
mysql-test/r/partition_innodb.result:
  Bug#31931 Partitions: unjustified 'mix of handlers' error message
  test result updated
mysql-test/suite/ndb/r/ndb_partition_key.result:
  Bug#31931 Partitions: unjustified 'mix of handlers' error message
  test result updated
mysql-test/suite/ndb/t/ndb_partition_key.test:
  Bug#31931 Partitions: unjustified 'mix of handlers' error message
  test case update
mysql-test/suite/parts/inc/partition_engine.inc:
  Bug#31931 Partitions: unjustified 'mix of handlers' error message
  test case updated
mysql-test/suite/parts/r/ndb_partition_key.result:
  Bug#31931 Partitions: unjustified 'mix of handlers' error message
  test result updated
mysql-test/suite/parts/r/partition_engine_innodb.result:
  Bug#31931 Partitions: unjustified 'mix of handlers' error message
  test result updated
mysql-test/suite/parts/r/partition_engine_myisam.result:
  Bug#31931 Partitions: unjustified 'mix of handlers' error message
  test result updated
mysql-test/suite/parts/t/ndb_partition_key.test:
  Bug#31931 Partitions: unjustified 'mix of handlers' error message
  test case updated
mysql-test/t/partition.test:
  Bug#31931 Partitions: unjustified 'mix of handlers' error message
  test case updated
mysql-test/t/partition_innodb.test:
  Bug#31931 Partitions: unjustified 'mix of handlers' error message
  test case updated
sql/partition_info.cc:
  Bug#31931 Partitions: unjustified 'mix of handlers' error message
  moved the check_engine_condition here from sql_partition.cc
  created a new check_engine_mix from check_native_partitioned in
  sql_partition.cc
sql/partition_info.h:
  Bug#31931 Partitions: unjustified 'mix of handlers' error message
  non static function check_engine_mix (now used in sql_partition.cc)
sql/sql_partition.cc:
  Bug#31931 Partitions: unjustified 'mix of handlers' error message
  moved check_engine_condition to partition_info.cc and moved out some
  common code in check_native_partitioned to check_engine_mix in
  partition_info.cc
2008-01-09 13:15:50 +01:00
unknown
ac167eca6e Post-merge fixes to make tests pass.
mysql-test/r/binlog_start_comment.result:
  Result change.
mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result:
  Result change.
mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result:
  Result change.
mysql-test/suite/rpl/r/rpl_timezone.result:
  Result change.
mysql-test/suite/rpl_ndb/r/rpl_ndb_transaction.result:
  Result change.
mysql-test/suite/rpl_ndb/t/rpl_ndb_transaction.test:
  Masking out columns with binlog positions from slave status.
mysql-test/t/binlog_start_comment.test:
  Added missing drop table causing subsequent tests to fail.
sql/log_event.cc:
  Changing last_err* fields to client_last_err*
sql/log_event_old.cc:
  Changing last_err* fields to client_last_err*
2008-01-09 12:55:04 +01:00
unknown
19d9e946fb Disabled storedproc_06 for all engines due to bug 33464.
BitKeeper/etc/ignore:
  Added mysql-test/funcs_1.tar mysql-test/suite/funcs_1.tar.gz to the ignore list
2008-01-09 10:38:56 +01:00
unknown
9b14ac8d01 Fix for view.test.
the result should be added by 1 by the year(now()) function.


mysql-test/r/view.result:
  SELECT (year(now())-year(DOB)) AS Age FROM t1 HAVING Age < 75; 
  the above statement in test file has a year(now()) function, 
  the result should increase by 1 from 2007 year to 2008 year.
2008-01-09 14:51:08 +08:00
unknown
64f02f7db4 Merge gni@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb-bj
into  dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-5.0/bug29851


sql/ha_ndbcluster.cc:
  Auto merged
2008-01-09 11:17:50 +08:00
unknown
8845553a81 Bug#33675: Usage of an uninitialized memory by filesort in a subquery caused
server crash.

The filesort implementation has an optimization for subquery execution which
consists of reusing previously allocated buffers. In particular the call to
the read_buffpek_from_file function might be skipped when a big enough buffer
for buffer descriptors (buffpeks) is already allocated. Beside allocating
memory for buffpeks this function fills allocated buffer with data read from
disk. Skipping it might led to using an arbitrary memory as fields' data and
finally to a crash.

Now the read_buffpek_from_file function is always called. It allocates
new buffer only when necessary, but always fill it with correct data.


sql/filesort.cc:
  Bug#33675: Usage of an uninitialized memory by filesort in a subquery caused
  server crash.Now the read_buffpek_from_file function is always called. It allocates
  new buffer only when necessary, but always fill it with correct data.
mysql-test/r/subselect.result:
  Added a test case for the bug#33675: Usage of an uninitialized memory by
  filesort in a subquery caused server crash.
mysql-test/t/subselect.test:
  Added a test case for the bug#33675: Usage of an uninitialized memory by
  filesort in a subquery caused server crash.
2008-01-09 00:40:41 +03:00
unknown
4abbaf31df Post-merge fixes to make tests pass.
mysql-test/r/blackhole.result:
  Result change.
mysql-test/r/mysqlbinlog2.result:
  Result change.
mysql-test/t/blackhole.test:
  Fixing test to ignore file_id for exec_load_file events.
2008-01-08 22:22:40 +01:00
unknown
10b009d2bb Bug#29770 Two handlers are allowed to catch an error in an stored procedure.
Add test case.


mysql-test/r/sp.result:
  Add test case result for Bug#29770
mysql-test/t/sp.test:
  Add test case for Bug#29770
2008-01-08 18:43:25 -02:00
unknown
68eb3c9421 WL#4084: Code changes due to enabled the disabled tests (including other improvements).
BitKeeper/etc/ignore:
  Added mysql-test/funcs_1.log to the ignore list
2008-01-08 13:56:01 +01:00
unknown
d4045eedd8 Merge perch.ndb.mysql.com:/home/jonas/src/51-telco-gca
into  perch.ndb.mysql.com:/home/jonas/src/51-ndb


storage/ndb/src/kernel/blocks/dbtup/DbtupScan.cpp:
  Auto merged
2008-01-08 13:25:54 +01:00
unknown
d2f7c2f9b9 ndb - bug#33739
page need to refetched after timeslice
2008-01-08 13:23:35 +01:00
unknown
c82a7b9497 Merge macbook.gmz:/Users/kgeorge/mysql/work/B33256-5.0-opt
into  macbook.gmz:/Users/kgeorge/mysql/work/B33256-5.1-opt


mysql-test/r/union.result:
  Auto merged
sql/field.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
mysql-test/r/type_decimal.result:
  merge of bug 33256 5.0-opt -> 5.1-opt
mysql-test/t/union.test:
  merge of bug 33256 5.0-opt -> 5.1-opt
sql/field.h:
  merge of bug 33256 5.0-opt -> 5.1-opt
sql/item.cc:
  merge of bug 33256 5.0-opt -> 5.1-opt
sql/item_sum.cc:
  merge of bug 33256 5.0-opt -> 5.1-opt
sql/item_timefunc.cc:
  merge of bug 33256 5.0-opt -> 5.1-opt
sql/item_timefunc.h:
  merge of bug 33256 5.0-opt -> 5.1-opt
2008-01-08 11:49:40 +02:00
unknown
44101143f7 Fixed test layout error.
mysql-test/r/query_cache.result:
  Moved test which requires debug binaries to a new file.
mysql-test/t/query_cache.test:
  Moved test which requires debug binaries to a new file.
mysql-test/r/query_cache_debug.result:
  Moved test which requires debug binaries to a new file.
mysql-test/t/query_cache_debug.test:
  Moved test which requires debug binaries to a new file.
2008-01-07 21:06:18 +01:00
unknown
b8c8ca6845 Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  magare.gmz:/home/kgeorge/mysql/autopush/B33256-5.0-opt


sql/field.h:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/item_timefunc.h:
  Auto merged
2008-01-07 18:55:05 +02:00
unknown
b5df1d3446 Bugs fixed:
- If not in autocommit mode, delete rows one by one so that we can roll back if necessary
- bitmap->used_size was not correctly set, which caused bitmap pages to be overwritten
- Fixed bug in bitmap handling when allocation tail pages
- Ensure we reserve place for directory entry when calculation place for head and tail pages
- Fixed wrong value in bitmap->size[0]
- Fixed wrong assert in flush_log_for_bitmap
- Fixed bug in _ma_bitmap_release_unused() where tail blocks could be wrongly reset
- Mark new pages as changed (Required to get repair() to work)
- Fixed problem with advancing log horizon pointer within one page bounds
- Fixed DBUG_ASSERT() when enable_indexes failes for end_bulk_insert()
- Fixed bug in logging of rows with more than one big blob
- Fixed DBUG_ASSERTS() in pagecache to allow change of WRITE_LOCK to READ_LOCK in unlock() calls
- Flush pagecache when we change from logging to not logging (if not, pagecache code breaks)
- Ensure my_errno is set on return from write/delete/update
- Fixed bug when using FIELD_SKIP_PRESPACE

New features:
- mysql_fix_privilege_tables now first uses binaries and scripts from source distribution, then in installed distribution
- Fix that optimize works for Maria tables
- maria_check --zerofill now also clear freed blob pages
- maria_check -di now prints more information about record page utilization

Optimizations:
- Use pagecache_unlock_by_link() instead of pagecache_write() if possible. (Avoids a memory copy and a find_block)
- Simplify code to abort when we found optimal bit pattern
- Skip also full head page bit patterns when searching for tail
- Increase default repair buffer to 128M for maria_chk and maria_read_log
- Increase default sort buffer for maria_chk to 64M
- Increase size of sortbuffer and pagecache for mysqld to 64M
- VARCHAR/CHAR fields are stored in increasing length order for BLOCK_RECORD tables

Better reporting:
- Fixed test of error condition for flush (for better error code)
- More error messages to mysqld if Maria recovery fails
- Always print warning if rows are deleted in repair
- Added global function _db_force_flush() that is usable when doing debugging in gdb
- Added call to my_debug_put_break_here() in case of some errors (for debugging)
- Remove used testfiles in unittest as these was written in different directories depending on from where the test was started

This should fix the bugs found when importing a big table with many varchars and one/many blobs to Maria


dbug/dbug.c:
  Added global function _db_force_flush() that is usable when doing debugging in gdbine
extra/replace.c:
  Fixed memory leak
include/my_dbug.h:
  Prototype for _db_force_flush()
include/my_global.h:
  Added stdarg.h as my_sys.h now depends on it.
include/my_sys.h:
  Make my_dbug_put_break_here() a NOP if not DBUG build
  Added my_printv_error()
include/myisamchk.h:
  Added entry 'lost' to be able to count space that is lost forever
mysql-test/r/maria.result:
  Updated results
mysql-test/t/maria.test:
  Reset autocommit after test
  New test to check if delete_all_rows is used (verified with --debug)
mysys/my_error.c:
  Added my_printv_error()
scripts/mysql_fix_privilege_tables.sh:
  First use binaries and scripts from source distribution, then in installed distribution
  This ensures that a development branch doesn't pick up wrong scripts)
sql/mysqld.cc:
  Fix that one can break maria recovery with ^C when debugging
sql/sql_class.cc:
  Removed #ifdef that has no effect
  (The preceeding DBUG_ASSERT() ensures that the following code will not be exectued)
storage/maria/ha_maria.cc:
  Increase size of sortbuffer and pagecache to 64M
  Fix that optimize works for Maria tables
  Fixed DBUG_ASSERT() when enable_indexes failes for end_bulk_insert()
  If not in autocommit mode, delete rows one by one so that we can roll back if necessary
  Fixed variable comments
storage/maria/ma_bitmap.c:
  More ASSERTS to detect overwrite of bitmap pages
  bitmap->used_size was not correctly set, which caused bitmap pages to be overwritten
  Ensure we reserve place for directory entry when calculation place for head and tail pages
  bitmap->size[0] should not include space for directory entry
  Simplify code to abort when we found optimal bit pattern
  Skip also full head page bit patterns when searching for tail (should speed up some common cases)
  Fixed bug in allocate_tail() when block->used was not aligned on 6 bytes
  Fixed wrong assert in flush_log_for_bitmap
  Fixed bug in _ma_bitmap_release_unused() where tail blocks could be wrongly reset
storage/maria/ma_blockrec.c:
  Ensure my_errno is set on return
  Fixed not optimal setting of row->min_length if we don't have variable length fields
  Use pagecache_unlock_by_link() instead of pagecache_write() if possible. (Avoids a memory copy and a find_block)
  Added DBUG_ASSERT() if we read or write wrong VARCHAR data
  Added DBUG_ASSERT() to find out if row sizes are calculated wrong
  Fixed bug in logging of rows with more than one big blob
storage/maria/ma_check.c:
  Disable logging while normal repair is done to avoid logging of index changes
  Fixed bug that caused CHECKSUM part of key page to be used
  Fixed that deleted of wrong records also works for BLOCK_RECORD
  Clear unallocated pages:
  - BLOB pages are not automaticly cleared on delete, so we need to use the bitmap to know if page is used or not
  Better error reporting
  More information about record page utilization
  Change printing of file position to printing of pages to make output more readable
  Always print warning if rows are deleted
storage/maria/ma_create.c:
  Calculate share.base_max_pack_length more accurately for BLOCK_RECORD pages (for future)
  Fixed that FIELD_SKIP_PRESPACE is recorded as FIELD_NORMAL; Fixed bug where fields could be used in wrong order
  Store FIELD_SKIP_ZERO fields before CHAR and VARCHAR fields (optimization)
  Store other fields in length order (to get better utilization of head block)
storage/maria/ma_delete.c:
  Ensure my_errno is set on return
storage/maria/ma_dynrec.c:
  Indentation fix
storage/maria/ma_locking.c:
  Set changed if open_count is counted down.
  (To avoid getting error "client is using or hasn't closed the table properly" with transactional tables
storage/maria/ma_loghandler.c:
  Fixed problem with advancing log horizon pointer within one page bounds (Patch from Sanja)
  Added more DBUG
  Indentation fixes
storage/maria/ma_open.c:
  Removed wrong casts
storage/maria/ma_page.c:
  Fixed usage of PAGECACHE_LOCK_WRITE_UNLOCK with _ma_new()
  Mark new pages as changed (Required to get repair() to work)
storage/maria/ma_pagecache.c:
  Fixed test of error condition for flush
  Fixed problem when using PAGECACHE_LOCK_WRITE_TO_READ with unlock()
  Added call to my_debug_put_break_here() in case of errors (for debugging)
storage/maria/ma_pagecrc.c:
  Ensure we get same crc for 32 and 64 bit systems by forcing argument to maria_page_crc to uint32
storage/maria/ma_recovery.c:
  Call my_printv_error() from eprint() to get critical errors to mysqld log
  Removed \n from error strings to eprint() to get nicer output in mysqld
  Added simple test in _ma_reenable_logging_for_table() to not do any work if not needed
storage/maria/ma_update.c:
  Ensure my_errno is set on return
storage/maria/ma_write.c:
  Ensure my_errno is set on return
storage/maria/maria_chk.c:
  Use DEBUGGER_OFF if --debug is not use (to get slightly faster execution for debug binaries)
  Added option --skip-safemalloc
  Don't write exponents for rec/key
storage/maria/maria_def.h:
  Increase default repair buffer to 128M for maria_chk and maria_read_log
  Increase default sort buffer for maria_chk to 64M
storage/maria/unittest/Makefile.am:
  Don't update files automaticly from bitkeeper
storage/maria/unittest/ma_pagecache_consist.c:
  Remove testfile at end
storage/maria/unittest/ma_pagecache_single.c:
  Remove testfile at end
storage/maria/unittest/ma_test_all-t:
  More tests
  Safer checking if test caused error
2008-01-07 18:54:41 +02:00
unknown
bbbb77770b Merge mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#32205/5.0
into  mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#32205/mysql-5.0-rpl
2008-01-06 15:39:46 +08:00
unknown
7c136ed959 Fixed some test case after push of BUG#32205
mysql-test/r/binlog_start_comment.result:
  Drop tables used in the test case when done
mysql-test/r/blackhole.result:
  Mask out file_id in show binlog events output
mysql-test/r/case.result:
  Drop table t2 too if it exists at the start of the test
mysql-test/t/blackhole.test:
  Mask out file_id in show binlog events output
mysql-test/t/case.test:
  Drop table t2 too if it exists at the start of the test
2008-01-06 15:27:42 +08:00
unknown
e011346d18 Merge mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#28908/5.0
into  mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#32205/mysql-5.0-rpl
2008-01-06 15:18:45 +08:00
unknown
6acef447d1 Add missing include test file for rpl_server_id test
mysql-test/include/show_binlog_events2.inc:
  New BitKeeper file ``mysql-test/include/show_binlog_events2.inc''
2008-01-06 15:17:47 +08:00
unknown
bd2a1ae07c Merge mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#32205/5.0
into  mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#32205/mysql-5.0-rpl
2008-01-06 13:20:52 +08:00
unknown
1a40f7125f Merge ramayana.hindu.god:/home/tsmith/m/bk/51
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51


BitKeeper/triggers/post-commit:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
sql/sp_head.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
2008-01-04 19:59:37 -07:00
unknown
48c7c1268a Merge ramayana.hindu.god:/home/tsmith/m/bk/50
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/50


mysql-test/mysql-test-run.pl:
  Auto merged
2008-01-04 19:59:01 -07:00
unknown
d930d8cb88 Merge whalegate.ndb.mysql.com:/home/tomas/cge-5.1
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb-merge
2008-01-04 16:50:28 +01:00
unknown
78d0a794f4 correct result file 2008-01-04 16:49:39 +01:00
unknown
f2a1eeeb03 Merge whalegate.ndb.mysql.com:/home/tomas/cge-5.1
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb-merge


mysql-test/mysql-test-run.pl:
  Auto merged
2008-01-04 16:01:36 +01:00
unknown
3c1e168f47 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb-merge
2008-01-04 15:57:41 +01:00
unknown
6074712beb Bug#32648 Test failure between NDB Cluster and other engines
mysql-test/suite/ndb_team/t/rpl_ndb_extraColMaster.test:
  Rename: mysql-test/suite/rpl_ndb/t/rpl_ndb_extraColMaster.test -> mysql-test/suite/ndb_team/t/rpl_ndb_extraColMaster.test
mysql-test/suite/ndb_team/r/rpl_ndb_extraColMaster.result:
  Rename: mysql-test/suite/rpl_ndb/r/rpl_ndb_extraColMaster.result -> mysql-test/suite/ndb_team/r/rpl_ndb_extraColMaster.result
mysql-test/suite/ndb_team/t/rpl_ndb_mix_innodb-master.opt:
  Rename: mysql-test/suite/rpl_ndb/t/rpl_ndb_mix_innodb-master.opt -> mysql-test/suite/ndb_team/t/rpl_ndb_mix_innodb-master.opt
mysql-test/suite/ndb_team/t/rpl_ndb_mix_innodb.test:
  Rename: mysql-test/suite/rpl_ndb/t/rpl_ndb_mix_innodb.test -> mysql-test/suite/ndb_team/t/rpl_ndb_mix_innodb.test
mysql-test/suite/ndb_team/r/rpl_ndb_mix_innodb.result:
  Rename: mysql-test/suite/rpl_ndb/r/rpl_ndb_mix_innodb.result -> mysql-test/suite/ndb_team/r/rpl_ndb_mix_innodb.result
mysql-test/suite/ndb_team/t/rpl_ndb_dd_advance.test:
  Rename: mysql-test/suite/rpl_ndb/t/rpl_ndb_dd_advance.test -> mysql-test/suite/ndb_team/t/rpl_ndb_dd_advance.test
mysql-test/suite/ndb_team/r/rpl_ndb_dd_advance.result:
  Rename: mysql-test/suite/rpl_ndb/r/rpl_ndb_dd_advance.result -> mysql-test/suite/ndb_team/r/rpl_ndb_dd_advance.result
2008-01-04 15:33:01 +01:00
unknown
fa01e8845b Bug#30459 Partitioning across disks failing on Windows
Problem was that there are no support for symlinked files on Windows for
mysqld. So we fail when trying to create them.

Solution: Ignore the DATA/INDEX DIRECTORY clause for partitions and push
a warning. (Just like a MyISAM table)


mysql-test/r/partition.result:
  Bug#30459 Partitioning across disks failing on Windows
  Moved symlink specific tests to partition_symlink
  result file
mysql-test/r/partition_symlink.result:
  Bug#30459 Partitioning across disks failing on Windows
  Moved symlink specific tests from partition.test
  result file
mysql-test/r/partition_windows.result:
  Bug#30459 Partitioning across disks failing on Windows
  result file
mysql-test/t/partition.test:
  Bug#30459 Partitioning across disks failing on Windows
  Moved symlink specific tests to partition_symlink
  test file
mysql-test/t/partition_symlink.test:
  Bug#30459 Partitioning across disks failing on Windows
  Moved symlink specific tests from partition.test
  test file
mysql-test/t/partition_windows.test:
  Bug#30459 Partitioning across disks failing on Windows
  test file
2008-01-04 12:06:20 +01:00