Commit graph

628 commits

Author SHA1 Message Date
mats@romeo.(none)
7c187c2c9b WL#3464: Add replication event to denote gap in replication
Adding an event that can be used to denote that an incident occured
on the master. The event can be used to denote a gap in the replication
stream, but can also be used to denote other incidents.

In addition, the injector interface is extended with functions to
generate an incident event. The function will also rotate the binary
log after generating an incident event to get a fresh binary log.
2007-03-29 20:31:09 +02:00
cbell/Chuck@mysql_cab_desk.
a591514a67 Merge cbell@bk-internal.mysql.com:/home/bk/mysql-5.1-new-rpl
into  mysql_cab_desk.:C:/source/c++/mysql-5.1-new-rpl
2007-03-29 09:54:59 -04:00
cbell/Chuck@mysql_cab_desk.
0627a31d7d Merge mysql_cab_desk.:C:/source/c++/mysql-5.1-new-rpl
into  mysql_cab_desk.:C:/source/c++/mysql-5.1_WL_3629
2007-03-29 08:38:06 -04:00
cbell/Chuck@mysql_cab_desk.
89838e1008 WL#3629 - Replication of Invocation and Invoked Features
This patch corrects errors that occurred in a local manual merge as a result
of updating the local repository and includes changes necessary to correct 
problems found during the recalculation of next execution of events in RBR.
2007-03-29 08:17:19 -04:00
lars/lthalmann@dl145j.mysql.com
771e05d657 Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-5.1-new-rpl
into  mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge
2007-03-29 13:49:10 +02:00
tsmith@quadxeon.mysql.com
da8875a2ef Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/50
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/51
2007-03-29 12:00:32 +02:00
tsmith@quadxeon.mysql.com
07f94fa199 gis_generic test cases:
Revert test case to NOT define any keys; the NDB warning can be handled, and ARCHIVE does not allow indexes
2007-03-29 11:20:08 +02:00
tsmith@siva.hindu.god
0d65ee796b Merge siva.hindu.god:/home/tsmith/m/bk/maint/50
into  siva.hindu.god:/home/tsmith/m/bk/maint/51
2007-03-28 19:50:41 -06:00
tsmith@siva.hindu.god
d4e0de8fda Update test for bug #24563 (MBROverlaps does not seem to function propertly.); ARCHIVE doesn't support AUTO_INCREMENT, so specify PK values explicitly 2007-03-28 19:39:43 -06:00
tsmith@siva.hindu.god
5aa073b1e4 Merge siva.hindu.god:/home/tsmith/m/bk/maint/50
into  siva.hindu.god:/home/tsmith/m/bk/maint/51
2007-03-28 17:41:52 -06:00
tsmith@siva.hindu.god
8350721c88 Update test for bug #24563 (MBROverlaps does not seem to function propertly.):
- Add primary key to test table, so NDB with binlog doesn't complain
- Add extra results for bdb_gis.result
2007-03-28 17:40:42 -06:00
cbell/Chuck@mysql_cab_desk.
71c4bd1f0a Merge mysql_cab_desk.:C:/source/c++/mysql-5.1-new-rpl
into  mysql_cab_desk.:C:/source/c++/mysql-5.1_WL_3629
2007-03-26 09:57:16 -04:00
tsmith@siva.hindu.god
bd5012a8ca Merge siva.hindu.god:/home/tsmith/m/bk/maint/bmisc/50
into  siva.hindu.god:/home/tsmith/m/bk/maint/bmisc/51
2007-03-23 17:48:03 -06:00
tsmith@siva.hindu.god
47cce188b3 Bug #24563: MBROverlaps does not seem to function propertly.
Fix is to rewrite the MBR::overlaps() function, to compute the dimension of both
arguments, and the dimension of the intersection; test that all three dimensions are the
same (e.g., all are Polygons).

Add tests for all MBR* functions for various combinations of shapes, lines and points.
2007-03-23 16:28:07 -06:00
tomas@whalegate.ndb.mysql.com
05984c7aeb Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-single-user
2007-03-23 08:20:36 +01:00
mats@romeo.(none)
6a01170299 Merge romeo.(none):/home/bkroot/mysql-5.1-new-rpl
into  romeo.(none):/home/bk/b22583-mysql-5.1-new-rpl
2007-03-20 09:35:56 +01:00
mats@romeo.(none)
d695f74955 BUG#22583: RBR between MyISAM and non-MyISAM tables containing a BIT
field does not work

