Commit graph

53322 commits

Author SHA1 Message Date
anozdrin/alik@quad.
f039cf7ac7 Merge quad.:/mnt/raid/alik/MySQL/devel/bug-34337/5.0-rt-bug34337
into  quad.:/mnt/raid/alik/MySQL/devel/bug-34337/5.1-rt-bug34337
2008-02-21 12:24:40 +03:00
anozdrin/alik@quad.
f5cb5fdc4f Fix for Bug#34337: Server crash when Altering a view using
a table name.
  
The problem was that fill_defined_view_parts() did not return
an error if a table is going to be altered. That happened if
the table was already in the table cache. In that case,
open_table() returned non-NULL value (valid TABLE-instance from
the cache).
  
The fix is to ensure that an error is thrown even if the table
is in the cache.

(This is a backport of the original patch for 5.1)
2008-02-21 12:17:32 +03:00
mkindahl@dl145h.mysql.com
924ff2621e Merge mkindahl@bk-internal.mysql.com:/home/bk/mysql-5.1-new-rpl
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl
2008-02-21 09:04:25 +01:00
mkindahl@dl145h.mysql.com
802158bda5 Fixing result after merge. 2008-02-21 06:29:35 +01:00
davi@buzz.(none)
919ccd9111 Post-merge fixes for bugs 34587 and 32265. 2008-02-20 23:30:29 -02:00
vvaintroub@wva.
89aebb65fc Merge vvaintroub@bk-internal.mysql.com:/home/bk/mysql-5.0-build
into  wva.:C:/bk/bug31745_2/mysql-5.0-build
2008-02-21 02:22:02 +01:00
davi@buzz.(none)
bf9142825d Merge buzz.(none):/home/davi/mysql-5.0-runtime
into  buzz.(none):/home/davi/mysql-5.1-runtime
2008-02-20 23:18:40 -02:00
davi@mysql.com/endora.local
4b821c0cbd Post-merge fix to silence a compilation warning introduced
by patch for bug 32265 .
2008-02-20 22:11:06 -03:00
vvaintroub@wva.
940806c2ed Merge vvaintroub@bk-internal.mysql.com:/home/bk/mysql-5.1-build
into  wva.:C:/bk/bug31745_2/mysql-5.1-build
2008-02-21 01:53:35 +01:00
aelkin/andrei@mysql1000.(none)
49915eb88a Merge aelkin@bk-internal.mysql.com:/home/bk/mysql-5.1-new-rpl
into  mysql1000.(none):/home/andrei/MySQL/FIXES/5.1/bug31316-sss_server_id_clashes
2008-02-20 23:25:01 +02:00
aelkin/andrei@mysql1000.(none)
7e93d94ce5 Bug #31316 Report server id clashes in SHOW SLAVE STATUS
"Server_IO_State" field

Critical error messages from get_master_version_and_clock() were written
only to the slave errorlog while Show slave status did not display any
incident happened.

Although the artifact was reported for a particular --replicate-same-server-id
related issue the fix refines all critical error reporting with 
deploying rli->report().

The test for the bug covers only --replicate-same-server-id error reporting.
2008-02-20 23:18:01 +02:00
davi@endora.local
2aed47c98b Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  mysql.com:/Users/davi/mysql/mysql-5.1-runtime
2008-02-20 17:30:12 -03:00
davi@endora.local
529ed22389 Merge mysql.com:/Users/davi/mysql/bugs/34587-5.1
into  mysql.com:/Users/davi/mysql/mysql-5.1-runtime
2008-02-20 17:29:29 -03:00
davi@mysql.com/endora.local
b9c6b9eced Bug#34587 Creating a view inside a stored procedure leads to a server crash
The problem is that when a stored procedure is being parsed for
the first execution, the body is copied to a temporary buffer
which is disregarded sometime after the statement is parsed.
And during this parsing phase, the rule for CREATE VIEW was
holding a reference to the string being parsed for use during
the execution of the CREATE VIEW statement, leading to invalid
memory access later.

The solution is to allocate and copy the SELECT of a CREATE
VIEW statement using the thread memory root, which is set to
the permanent arena of the stored procedure.
2008-02-20 17:26:50 -03:00
davi@mysql.com/endora.local
0473205592 Bug#32265 Server returns different metadata if prepared statement is used
Executing a prepared statement associated with a materialized
cursor yields to the client a metadata packet with wrong table
and database names. The problem was occurring because the server
was sending the the name of the temporary table used by the cursor
instead of the table name of the original table. The same problem
occurs when selecting from views, in which case the table name was
being sent and not the name of the view.
  
The solution is to fill the list item from the temporary table but
preserving the table and database names of the original fields. This
is achieved by tweaking the Select_materialize to accept a pointer to
the Materialized_cursor class which contains the item list to be filled.
2008-02-20 16:45:24 -03:00
anozdrin/alik@quad.
576794214f Fix for Bug#34337: Server crash when Altering a view using
a table name.

