This patch:
- Moves all definitions from the mysql_priv.h file into
header files for the component where the variable is
defined
- Creates header files if the component lacks one
- Eliminates all include directives from mysql_priv.h
- Eliminates all circular include cycles
- Rename time.cc to sql_time.cc
- Rename mysql_priv.h to sql_priv.h
Skip r6900, which was backported from branches/innodb+ 6899.
------------------------------------------------------------------------
r6919 | mmakela | 2010-03-31 11:34:22 +0300 (Wed, 31 Mar 2010) | 54 lines
Changed paths:
M /branches/zip/ChangeLog
M /branches/zip/handler/ha_innodb.cc
M /branches/zip/mysql-test/innodb_bug38231.test
A /branches/zip/mysql-test/innodb_bug51920.result
A /branches/zip/mysql-test/innodb_bug51920.test
M /branches/zip/row/row0sel.c
M /branches/zip/srv/srv0srv.c
branches/zip: Merge revisions 6788:6918 from branches/5.1:
------------------------------------------------------------------------
r6822 | vasil | 2010-03-15 10:17:31 +0200 (Mon, 15 Mar 2010) | 12 lines
Changed paths:
M /branches/5.1/row/row0sel.c
branches/5.1:
Typecast to silence a compiler warning:
row/row0sel.c: 4548
C4244: '=' : conversion from 'float' to 'ib_ulonglong', possible loss of data
row/row0sel.c: 4553
C4244: '=' : conversion from 'double' to 'ib_ulonglong', possible loss of data
Reported by: Jonas Oreland <Jonas.Oreland@Sun.COM>
Discussed with: Sunny Bains <sunny.bains@oracle.com>
------------------------------------------------------------------------
r6884 | vdimov | 2010-03-26 13:05:03 +0200 (Fri, 26 Mar 2010) | 6 lines
Changed paths:
M /branches/5.1/mysql-test/innodb_bug38231.test
branches/5.1:
Fix a non-determinism in innodb_bug38231.
Reported by: Sergey Vojtovich <svoj@Sun.COM>
------------------------------------------------------------------------
r6911 | vdimov | 2010-03-30 11:39:02 +0300 (Tue, 30 Mar 2010) | 2 lines
Changed paths:
M /branches/5.1/handler/ha_innodb.cc
branches/5.1: Whitespace fixup
------------------------------------------------------------------------
r6912 | vdimov | 2010-03-30 12:18:46 +0300 (Tue, 30 Mar 2010) | 2 lines
Changed paths:
M /branches/5.1/handler/ha_innodb.cc
branches/5.1: Whitespace fixup on line 354
------------------------------------------------------------------------
r6918 | mmakela | 2010-03-31 11:14:51 +0300 (Wed, 31 Mar 2010) | 6 lines
Changed paths:
A /branches/5.1/mysql-test/innodb_bug51920.result
A /branches/5.1/mysql-test/innodb_bug51920.test
M /branches/5.1/srv/srv0srv.c
branches/5.1: Obey KILL during a lock wait (Bug #51920).
srv_suspend_mysql_thread(), srv_lock_timeout_and_monitor_thread():
Check trx_is_interrupted() in addition to checking the lock wait timeout.
rb://279 approved by Sunny Bains
------------------------------------------------------------------------
------------------------------------------------------------------------
r6920 | mmakela | 2010-03-31 11:49:08 +0300 (Wed, 31 Mar 2010) | 1 line
Changed paths:
M /branches/zip/row/row0sel.c
branches/zip: Fix a compilation error that sneaked in in r6919.
------------------------------------------------------------------------
r6922 | mmakela | 2010-03-31 14:54:30 +0300 (Wed, 31 Mar 2010) | 11 lines
Changed paths:
M /branches/zip/mysql-test/innodb_bug51920.result
M /branches/zip/mysql-test/innodb_bug51920.test
branches/zip: Merge revisions 6918:6921 from branches/5.1:
------------------------------------------------------------------------
r6921 | mmakela | 2010-03-31 14:33:04 +0300 (Wed, 31 Mar 2010) | 2 lines
Changed paths:
M /branches/5.1/mysql-test/innodb_bug51920.result
M /branches/5.1/mysql-test/innodb_bug51920.test
branches/5.1: innodb_bug51920.test: Make the test quicker and more
deterministic. Suggested by Vasil Dimov.
------------------------------------------------------------------------
------------------------------------------------------------------------
r6925 | mmakela | 2010-03-31 15:30:56 +0300 (Wed, 31 Mar 2010) | 9 lines
branches/zip: Merge revisions 6921:6924 from branches/5.1:
------------------------------------------------------------------------
r6924 | mmakela | 2010-03-31 15:28:25 +0300 (Wed, 31 Mar 2010) | 1 line
Changed paths:
M /branches/5.1/mysql-test/innodb_bug51920.test
branches/5.1: innodb_bug51920.test: Fix a race condition.
------------------------------------------------------------------------
------------------------------------------------------------------------
the upper limit of total rollback segments from 256 to 128. This is because
we can't use the sign bit. It has not caused problems in the past because we
only created one segment. InnoDB has always had the capability to use the
additional rollback segments therefore this patch is backwards compatible.
The only requirement to maintain backward compatibility has been to ensure
that the additional segments are created after the double write buffer.
This is to avoid breaking assumptions in the existing code.
Fix Bug#26590 MySQL does not allow more than 1023 open transactions
and rearrange some code in order to eliminate an unwarranted
"possibly uninitialized" warning that was reported by Sunny.
rb://276 approved by Inaam Rana
noted that the check for ignore_secondary_unique might not be disabled
for deletes. Indeed, I see no reason for the check to exist for deletes.
btr_op_enum: Document the constants. Add BTR_INSERT_IGNORE_UNIQUE_OP.
btr_cur_search_to_nth_level(): Remove the variable
ignore_sec_unique. Use btr_op instead. Invoke ibuf_should_try() with
ignore_sec_unique = (btr_op != BTR_INSERT_OP), that is, always ignore
the UNIQUE constraint when buffering delete-mark and purge.
BTR_IGNORE_SEC_UNIQUE: Note that the flag only makes sense in
conjunction with BTR_INSERT.
rb://274 approved by Sunny Bains. This addresses Issue #471.
The adaptive hash index can be used when a buffered operation is requested,
and the latch_mode check does not prevent it, because latch_mode does not
contain any btr_op bits at this point.
Skip r6860, which was merged from branches/innodb+ to branches/zip,
and r6857, which is only applicable to branches/zip.
------------------------------------------------------------------------
r6858 | mmakela | 2010-03-23 14:09:24 +0200 (Tue, 23 Mar 2010) | 1 line
Changed paths:
M /branches/zip/handler/ha_innodb.cc
branches/zip: innodb_read_ahead_threshold: Add missing space to help string.
------------------------------------------------------------------------
r6861 | vdimov | 2010-03-23 19:31:02 +0200 (Tue, 23 Mar 2010) | 36 lines
Changed paths:
M /branches/zip/trx/trx0i_s.c
branches/zip:
Merge joerg@mysql.com-20100322150231-vdq0afbqtmbs6phy from BZR,
Including univ.i before mysql/plugin.h is needed to avoid this
compiler error:
o This is how gcc puts it:
o > > ccache /usr/local/gcc-4.3.2/bin/gcc -static-libgcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -I../../include -I../../regex -I./include -I../../sql -I. -I../../zlib -g -O3 -march=i686 -DUNIV_LINUX -MT libinnobase_a-trx0i_s.o -MD -MP -MF .deps/libinnobase_a-trx0i_s.Tpo -c -o libinnobase_a-trx0i_s.o `test -f 'trx/trx0i_s.c' || echo './'`trx/trx0i_s.c
o > > In file included from ./include/univ.i:114,
o > > from trx/trx0i_s.c:36:
o > > ../../include/my_pthread.h:628: error: expected ')' before '*' token
o > > In file included from ../../include/my_pthread.h:732,
o > > from ./include/univ.i:114,
o > > from trx/trx0i_s.c:36:
o > > ../../include/mysql/psi/mysql_thread.h💯 error: expected specifier-qualifier-list before 'pthread_rwlock_t'
o > > ../../include/mysql/psi/mysql_thread.h:116: error: expected specifier-qualifier-list before 'pthread_rwlock_t'
o > > ../../include/mysql/psi/mysql_thread.h: In function 'inline_mysql_rwlock_init':
o > > ../../include/mysql/psi/mysql_thread.h:711: error: 'mysql_rwlock_t' has no member named 'm_psi'
o > > ../../include/mysql/psi/mysql_thread.h:716: error: 'mysql_rwlock_t' has no member named 'm_rwlock'
o > > .... ((continued))
o
o Intel's icc gives slightly clearer messages:
o > > icc -static-intel -static-libgcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -I../../include -I../../regex -I./include -I../../sql -I. -I../../zlib -O3 -g -unroll2 -ip -mp -restrict -no-ftz -no-prefetch -DUNIV_LINUX -MT libinnobase_a-trx0i_s.o -MD -MP -MF .deps/libinnobase_a-trx0i_s.Tpo -c -o libinnobase_a-trx0i_s.o `test -f 'trx/trx0i_s.c' || echo './'`trx/trx0i_s.c
o > > ../../include/my_pthread.h(628): error: identifier "pthread_rwlock_t" is undefined
o > > extern int rw_pr_init(rw_pr_lock_t *);
o > > ^
o > >
o > > ../../include/mysql/psi/mysql_thread.h(100): error: identifier "pthread_rwlock_t" is undefined
o > > rw_lock_t m_rwlock;
o > > ^
o > >
o > > ../../include/mysql/psi/mysql_thread.h(116): error: identifier "pthread_rwlock_t" is undefined
o > > rw_pr_lock_t m_prlock;
o > > ^
------------------------------------------------------------------------
r6864 | mmakela | 2010-03-24 14:05:53 +0200 (Wed, 24 Mar 2010) | 1 line
Changed paths:
M /branches/zip/include/data0type.ic
branches/zip: dtype_new_store_for_order_and_null_size(): Add ut_ad() on mtype.
------------------------------------------------------------------------
r6868 | mmakela | 2010-03-25 13:03:08 +0200 (Thu, 25 Mar 2010) | 1 line
Changed paths:
M /branches/zip/page/page0page.c
branches/zip: page_validate(): Check the buf[] bounds.
------------------------------------------------------------------------
r6871 | vdimov | 2010-03-25 16:39:44 +0200 (Thu, 25 Mar 2010) | 4 lines
Changed paths:
M /branches/zip/ChangeLog
branches/zip:
Whitespace fixup to be consistent with the rest of the file.
------------------------------------------------------------------------
r6872 | vdimov | 2010-03-25 17:03:17 +0200 (Thu, 25 Mar 2010) | 4 lines
Changed paths:
M /branches/zip/ChangeLog
branches/zip:
Fix ChangeLog - write only the bug title in bugs.mysql.com-related entires.
------------------------------------------------------------------------
r6873 | vdimov | 2010-03-25 17:06:56 +0200 (Thu, 25 Mar 2010) | 4 lines
Changed paths:
M /branches/zip/ChangeLog
branches/zip:
Use Bug#N instead of Bug #N to be consistent with the rest of the fil.
------------------------------------------------------------------------
r6874 | vdimov | 2010-03-25 17:17:52 +0200 (Thu, 25 Mar 2010) | 4 lines
Changed paths:
M /branches/zip/ChangeLog
branches/zip:
Wrap ChangeLog at 78th column
------------------------------------------------------------------------
r6875 | vdimov | 2010-03-25 18:18:15 +0200 (Thu, 25 Mar 2010) | 4 lines
Changed paths:
M /branches/zip/ChangeLog
branches/zip:
Wrap line at 78 column in ChangeLog.
------------------------------------------------------------------------
r6891 | vdimov | 2010-03-26 16:19:01 +0200 (Fri, 26 Mar 2010) | 5 lines
Changed paths:
M /branches/innodb+/buf/buf0buddy.c
M /branches/innodb+/include/btr0btr.ic
M /branches/innodb+/include/buf0buf.ic
M /branches/innodb+/include/handler0alter.h
M /branches/innodb+/include/mtr0mtr.ic
M /branches/innodb+/include/pars0pars.h
M /branches/innodb+/include/row0merge.h
M /branches/innodb+/include/row0row.h
M /branches/innodb+/include/row0sel.h
M /branches/innodb+/include/row0types.h
M /branches/innodb+/include/sync0rw.h
M /branches/innodb+/include/ut0lst.h
M /branches/innodb+/include/ut0ut.h
M /branches/innodb+/os/os0thread.c
M /branches/innodb+/pars/pars0pars.c
M /branches/innodb+/plug.in
M /branches/innodb+/row/row0purge.c
M /branches/innodb+/row/row0row.c
M /branches/innodb+/row/row0uins.c
M /branches/innodb+/trx/trx0rec.c
M /branches/innodb+/ut/ut0ut.c
M /branches/innodb+_persistent_stats/buf/buf0buddy.c
M /branches/innodb+_persistent_stats/include/btr0btr.ic
M /branches/innodb+_persistent_stats/include/buf0buf.ic
M /branches/innodb+_persistent_stats/include/handler0alter.h
M /branches/innodb+_persistent_stats/include/mtr0mtr.ic
M /branches/innodb+_persistent_stats/include/row0merge.h
M /branches/innodb+_persistent_stats/include/row0row.h
M /branches/innodb+_persistent_stats/include/row0sel.h
M /branches/innodb+_persistent_stats/include/row0types.h
M /branches/innodb+_persistent_stats/include/sync0rw.h
M /branches/innodb+_persistent_stats/os/os0thread.c
M /branches/innodb+_persistent_stats/plug.in
M /branches/innodb+_persistent_stats/row/row0purge.c
M /branches/innodb+_persistent_stats/row/row0row.c
M /branches/innodb+_persistent_stats/row/row0uins.c
M /branches/innodb+_persistent_stats/trx/trx0rec.c
M /branches/performance_schema/buf/buf0buddy.c
M /branches/performance_schema/buf/buf0flu.c
M /branches/performance_schema/compile-innodb-debug
M /branches/performance_schema/include/btr0btr.ic
M /branches/performance_schema/include/buf0buf.ic
M /branches/performance_schema/include/dict0boot.ic
M /branches/performance_schema/include/dict0dict.h
M /branches/performance_schema/include/os0file.ic
M /branches/performance_schema/include/os0thread.h
M /branches/performance_schema/include/row0sel.h
M /branches/performance_schema/include/trx0purge.h
M /branches/performance_schema/include/trx0sys.ic
M /branches/performance_schema/include/ut0wqueue.h
M /branches/performance_schema/lock/lock0iter.c
M /branches/performance_schema/mem/mem0pool.c
M /branches/performance_schema/os/os0thread.c
M /branches/performance_schema/page/page0zip.c
M /branches/performance_schema/que/que0que.c
M /branches/performance_schema/read/read0read.c
M /branches/performance_schema/row/row0purge.c
M /branches/performance_schema/row/row0row.c
M /branches/performance_schema/row/row0vers.c
M /branches/performance_schema/sync/sync0arr.c
M /branches/performance_schema/thr/thr0loc.c
M /branches/performance_schema/trx/trx0rec.c
M /branches/performance_schema/trx/trx0roll.c
M /branches/performance_schema/trx/trx0undo.c
M /branches/performance_schema/ut/ut0wqueue.c
M /branches/perfschema/btr/btr0sea.c
M /branches/perfschema/buf/buf0buddy.c
M /branches/perfschema/buf/buf0flu.c
M /branches/perfschema/compile-innodb-debug
M /branches/perfschema/ha/hash0hash.c
M /branches/perfschema/include/buf0buf.ic
M /branches/perfschema/include/buf0flu.ic
M /branches/perfschema/include/dict0boot.ic
M /branches/perfschema/include/os0thread.h
M /branches/perfschema/include/sync0rw.h
M /branches/perfschema/include/sync0rw.ic
M /branches/perfschema/include/sync0sync.ic
M /branches/perfschema/mem/mem0pool.c
M /branches/perfschema/os/os0thread.c
M /branches/perfschema/page/page0zip.c
M /branches/perfschema/que/que0que.c
M /branches/perfschema/read/read0read.c
M /branches/perfschema/row/row0purge.c
M /branches/perfschema/row/row0vers.c
M /branches/perfschema/sync/sync0arr.c
M /branches/perfschema/sync/sync0rw.c
M /branches/perfschema/thr/thr0loc.c
M /branches/perfschema/trx/trx0purge.c
M /branches/perfschema/trx/trx0rec.c
M /branches/perfschema/trx/trx0roll.c
M /branches/perfschema/trx/trx0undo.c
M /branches/perfschema/ut/ut0wqueue.c
M /branches/zip/buf/buf0buddy.c
M /branches/zip/buf/buf0flu.c
M /branches/zip/buf/buf0rea.c
M /branches/zip/fil/fil0fil.c
M /branches/zip/include/btr0btr.ic
M /branches/zip/include/buf0buf.ic
M /branches/zip/include/buf0flu.h
M /branches/zip/include/data0type.ic
M /branches/zip/include/mtr0mtr.ic
M /branches/zip/include/row0sel.h
M /branches/zip/include/sync0rw.h
M /branches/zip/plug.in
M /branches/zip/row/row0row.c
M /branches/zip/trx/trx0i_s.c
M /branches/zip/trx/trx0rec.c
M /branches/zip/trx/trx0sys.c
Non-functional change: update copyright year to 2010 of the files
that have been modified after 2010-01-01 according to svn.
for f in $(svn log -v -r{2010-01-01}:HEAD |grep "^ M " |cut -b 16- |sort -u) ; do sed -i "" -E 's/(Copyright \(c\) [0-9]{4},) [0-9]{4}, (.*Innobase Oy.+All Rights Reserved)/\1 2010, \2/' $f ; done
------------------------------------------------------------------------
r6897 | mmakela | 2010-03-29 11:36:19 +0300 (Mon, 29 Mar 2010) | 3 lines
Changed paths:
M /branches/zip/handler/ha_innodb.cc
branches/zip: innodb_mutex_show_status(): Fix a condition
that was accidentally negated in r6781, making SHOW ENGINE INNODB MUTEX STATUS
display only locks with no OS waits.
------------------------------------------------------------------------
Check in code change for implementing Performace Schema in InnoDB.
Objects in four different modules in InnoDB have been performance
instrumented, these modules are:
1) mutexes
2) rwlocks
3) file I/O
4) threads
We mostly preserved the existing APIs, but APIs would point to
instrumented function wrappers if performance schema is defined.
There are 4 different defines that controls the instrumentation of
each module. The feature is off by default, and will be compiled in
with special build option, and requre configure option to turn it on
when server boots. For more detail design and functional information,
please refer to performance schema wiki page.
rb://270 approved by Marko Mäkelä
that have been modified after 2010-01-01 according to svn.
for f in $(svn log -v -r{2010-01-01}:HEAD |grep "^ M " |cut -b 16- |sort -u) ; do sed -i "" -E 's/(Copyright \(c\) [0-9]{4},) [0-9]{4}, (.*Innobase Oy.+All Rights Reserved)/\1 2010, \2/' $f ; done
------------------------------------------------------------------------
r6413 | vasil | 2010-01-11 15:18:35 +0200 (Mon, 11 Jan 2010) | 4 lines
Changed paths:
M /branches/innodb+_persistent_stats/include/pars0pars.h
M /branches/innodb+_persistent_stats/pars/pars0pars.c
branches/innodb+: Add a func to store uint64
Add a new function pars_info_add_uint64_literal() that adds a literal of
type ib_uint64_t.
------------------------------------------------------------------------
------------------------------------------------------------------------
r6464 | vasil | 2010-01-14 16:00:19 +0200 (Thu, 14 Jan 2010) | 8 lines
Changed paths:
M /branches/innodb+_persistent_stats/include/ut0ut.h
M /branches/innodb+_persistent_stats/ut/ut0ut.c
branches/innodb+: Implement ut_strerr()
Implement a function that converts the DB_* error codes to a human
readable text. The function is similar to strerror() but is not named
ut_strerror() on purpose in order not to confuse it with a wrapper for
strerror().
The ut_error on unknown error code was suggested by Marko, thanks!
------------------------------------------------------------------------
Conflicts:
Text conflict in client/mysqlbinlog.cc
Text conflict in mysql-test/Makefile.am
Text conflict in mysql-test/collections/default.daily
Text conflict in mysql-test/r/mysqlbinlog_row_innodb.result
Text conflict in mysql-test/suite/rpl/r/rpl_typeconv_innodb.result
Text conflict in mysql-test/suite/rpl/t/rpl_get_master_version_and_clock.test
Text conflict in mysql-test/suite/rpl/t/rpl_row_create_table.test
Text conflict in mysql-test/suite/rpl/t/rpl_slave_skip.test
Text conflict in mysql-test/suite/rpl/t/rpl_typeconv_innodb.test
Text conflict in mysys/charset.c
Text conflict in sql/field.cc
Text conflict in sql/field.h
Text conflict in sql/item.h
Text conflict in sql/item_func.cc
Text conflict in sql/log.cc
Text conflict in sql/log_event.cc
Text conflict in sql/log_event_old.cc
Text conflict in sql/mysqld.cc
Text conflict in sql/rpl_utility.cc
Text conflict in sql/rpl_utility.h
Text conflict in sql/set_var.cc
Text conflict in sql/share/Makefile.am
Text conflict in sql/sql_delete.cc
Text conflict in sql/sql_plugin.cc
Text conflict in sql/sql_select.cc
Text conflict in sql/sql_table.cc
Text conflict in storage/example/ha_example.h
Text conflict in storage/federated/ha_federated.cc
Text conflict in storage/myisammrg/ha_myisammrg.cc
Text conflict in storage/myisammrg/myrg_open.c
------------------------------------------------------------------------
r6805 | inaam | 2010-03-11 23:15:17 +0200 (Thu, 11 Mar 2010) | 6 lines
Changed paths:
M /branches/zip/os/os0file.c
branches/zip issue#463
Fixed compiler warning about uninitialized variable.
Non-functional change.
------------------------------------------------------------------------
r6828 | calvin | 2010-03-17 17:16:38 +0200 (Wed, 17 Mar 2010) | 7 lines
Changed paths:
M /branches/zip/CMakeLists.txt
branches/zip: rename IB_HAVE_PAUSE_INSTRUCTION to
HAVE_IB_PAUSE_INSTRUCTION in CMakeLists.txt.
The rename was done as r5871, but CMakeLists.txt was
forgotten. Also, add INNODB_RW_LOCKS_USE_ATOMICS to
CMake.
------------------------------------------------------------------------
r6830 | marko | 2010-03-18 09:48:18 +0200 (Thu, 18 Mar 2010) | 3 lines
Changed paths:
M /branches/zip/ChangeLog
M /branches/zip/include/buf0buf.ic
branches/zip: buf_page_peek_if_too_old(): Use 32-bit arithmetics
when comparing the age of access_time to buf_LRU_old_threshold_ms.
This fixes a bug on 64-bit systems.
------------------------------------------------------------------------
r6840 | calvin | 2010-03-19 00:32:23 +0200 (Fri, 19 Mar 2010) | 6 lines
Changed paths:
M /branches/zip/CMakeLists.txt
M /branches/zip/ChangeLog
branches/zip: Fix Bug #52102 InnoDB Plugin shows performance drop
comparing to builtin InnoDB (Windows only).
Disable Windows atomics by default.
Approved by: Inaam
------------------------------------------------------------------------
r6853 | marko | 2010-03-22 13:35:29 +0200 (Mon, 22 Mar 2010) | 1 line
Changed paths:
M /branches/zip/include/sync0rw.h
M /branches/zip/include/sync0sync.h
branches/zip: mutex_own(), rw_lock_own(): Add attribute((warn_unused_result)).
------------------------------------------------------------------------
Problem: caseup_multiply and casedn_multiply members
were not initialized for a dynamic collation, so
UPPER() and LOWER() functions returned empty strings.
Fix: initializing the members properly.
Adding tests:
mysql-test/r/ctype_ldml.result
mysql-test/t/ctype_ldml.test
Applying the fix:
mysys/charset.c
(Original patch by Sinisa Milivojevic)
The YEAR(4) value of 2000 was equal to the "bad" YEAR(4) value of 0000.
The get_year_value() function has been modified to not adjust bad
YEAR(4) value to 2000.
in optimized build)
Unlike in autotools build, innodb was compiled with
-DUNIV_MUST_NOT_INLINE set. this exposed what
seems to be a bug in gcc backend.
The fix is to remove extra definition.
Conflicts:
Text conflict in mysql-test/r/partition_innodb.result
Text conflict in sql/field.h
Text conflict in sql/item.h
Text conflict in sql/item_cmpfunc.h
Text conflict in sql/item_sum.h
Text conflict in sql/log_event_old.cc
Text conflict in sql/protocol.cc
Text conflict in sql/sql_select.cc
Text conflict in sql/sql_yacc.yy
- package some more perl scripts on Windows (mysqlhotcopy and mysqldumpslow)
- do not try to pack .map files (no more produced)
- (CMake-unrelated) fix debug build on FreeBSD, trying to use uninitialized attribute
MY_MUTEX_INIT_FAST
The problem is that when we make conditon for
grouped result const part of condition is cut off.
It happens because some parts of 'having' condition
which refer to outer join become const after
make_join_statistics. These parts may be lost
during further having condition transformation
in JOIN::exec. The fix is adding 'having'
condition check for const tables after
make_join_statistics is performed.
DBUG_SYNC_POINT has at least one strong limitation that it's not defined
on all platforms. It has issues cooperating with @@debug.
All in all its functionality is superseded by DEBUG_SYNC facility and
there is no reason to maintain the old less flexible one.
Fixed with adding debug_sync_set_action() function as a facility to set up
a sync-action in the server sources code and re-writing existing simulations
(found 3) to use it.
Couple of tests have been reworked as well.
The patch offers a pattern for setting sync-points in replication threads
where the standard DEBUG_SYNC does not suffice to reach goals.