Fix to prevent MyISAM from reading data from NULL BLOB.
Fix to make record comparison independent of values of unused bits in
record.
Updating binlog positions in tests.
2007-03-20 08:52:01 +01:00
kostja@bodhi.local
bdb10baec1 Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  bodhi.local:/opt/local/work/mysql-5.1-runtime
2007-03-20 00:42:11 +03:00
kroki/tomash@moonlight.home
6d8f6b5bfd BUG#16420: Events: timestamps become UTC
BUG#26429: SHOW CREATE EVENT is incorrect for an event that
           STARTS NOW()
BUG#26431: Impossible to re-create an event from backup if its
           STARTS clause is in the past
WL#3698: Events: execution in local time zone

The problem was that local times specified by the user in AT, STARTS
and ENDS of CREATE EVENT/ALTER EVENT statement were converted to UTC,
and the original time zone was forgotten.  This way, event scheduler
couldn't honor Daylight Saving Time shifts, and times shown to the
user were also in UTC.  Additionally, CREATE EVENT didn't allow times
in the past, thus preventing straightforward event restoration from
old backups.

This patch reworks event scheduler time computations, performing them
in the time zone associated with the event.  Also it allows times to
be in the past.

The patch adds time_zone column to mysql.event table.

NOTE: The patch is almost final, but the bug#9953 should be pushed
first.
2007-03-16 17:31:07 +03:00
cbell/Chuck@mysql_cab_desk.
3e44599c11 WL#3629 - Replication of Invocation and Invoked Features
This changeset adds replication of events and user-defined functions. 
There are several bug reports involved in this change:

BUG#16421, BUG#17857, BUG#20384:
This patch modifies the mysql.events table to permit the addition of
another enum value for the status column. The column now has values
of ('DISABLED','SLAVESIDE_DISABLED','ENABLED'). A status of
SLAVESIDE_DISABLED is set on the slave during replication of events.
This enables users to determine which events werereplicated from the 
master and to later enable them if they promote the slave to a master.
The CREATE, ALTER, and DROP statements are binlogged.
A new test was added for replication of events (rpl_events).

BUG#17671:
This patch modifies the code to permit logging of user-defined functions.
Note: this is the CREATE FUNCTION ... SONAME variety. A more friendly error 
message to be displayed should a replicated user-defined function not be
found in the loadable library or if the library is missing from the
slave.The CREATE andDROP statements are binlogged. A new test was added 
for replication of user-defined functions (rpl_udf). 