The problem was that fill_defined_view_parts() did not return
an error if a table is going to be altered. That happened if
the table was already in the table cache. In that case,
open_table() returned non-NULL value (valid TABLE-instance from
the cache).

The fix is to ensure that an error is thrown even if the table
is in the cache.
2008-02-20 22:23:39 +03:00
mkindahl@dl145h.mysql.com
759d2f6658 Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl
2008-02-20 19:49:26 +01:00
mkindahl@dl145h.mysql.com
a71f298f2a Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.1
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl
2008-02-20 19:27:06 +01:00
mkindahl@dl145h.mysql.com
06375e2130 Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.0
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl
2008-02-20 19:25:18 +01:00
evgen@moonbone.local
682f0e0d15 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  moonbone.local:/work/33266-bug-5.0-opt-mysql
2008-02-20 18:01:53 +03:00
evgen@moonbone.local
56d955a5a0 Bug#33266: Incorrect test case for the bug#31048 failing on some platforms.
The test case for the bug#31048 checks that there is no crash on stack
overrun. But due to different stack sizes on different platforms it failed
on some of them.

The new test case check that a query with at least 4 level subquery nesting
works without the stack overrun nesting and other levels of nesting doesn't
cause a crash.
2008-02-20 17:41:39 +03:00
sven@riska.(none)
80dc1ee7f4 Removed the unused function int THD::binlog_flush_transaction_cache() 2008-02-20 15:22:14 +01:00
sven@riska.(none)
444da164df WL#4078: Document binary format of binlog entries
Minor update with corrections and notes on the binlog format.
This only affects comments, not code.
2008-02-20 14:52:21 +01:00
hhunger@hh-nb.hungers
f41ad6f89b Patch for bug#32664: event.test has timeout randomly. File is split into event_1.test and event_2.test. 2008-02-20 14:40:46 +01:00
tomas@poseidon.ndb.mysql.com
39c20516b7 Upon the sql command flush logs, we need to ensure that all outstanding
ndb data to be logged has made it to the binary log to get a deterministic
behavior on the rotation of the log.
2008-02-20 12:52:04 +01:00
bar@bar.myoffice.izhnet.ru
d5011e8561 Merge mysql.com:/home/bar/mysql-work/mysql-5.0.b32510
into  mysql.com:/home/bar/mysql-work/mysql-5.0.b32510v2
2008-02-20 14:38:52 +04:00
tsmith@ramayana.hindu.god
12d0319565 Merge ramayana.hindu.god:/home/tsmith/m/inno/feb18/51
into  ramayana.hindu.god:/home/tsmith/m/bk/build/51
2008-02-19 15:00:13 -07:00
kaa@kaamos.(none)
58240614f7 Merge kaamos.(none):/data/src/opt/bug31236/my51-bug31236
into  kaamos.(none):/data/src/opt/mysql-5.1-opt
2008-02-20 00:37:51 +03:00
kaa@kaamos.(none)
8d222210c7 Fix for bug #31236: Inconsistent division by zero behavior for
floating point numbers

Some math functions did not check if the result is a valid number
(i.e. neither of +-inf or nan).

Fixed by validating the result where necessary and returning NULL in
case of invalid result.
2008-02-20 00:33:43 +03:00
kostja@dipika.(none)
812ee08488 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  dipika.(none):/opt/local/work/mysql-5.1-runtime
2008-02-20 00:32:03 +03:00
kostja@dipika.(none)
f8ec5e0984 Fix a compilation failure of the community tree. 2008-02-19 23:47:15 +03:00
tomas@poseidon.bredbandsbolaget.se
50d95649f7 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.1
into  poseidon.bredbandsbolaget.se:/home/tomas/mysql-5.1-new-ndb-merge
2008-02-19 20:56:14 +01:00
mkindahl@dl145h.mysql.com
482997ea65 Removing deliberately generated errors for rpl_bug33931 test
and moving test to replication suite.
2008-02-19 19:59:48 +01:00
guilhem@gbichot4.local
3fe6684c48 fixes for build failures due to my yesterday's changeset forbidding
bool in C.
2008-02-19 18:45:11 +01:00
tsmith@ramayana.hindu.god
b8b6c7fcf7 Applied InnoDB snapshot innodb-5.1-ss2298
Fixes the following bugs:

- Bug #33349: possible race condition revolving around data dictionary and repartitioning
  Introduce retry/sleep logic as a workaround for a transient bug
  where ::open fails for partitioned tables randomly if we are using
  one file per table.

