Commit graph

3038 commits

Author SHA1 Message Date
guilhem@mysql.com
7eda171f9a There is no reason that Intvar_log_event's constructor calls Log_event::Log_event()
instead of Log_event::Log_event(THD*, ...) when the event is built in the master
to be written in the binlog.
Rand_log_event already used the good constructor, so there really is no reason
for Intvar_log_event to be an exception.
This fixes a test failure of last night (which appeared after I removed a useless
e.server_id=thd->server_id in log.cc; in fact this line was not useless because
it hid the bad constructor).
Replication tests pass, with Valgrind too.
2003-12-02 16:49:46 +01:00
konstantin@mysql.com
21b506ba21 Merge mysql.com:/home/kostja/mysql/mysql-4.0-root
into mysql.com:/home/kostja/mysql/mysql-4.0-1790
2003-12-02 18:04:00 +03:00
guilhem@mysql.com
b40eb13b79 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2003-12-01 15:21:42 +01:00
guilhem@mysql.com
612109ffa0 Removing unneeded code: the Intvar_log_event constructor calls the Log_event constructor
which does e.server_id=thd.server_id.
2003-12-01 14:59:35 +01:00
serg@serg.mylan
77d137a24a Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2003-11-28 18:18:58 +01:00
monty@mysql.com
4f42a47408 Fixed range optimzier bug (Bug #1828) 2003-11-28 15:45:34 +02:00
serg@serg.mylan
ffb499927c Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2003-11-28 12:51:15 +01:00
serg@serg.mylan
16e5b4f0ba bug #1945. item(expression)->name=0, crash in find_item_in_list 2003-11-28 12:36:45 +01:00
monty@mysql.com
ed6e446225 Added compilation comment to 'show variables'
This makes it possible to check origin of binary from the output of 'show variables'
2003-11-26 03:30:00 +02:00
gluh@gluh.mysql.r18.ru
3ff69d5dc4 Fix for bug #1855: mysqld crashes with certain SSL connections 2003-11-24 13:57:49 +04:00
monty@mysql.com
41eda1c949 Revert patch for bigint handling in double context as it broke normal bigint handling
The right way to fix this is to change the Field::store(longlong) method to be
Field::store(longlong, bool unsigned_flag), but this is better to do in 4.1 than in 4.0
2003-11-21 00:11:50 +02:00
konstantin@mysql.com
c4a9dc4f8b fix for bug #1790:
"BIT_AND() result in GROUP BY different when SQL_BIG_RESULT used"

return value of BIT_AND changed to BIGINT SIGNED
Also the patch fixes another bug: when temporary table is in use and one of
values in group is NULL, BIT_AND always returns zero.
Fixed it to always skip null values.
2003-11-21 00:03:04 +03:00
konstantin@mysql.com
dd287a4cdf added comments to simple_order, simple_group, no_order, skip_sort_order 2003-11-20 21:21:56 +03:00
bell@sanja.is.com.ua
a1ceb1bd04 database invalidation invalidate queries only of given database (BUG#1898) 2003-11-20 18:12:49 +02:00
serg@serg.mylan
707e7e8992 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2003-11-19 23:13:48 +01:00
serg@serg.mylan
11f70bdfc4 Bug#1826, HANDLER+ALTER TABLE=crash (unfortunately, it cannot be tested in mysql-test suite)
more user variable tests
2003-11-18 22:06:47 +01:00
guilhem@mysql.com
a780924979 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2003-11-18 17:36:09 +01:00
guilhem@mysql.com
8377acc7d1 Fix for BUG#1870
"CHANGE MASTER makes SQL thread restart from coordinates of I/O thread".
    So, in CHANGE MASTER:
    when it seems reasonable that the user did not want to discontinue
    its replication (i.e. when he is not specifying host or port or master_log_file
    or master_log_pos; this will be documented), set the coordinates of the
    I/O thread to those of the SQL thread. This way, the SQL thread will see
    no discontinuity in the relay log (i.e. will skip no events), because
    the I/O thread will fill the brand new relay log with the events which
    are just after the position where the SQL thread had stopped
    (before CHANGE MASTER was issued).
    And a new test for this bug.
2003-11-18 17:31:17 +01:00
gluh@gluh.mysql.r18.ru
f159963c00 Fix for bug #1564: 'CREATE TABLE + UNION + same table name = crash'
(related to previous changeset)
2003-11-17 18:34:06 +04:00
monty@mashka.mysql.fi
2846a16c57 Merge with 3.23 (only comment changes) 2003-11-17 16:16:56 +02:00
monty@mashka.mysql.fi
ea337204cb Safety fix for alarms on windows. 2003-11-17 12:59:07 +02:00
serg@serg.mylan
60d60a299e Item_uint::save_in_field() added to take into account bigint->decimal case 2003-11-16 17:37:15 +01:00
serg@serg.mylan
0b7ccfa882 make error message more detailed 2003-11-12 22:33:28 +01:00
gluh@gluh.mysql.r18.ru
e78f51fbe9 Fix for bug #1564: CREATE TABLE + UNION + same table name = crash 2003-11-11 18:14:49 +04:00
konstantin@mysql.com
2aff1b520b Merge mysql.com:/home/kostja/mysql/mysql-4.0-root
into mysql.com:/home/kostja/mysql/mysql-4.0-1724
2003-11-03 22:53:42 +03:00
guilhem@mysql.com
19c2162bdc Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2003-11-03 18:25:47 +01:00
guilhem@mysql.com
fbc54c139d When we delete the slave's temp tables from memory, we reset
rli->save_temporary_tables and slave_open_temp_tables
(in old 4.0 you could make "SHOW STATUS LIKE 'slave_open_temp_tables'" grow
indefinitely by doing RESET SLAVE and replicating always the same CREATE
TEMPORARY TABLE).
It's critical to reset save_temporary_tables to 0 (otherwise you may later
read memory which has been freed) so this changeset should go into 4.1.
2003-11-03 18:24:01 +01:00
konstantin@mysql.com
0143e48568 fix for bug #1724 'WHERE ... IN() optimizer behaviour
has changed since 4.0.14'
We need to calculate cost of RANGE
scan if it is present instead of cost of 
FULL scan.
2003-11-03 19:56:01 +03:00
monty@narttu.mysql.fi
3ebe794733 Portability fix 2003-11-02 16:38:27 +02:00
monty@mysql.com
306ffd74b4 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/my/mysql-4.0
2003-11-02 15:55:25 +02:00
monty@mysql.com
4668b54837 Call my_sync() after all data is written to .frm file
Added my_sync() to mysys which will do fsync/fdatasync/_commit() on a file.
2003-11-02 15:55:02 +02:00
guilhem@mysql.com
c1f7f33960 4 small items in this:
- when we don't have in_addr_t, use uint32.
- a forgotten initialization of slave_proxy_id in sql/log_event.cc (was not really "forgot", was
"we needn't init it there", but there was one case where we needed...).
- made slave_proxy_id always meaningful in THD and Log_event, so we can
rely more on it (no need to test if it's meaningful). THD::slave_proxy_id
is equal to THD::thread_id except for the slave SQL thread.
- clean up the slave's temporary table (i.e. free their memory) when slave
server shuts down.
2003-10-31 23:20:23 +01:00
konstantin@mysql.com
f9015d5ac8 thd->query assignment moved out
of lock scope
2003-10-31 17:03:08 +03:00
konstantin@mysql.com
2ec94ade8f Merge kosipov@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/kostja/mysql/mysql-4.0-root
2003-10-30 21:31:15 +03:00
konstantin@mysql.com
ca34cf30bd comments about designation of thd->where and
thd->proc_info added
2003-10-30 21:30:20 +03:00
guilhem@mysql.com
b99fd4beca Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2003-10-30 16:13:38 +01:00
monty@narttu.mysql.fi
a4fff85de5 Safety fix for adding service name to search config groups 2003-10-30 01:20:38 +02:00
monty@narttu.mysql.fi
bc00893d16 Change back service name to MySQL
Don't add service name to read config file segments if it's "MySQL"
Fixed possible memory leak when CHANGE USER failed.
2003-10-30 01:01:53 +02:00
guilhem@mysql.com
59d0872aa0 Fix for BUG#1686
"If 2 master threads with same-name temp table, slave makes bad binlog"
and (two birds with one stone) for
BUG#1240 "slave of slave breaks when STOP SLAVE was issud on parent slave
and temp tables".

Here is the design change:
in a slave running with --log-slave-updates, events are now logged with the
thread id they had on the master. So no more id conflicts between master threads,
but introduces id conflicts between one master thread and one normal 
client thread connected to the slave. This is solved by storing the server id
in the temp table's name.

New test which requires mysql-test-run to be run with --manager,
otherwise it will be skipped.

Undoing a Monty's change (hum, a chill runs down my spine ;) which was
"Cleanup temporary tables when slave ends" in ChangeSet 1.1572.1.1.
2003-10-29 14:23:35 +01:00
serg@serg.mylan
76ff047819 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2003-10-29 14:01:14 +01:00
serg@serg.mylan
1d617f1888 followup to max_user_connections fix, keep the count more accurate 2003-10-29 08:33:31 +01:00
monty@narttu.mysql.fi
d1572484bb Fix for problem of installing MySQL as a service with
mysql --install mysql --defualts-file=path-to-file
(Bug #1643)
2003-10-28 18:36:41 +02:00
serg@serg.mylan
75454930dc fixes for max_user_connections (connections are now counted even if
max_user_connections is not set - that is no limit - so that when
max_user_connections is set (with SET) old connections are also
taken into account
mutexes are added where appropriate
2003-10-27 15:14:03 +01:00
gluh@gluh.mysql.r18.ru
08cafccec7 Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-4.0
into gluh.mysql.r18.ru:/home/gluh/mysql-4.0.pass
2003-10-22 15:38:20 +05:00
serg@serg.mylan
b93c83ee2a Bug#1271 - RAND_TABLE_BIT in expression and only const_tables in join 2003-10-21 17:34:40 +02:00
gluh@gluh.mysql.r18.ru
f602be8d3f Fix for bug #1271: Undefined variable in PASSWORD() function is not
handled correctly
2003-10-21 15:14:06 +05:00
guilhem@mysql.com
e41ed5190c Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-3.23
into mysql.com:/home/mysql_src/mysql-3.23
2003-10-18 16:28:40 +02:00
heikki@hundin.mysql.fi
91f5c5e337 thr0loc.c, srv0start.c, srv0srv.c, srv0srv.h, os0thread.h, ha_innodb.cc:
Backport from 4.1: reduce InnoDB memory consumption if buf pool < 8 MB
2003-10-17 23:44:34 +03:00
kostja@oak.local
4aedeb3a60 Merge oak.local:/home/kostja/mysql/mysql-4.0-root
into oak.local:/home/kostja/mysql/mysql-4.0-1274
2003-10-17 18:44:13 +04:00
guilhem@mysql.com
ce6d736714 A fix for a random test failure rpl_trunc_binlog: don't RESET MASTER
while the slave is connected.
2003-10-17 00:00:25 +02:00
bell@sanja.is.com.ua
857b7a80a3 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-qc_crash-4.0
2003-10-16 21:17:45 +03:00
monty@mashka.mysql.fi
b1dba93cdb Safety fix to detect multiple calls to my_thread_end()
Portability fix (For Mac OS X)
2003-10-16 20:55:15 +03:00
kostja@oak.local
c7d8977f43 fix for one of the bugs spotted by #1274 2003-10-16 17:00:09 +04:00
monty@mashka.mysql.fi
f2884bac40 Changing max_insert_delayed_threads now also changes the size of thread alarm buffer. 2003-10-16 07:44:18 +03:00
monty@mashka.mysql.fi
84d9d98078 Better fix for CREATE TABLE IF NOT EXISTS ... SELECT
Fixed chsize() problem on windows
Extend default timeout on windows clients to 1 year (to avoid timeout problems)
2003-10-15 21:41:13 +03:00
monty@mashka.mysql.fi
35c09b8082 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mashka.mysql.fi:/home/my/mysql-4.0
2003-10-15 16:23:01 +03:00
monty@mashka.mysql.fi
b5849f451d Add more information about memory usage to debug log 2003-10-15 15:21:50 +03:00
monty@mashka.mysql.fi
2d3840f550 Fixed bug in SET enum_system_variable=NULL 2003-10-14 16:30:42 +03:00
serg@serg.mylan
f078e50a6b make LOCK TABLES to work when Lock_tables_priv is granted on the DB level and Select_priv is granted on the table level. 2003-10-14 13:10:41 +02:00
serg@serg.mylan
f3e7012d6e Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2003-10-14 00:27:04 +02:00
monty@mashka.mysql.fi
c95d142f8f Add new user variables for tuning memory usage:
query_alloc_block_size, query_prealloc_size, range_alloc_block_size,transaction_alloc_block_size and transaction_prealloc_size
Add more checks for "out of memory" detection in range optimization
2003-10-11 22:00:24 +03:00
guilhem@mysql.com
b2500829a3 Make the slave die if master is 5.0. Indeed, 5.0 masters send
a Format_description_log_event (or maybe it will be named
Description_log_event) which is not recognized by 4.0, so
a 4.0 can't be a slave of 5.0. We detect it early to produce
a helpful message instead of "corrupted relay log" later.
2003-10-09 17:40:38 +02:00
monty@mishka.mysql.fi
813e5816bd Merge bk-internal.mysql.com:/home/bk/mysql-3.23
into mishka.mysql.fi:/home/my/mysql-3.23
2003-10-08 21:04:30 +03:00
monty@mishka.mysql.fi
498e1c6d95 Fixed memory leak in send_file 2003-10-08 21:02:53 +03:00
serg@serg.mylan
9d198d35bf merged 2003-10-07 20:41:07 +02:00
vva@eagle.mysql.r18.ru
16b8fd8ece Merge eagle.mysql.r18.ru:/home/vva/work/mysql.orig/clear/mysql-4.0
into eagle.mysql.r18.ru:/home/vva/work/BUG_1323/mysql-4.0
2003-10-07 14:41:04 -04:00
monty@narttu.mysql.fi
446d40e880 After merge fixes 2003-10-07 00:23:29 +03:00
serg@serg.mylan
b58098c3b9 bug #1434 (and related issues) 2003-10-06 20:02:27 +02:00
serg@serg.mylan
2667d7f8cc fix_max_connections to resize alarm_queue (Bug #1435) 2003-10-06 14:11:16 +02:00
serg@serg.mylan
0ce865b6b4 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2003-10-06 09:24:12 +02:00
vva@eagle.mysql.r18.ru
af3184909c Merge eagle.mysql.r18.ru:/home/vva/work/mysql.orig/clear/mysql-4.0
into eagle.mysql.r18.ru:/home/vva/work/BUG_1323/mysql-4.0
2003-10-03 17:55:57 -04:00
vva@eagle.mysql.r18.ru
795e14871d Fixed bug #1323 (varchar fields becoming char fields adter create ... select) 2003-10-03 17:54:32 -04:00
guilhem@mysql.com
ae054504e3 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2003-10-03 22:18:34 +02:00
guilhem@mysql.com
52ae1609eb When the I/O thread was stopped while copying a long transaction, and restarted,
Rotate_log_event::exec_event() believed that the relay log was corrupted. Fixed it
by moving the test for corruption to Start_log_event::exec_event(). 
Changed Rotate_log_event::exec_event() to not increment positions when the
event is seen in the middle of a transaction.
I did a separate commit in 4.1 (so this should not be merged to 4.0) because
code is a bit different in 4.1.
A test to see if the slave detects when the master died while writing a 
transaction to the binlog (uses a forged truncated binlog I made).
2003-10-03 22:13:01 +02:00
monty@mishka.mysql.fi
3216d0559c Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mishka.mysql.fi:/home/my/mysql-4.0
2003-10-03 00:42:47 +03:00
monty@mishka.mysql.fi
989ca397b2 Optimized code for setting user variables with := and fixed some bugs in old code (Bug #1194)
Use forced close of socket to make mysqld shutdown faster when used under valgrind
2003-10-03 00:40:27 +03:00
guilhem@mysql.com
9f4d29c3f3 Reverting changeset 1.1590 2003-10-02 16:25:47 +02:00
bell@laptop.sanja.is.com.ua
267444b95a Merge laptop.sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.0
into laptop.sanja.is.com.ua:/home/bell/mysql/bk/work-qc_crash-4.0
2003-10-02 16:33:50 +03:00
guilhem@mysql.com
8c13c30142 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2003-10-01 18:46:24 +02:00
guilhem@mysql.com
301a30cbdd Follow-up of an IRC discussion today. Declaring ignore_log_space_limit volatile,
and a comment to explain why.
2003-10-01 18:40:27 +02:00
vva@eagle.mysql.r18.ru
14a2466532 Merge eagle.mysql.r18.ru:/home/vva/work/mysql.orig/clear/mysql-4.0
into eagle.mysql.r18.ru:/home/vva/work/BUG_1194/mysql-4.0
2003-10-01 12:22:30 -04:00
vva@eagle.mysql.r18.ru
761c790636 turn Item_func_set_user_var
::native_val, ::native_val_int and native_val_str into inline
2003-10-01 12:00:08 -04:00
vva@eagle.mysql.r18.ru
fd835da6ec rewrite Item_func_set_user_var ::val, ::val_str, ::val_int, ::update
with less code duplication
2003-09-30 12:32:48 -04:00
vva@eagle.mysql.r18.ru
293f27df35 fixed processing of COM_BINLOG_DUMP to use in mysqlbinlog 2003-09-29 15:42:33 -04:00
lenz@mysql.com
9b8b92faff - enable changing the number of table bits for JOINs to be increased
from ulong to ulonglong by defining -DBIG_JOINS
2003-09-29 12:01:10 +02:00
monty@narttu.mysql.fi
89f30200bc Removed random chars after filename for LOAD DATA INFILE (in mysqlbinlog)
Add quoting for use `database` for mysqlbinlog
Removed test ins0000001
Add support for --replace for exec in mysqltest
Don't refer to install dir in mysqlbinlog.result
2003-09-29 12:31:35 +03:00
serg@serg.mylan
8c7c4de0b4 enum options renamed to avoid possible name conflicts 2003-09-29 11:21:17 +02:00
guilhem@mysql.com
9d7014c07b Fix for BUG#1345 "SQL Syntax Error in binarylog with DROP TABLES":
it's just backquoting the db's and table's names
when writing DROP TEMPORARY TABLE to the binlog when a connection ends.
A testcase for this.
2003-09-28 18:31:49 +02:00
guilhem@mysql.com
bf5be93a13 backport of a fix made in 4.0 to make replication work in 64-bit binaries.
The 4.0 changeset was:
ChangeSet@1.1579.3.1, 2003-09-26 23:43:22+02:00, guilhem@mysql.com
  Fix for 64-bit machines.
  I am almost sure this is the cause for
  BUG#1381 [Opn]: Bug in replication on HP-UX 64 bit binaries?
  BUG#1256 [CRp]: Replication slave fails to connect to master in 64-bit version
 (Solaris)
  The reason why I think it's wrong is that the normal client code has
  uint32 ip_addr.
  (of course on 32-bit machines it does not matter, but on 64-bit it does).
2003-09-27 17:16:19 +02:00
guilhem@mysql.com
7dbbd82f13 Fix for 64-bit machines.
I am almost sure this is the cause for
BUG#1381 [Opn]: Bug in replication on HP-UX 64 bit binaries?
BUG#1256 [CRp]: Replication slave fails to connect to master in 64-bit version (Solaris)
The reason why I think it's wrong is that the normal client code has 
uint32 ip_addr.
(of course on 32-bit machines it does not matter, but on 64-bit it does).
2003-09-26 23:43:22 +02:00
vva@eagle.mysql.r18.ru
fd2925b7c7 fixed bug #1194
(changes in Item_func_set_user_var::update, ::val, ::val_str, ::val_int)
2003-09-24 19:30:20 -04:00
guilhem@mysql.com
e4c7496c14 a small comment about why we call end_io_cache in mysql_load 2003-09-25 00:24:06 +02:00
guilhem@mysql.com
c5242d2f46 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2003-09-25 00:15:47 +02:00
guilhem@mysql.com
9854acae25 Fix for BUG#1391:
"If LOAD DATA INFILE 'small_file' fails on master, slave leaves temp files"
(the bug is in the master)
2003-09-25 00:14:46 +02:00
dlenev@mysql.com
7795de8906 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/dlenev/src/mysql-4.0-bgrn
2003-09-25 01:25:54 +04:00
dlenev@mysql.com
7826fce264 Fixed BUG#1357 MySQL too eagerly cleanups temporary files for LOAD DATA (SQL_LOAD-...) 2003-09-25 01:25:19 +04:00
guilhem@mysql.com
b4171fe620 Fix for
Bug #1392 "On Win, slave leaves one temp file after successf. replicating LOAD DATA INFILE"
Windows-specific bug (we forgot to close a file before deleting it).
Patch written by me, tested by Miguel (thanks!) and it works.
2003-09-24 22:55:04 +02:00
dlenev@mysql.com
ef8cd36168 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/dlenev/src/mysql-4.0-opssl
2003-09-20 23:13:31 +04:00
serg@serg.mylan
02753ead71 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2003-09-18 14:35:25 +02:00
kostja@oak.local
6fba16eabf Applied Monty corrections to the FULL SCAN
optimiser bug patch.
2003-09-17 21:52:05 +04:00