The patch also adds a new column to the mysql.event table named
'originator' that is used to store the server_id of the server that
the event originated on. This enables users to promote a slave to a 
master and later return the promoted slave to a slave and disable the
replicated events.
2007-03-16 09:56:57 -04:00
guilhem@gbichot3.local
eaf7728d9f Fix for BUG#735 "Prepared Statements: there is no support for Query
Cache".
WL#1569 "Prepared Statements: implement support of Query Cache".
Prepared SELECTs did not look up in the query cache, and their results
were not stored in the query cache. This made them slower than
non-prepared SELECTs in some cases.
The fix is to re-use the expanded query (the prepared query where
"?" placeholders are replaced by their values, at execution time)
for searching/storing in the query cache.
It works fine for statements prepared via mysql_stmt_prepare(), which
are the most commonly used and were the scope of this bugfix and WL.
It works less fine for statements prepared via the SQL command
PREPARE...FROM, which are still not using the query cache if they
have at least one parameter (because then the expanded query contains
names of user variables, and user variables don't work with the
query cache, even in non-prepared queries).
Note that results from prepared SELECTs, which are in the binary
protocol, and results from normal SELECTs, which are in the text
protocol, ignore each other in the query cache, because a result in the
binary protocol should never be served to a SELECT expecting the text
protocol and vice-versa.
Note, after this patch, bug 25843 starts applying to query cache
("changing default database between PREPARE and EXECUTE of statement
breaks binlog"), we need to fix it.
2007-03-09 18:09:57 +01:00
tomas@poseidon.mysql.com
f4e0bc78dd Merge poseidon.mysql.com:/home/tomas/mysql-5.1-telco-gca-ndb_restore
into  poseidon.mysql.com:/home/tomas/mysql-5.1-new-ndb
2007-03-09 01:01:20 +07:00
tomas@poseidon.mysql.com
cb4e5fbe00 Merge poseidon.mysql.com:/home/tomas/mysql-5.0-telco-gca-ndb_restore
into  poseidon.mysql.com:/home/tomas/mysql-5.0-ndb
2007-03-09 00:55:46 +07:00
msvensson@pilot.blaudden
2739246719 Merge bk-internal:/home/bk/mysql-5.1-new-maint
into  pilot.blaudden:/home/msvensson/mysql/mysql-5.1-maint
2007-03-08 13:31:37 +01:00
msvensson@pilot.blaudden
49d862230e Merge bk-internal:/home/bk/mysql-5.0-maint
into  pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint
2007-03-08 13:30:04 +01:00
tomas@poseidon.mysql.com
bd49cdd273 Merge poseidon.mysql.com:/home/tomas/mysql-5.0-telco-gca-ndb_restore
into  poseidon.mysql.com:/home/tomas/mysql-5.1-telco-gca-ndb_restore
2007-03-07 13:44:54 +07:00
tomas@poseidon.mysql.com
a42d10a3d4 Bug#26899 ndb_restore cannot restore selected tables and databases
Bug#26900 ndb_restore printout option does not give structured data
  - test cases
2007-03-07 13:19:37 +07:00
mleich@four.local.lan
2511beddcc Bug#18946 Test case rpl_ndb_ddl disabled
1. Fixes within the testscripts   (affects rpl_ddl.test and rpl_ndb_ddl.test)
   - slave connection is only an observer (-> AUTOCOMMIT = 0)
     This removes the problem with the hanging test around DROP DATABASE (NDB). The hanging test around DROP DATABASE is a difference to InnoDB/MyISAm behaviour but fare
     away of a clear bug. IMHO this behaviour does not violate the SQL standard and should be therefore simply accepted.   
   - removal of wrong comments
   - CREATE/DROP TEMPORARY TABLE must not cause implicit commit of the current transaction.
     NDB behaves here correct and InnoDB/Falcon wrong.
   - Add a missing connection slave
   - Reenable the test rpl_ndb_ddl.
2. Disable rpl_ddl.test because of Bug#26418.
3. Reenable rpl_ndb_ddl.test
4. Improvements (affect rpl_ddl.test and rpl_ndb_ddl.test)
   - Better + extended comments which should prevent that somebody accidently destroys the logics of the test
   - Replace SELECT's printing comments by "--echo"  (decreases the number of auxiliary SQL commands)
   - Remove the need for include/rpl_stmt_seq2.inc   (was mostly redundant to rpl_stmt_seq.inc)
   - Remove extra/rpl_tests/rpl_ndb_ddl.test         (corrected extra/rpl_tests/rpl_ddl.test is sufficient)  
   - Shift assignment of values to $show_binlog, $manipulate (variables useful for debugging) into the toplevel scripts
   - The temporary tables get now their storage engine from the variable $temp_engine_type. (more deterministic testing conditions)
   - Add additional protocol line if the connection is switched (was partially missing)
   - Add two DML commands for comparison purposes
2007-03-06 18:15:31 +01:00
ramil/ram@ramil.myoffice.izhnet.ru
361a15000a Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into  mysql.com:/home/ram/work/b26038/b26038.5.1
2007-03-05 18:22:36 +04:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
fe801fcf5d Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/home/ram/work/b26038/b26038.5.0
2007-03-05 18:22:35 +04:00
ramil/ram@ramil.myoffice.izhnet.ru
ca66f604f4 Merge mysql.com:/home/ram/work/b26038/b26038.5.0
into  mysql.com:/home/ram/work/b26038/b26038.5.1
2007-03-05 17:12:37 +04:00
msvensson@pilot.blaudden
93ac2c4328 Merge pilot.blaudden:/home/msvensson/mysql/bug21781/my50-bug21781
into  pilot.blaudden:/home/msvensson/mysql/bug21781/my51-bug21781
2007-03-05 10:30:05 +01:00
msvensson@pilot.blaudden
9a2eea4019 Add "have_ssl" as synonym for "have_openssl" 2007-03-05 10:03:42 +01:00
tnurnberg@sin.intern.azundris.com
edf3519b23 Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into  mysql.com:/home/tnurnberg/21103/51-21103
2007-03-03 00:56:21 +01:00
tnurnberg@sin.intern.azundris.com
36a5e0b3df Merge mysql.com:/home/tnurnberg/21103/50-21103
into  mysql.com:/home/tnurnberg/21103/51-21103
2007-03-02 15:25:06 +01:00
tnurnberg@mysql.com/sin.intern.azundris.com
f37267bb3c Bug #21103: DATE column not compared as DATE
If we compare two items A and B, with B being (a constant) of a
larger type, then A gets promoted to B's type for comparison if
it's a constant, function, or CAST() column, but B gets demoted
to A's type if A is a (not explicitly CAST()) column. This is
counter-intuitive and not mandated by the standard.
 
Disabling optimisation where it would be lossy so field value
will properly get promoted and compared as binary string (rather
than as integers).
2007-03-02 15:23:13 +01:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
f165316cfc after merge fix (bug #26038)
Item_func_geometry_from_text::val_str() should set null_value
in case of wrong data.
2007-03-02 15:09:44 +04:00
msvensson@pilot.blaudden
51a71fb667 Merge pilot.blaudden:/home/msvensson/mysql/mysql-5.1
into  pilot.blaudden:/home/msvensson/mysql/mysql-5.1-maint
2007-03-01 14:53:32 +01:00
msvensson@pilot.blaudden
b03f54df25 Merge pilot.blaudden:/home/msvensson/mysql/bug20166/my51-bug20166
into  pilot.blaudden:/home/msvensson/mysql/mysql-5.1-new-maint
2007-02-27 14:55:00 +01:00
msvensson@pilot.blaudden
14cfc7e1ba Merge pilot.blaudden:/home/msvensson/mysql/bug20166/my50-bug20166
into  pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint
2007-02-27 14:54:33 +01:00
msvensson@pilot.blaudden
f6e31a2cd1 Merge pilot.blaudden:/home/msvensson/mysql/bug20166/my50-bug20166
into  pilot.blaudden:/home/msvensson/mysql/bug20166/my51-bug20166
2007-02-26 14:25:59 +01:00
msvensson@pilot.blaudden
c550a45522 Bug#20166 mysql-test-run.pl does not test system privilege tables creation
- Use mysql_system_tables.sql to create MySQL system tables in
   all places where we create them(mysql_install_db, mysql-test-run-pl
   and mysql_fix_privilege_tables.sql)
2007-02-26 11:49:24 +01:00
msvensson@pilot.blaudden
5f7dbe07cd Merge pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint
into  pilot.blaudden:/home/msvensson/mysql/mysql-5.1-new-maint
2007-02-26 11:00:17 +01:00
msvensson@pilot.blaudden
5068ef8854 Workaround non portable use of "grep" and "cut" by loading the whole processlist
into temporary table and selecting the correct row with SQL
2007-02-26 09:16:22 +01:00
monty@mysql.com/narttu.mysql.fi
f0ae3ce9b9 Fixed compiler warnings
Fixed compile-pentium64 scripts
Fixed wrong estimate of update_with_key_prefix in sql-bench
Merge bk-internal.mysql.com:/home/bk/mysql-5.1 into mysql.com:/home/my/mysql-5.1
Fixed unsafe define of uint4korr()
Fixed that --extern works with mysql-test-run.pl
Small trivial cleanups
This also fixes a bug in counting number of rows that are updated when we have many simultanous queries
Move all connection handling and command exectuion main loop from sql_parse.cc to sql_connection.cc
Split handle_one_connection() into reusable sub functions.
Split create_new_thread() into reusable sub functions.
Added thread_scheduler; Preliminary interface code for future thread_handling code.

Use 'my_thread_id' for internal thread id's
Make thr_alarm_kill() to depend on thread_id instead of thread
Make thr_abort_locks_for_thread() depend on thread_id instead of thread
In store_globals(), set my_thread_var->id to be thd->thread_id.
Use my_thread_var->id as basis for my_thread_name()
The above changes makes the connection we have between THD and threads more soft.

Added a lot of DBUG_PRINT() and DBUG_ASSERT() functions
Fixed compiler warnings
Fixed core dumps when running with --debug
Removed setting of signal masks (was never used)
Made event code call pthread_exit() (portability fix)
Fixed that event code doesn't call DBUG_xxx functions before my_thread_init() is called.
Made handling of thread_id and thd->variables.pseudo_thread_id uniform.
Removed one common 'not freed memory' warning from mysqltest
Fixed a couple of usage of not initialized warnings (unlikely cases)
Suppress compiler warnings from bdb and (for the moment) warnings from ndb
2007-02-23 13:13:55 +02:00
kaa@polly.local
41eccda1df Merge polly.local:/tmp/maint/bug25137/my51-bug25137
into  polly.local:/home/kaa/src/maint/mysql-5.1-maint
2007-02-20 23:16:18 +03:00
kaa@polly.local
2606d6b9cb 5.1-specific fix for bug #18743.
Moved tests requiring ucs2 from mix2_myisam.test to a separate unit.
2007-02-19 15:31:55 +03:00
igor@olga.mysql.com
fb9e0ad3be Merge olga.mysql.com:/home/igor/mysql-5.0-opt
into  olga.mysql.com:/home/igor/mysql-5.1-opt
2007-02-13 01:34:36 -08:00
dlenev@mockturtle.local
631d3c9c1f Merge bk-internal.mysql.com:/home/bk/mysql-5.1-marvel
into  mockturtle.local:/home/dlenev/src/mysql-5.1-merge
2007-01-25 14:58:45 +03:00
dlenev@mockturtle.local
86f36eb089 Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  mockturtle.local:/home/dlenev/src/mysql-5.1-merge
2007-01-24 19:26:06 +03:00