- Bug #34053: normal users can enable innodb_monitor logging
  In CREATE TABLE and DROP TABLE check whether the table in question is one
  of the magic innodb_monitor tables and whether the user has enough rights
  to mess with it before doing anything else.

- Bug #22868: 'Thread thrashing' with > 50 concurrent conns under an upd-intensive workloadw
- Bug #29560: InnoDB >= 5.0.30 hangs on adaptive hash rw-lock 'waiting for an X-lock'
  This is a combination of changes that forward port the scalability fix applied to 5.0
  through r1001.
  It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
  scalability fix of 5.0)
  Then it applies r1001 to 5.0 which is the original scalability fix.
  Finally it applies r2082 which fixes an issue with the original fix.

- Bug #30930: Add auxiliary function to retrieve THD::thread_id
  Add thd_get_thread_id() function.  Also make check_global_access() function
  visible to InnoDB under INNODB_COMPATIBILITY_HOOKS #define.
2008-02-19 09:44:09 -07:00
gkodinov/kgeorge@magare.gmz
5b508f2d16 Bug #30604: different flagging of time_zone_used in normal
and ps-protocol
Finding a routine should be a transparent operation as 
far as the binary log is concerned.
But it was influencing the binary log because of the TIMESTAMP
column in the proc table.

Fixed by preserving and restoring the time_zone usage flag when
searching for a stored routine in the proc table.
2008-02-19 17:27:18 +02:00
mkindahl@dl145h.mysql.com
a8f0320ce5 Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl
2008-02-19 16:12:23 +01:00
mkindahl@dl145h.mysql.com
e8e74a734f Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl-merge
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl
2008-02-19 14:47:29 +01:00
davi@endora.local
d5847eb112 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  mysql.com:/Users/davi/mysql/mysql-5.1-runtime
2008-02-19 10:39:14 -03:00
davi@endora.local
84a0d7c507 Merge mysql.com:/Users/davi/mysql/bugs/23771-5.1
into  mysql.com:/Users/davi/mysql/mysql-5.1-runtime
2008-02-19 10:36:31 -03:00
vvaintroub@wva.
b609c158d8 Post-merge fix 2008-02-19 14:25:26 +01:00
vvaintroub@wva.
efa91b5479 Merge wva.:C:/bk/bug31745_2/my51_31754_2/..\my50-bug31745_2
into  wva.:C:/bk/bug31745_2/my51_31754_2
2008-02-19 14:20:46 +01:00
kostja@dipika.(none)
72495c968b Rename send_eof() to my_eof() for consistency with my_ok() and my_error() 2008-02-19 15:58:08 +03:00
kostja@dipika.(none)
f106d9738a Rename send_ok to my_ok. Similarly to my_error, it only records the status,
does not send it to the client.
2008-02-19 15:45:21 +03:00
kostja@dipika.(none)
d8e6308c42 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  dipika.(none):/opt/local/work/mysql-5.1-2pc-opt-merge-push
2008-02-19 14:53:22 +03:00
kostja@dipika.(none)
acf9b1f346 A fix and a test case for Bug#12713 "Error in a stored function called from
a SELECT doesn't cause ROLLBACK of statem".

The idea of the fix is to ensure that we always commit the current
statement at the end of dispatch_command(). In order to not issue
redundant disc syncs, an optimization of the two-phase commit
protocol is implemented to bypass the two phase commit if
the transaction is read-only.
2008-02-19 14:43:01 +03:00
vvaintroub@wva.
f5932c0d95 Bug#31745 - crash handler does not work on Windows
- Replace per-thread signal()'s with  SetUnhandledExceptionFilter(). 
  The only remaining signal() is for SIGABRT (default abort()
  handler in VS2005 is broken, i.e removes user exception filter)
- remove MessageBox()'es  from error handling code
- Windows port for print_stacktrace() and write_core() 
- Cleanup, removed some unused functions
2008-02-19 12:37:39 +01:00
mkindahl@dl145h.mysql.com
446c3768f5 Merge mkindahl@bk-internal.mysql.com:/home/bk/mysql-5.1-new-rpl
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl
2008-02-19 11:07:14 +01:00
guilhem@gbichot4.local
045f3c4a5d Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.1-build
into  gbichot4.local:/home/mysql_src/mysql-5.1-build-gca
2008-02-18 23:36:57 +01:00
guilhem@gbichot4.local
9e2b31b026 Fix for server bug experienced in Maria (wrong "Truncated incorrect <var_name>
value" error even though the value was correct): a C function in my_getopt.c
was taking bool* in parameter and was called from C++ sql_plugin.cc,
but on some Mac OS X sizeof(bool) is 1 in C and 4 in C++, giving funny
mismatches. Fixed, all other occurences of bool in C are removed, future
ones are blocked by a "C-bool-catcher" in my_global.h (use my_bool).
2008-02-18 23:29:39 +01:00