Commit graph

115 commits

Author SHA1 Message Date
istruewing@stella.local
d5390b2d56 Bug#33756 - query cache with concurrent_insert=0 appears broken
When concurrent inserts were disabled, statements after an INSERT
were not put into the query cache. This happened because we do not
save the current data file length at statement start when
concurrent inserts are disabled. But we checked the always zero
local length against the real file length anyway.
  
Fixed by doing the check only if concurrent inserts are not diabled.
2008-03-13 16:39:27 +01:00
thek@adventure.(none)
88107378cd Merge adventure.(none):/home/thek/Development/cpp/bug30269/my50-bug30269
into  adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime
2007-08-21 17:47:06 +02:00
thek@adventure.(none)
acfe3fc924 Bug#30269 Query cache eats memory
Although the query cache doesn't support retrieval of statements containing
column level access control, it was still possible to cache such statements
thus wasting memory.
  
This patch extends the access control check on the target tables to avoid
caching a statement with column level restrictions. 

Views are excepted and can be cached but only retrieved by super user account.
2007-08-21 13:43:09 +02:00
thek@adventure.(none)
35533f9d8f Merge adventure.(none):/home/thek/Development/cpp/bug30269/my50-bug30269
into  adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime
2007-08-17 17:27:41 +02:00
thek@adventure.(none)
a4248c2dd3 Bug #30269 Query cache eats memory
Although the query cache doesn't support retrieval of statements containing
column level access control, it was still possible to cache such statements
thus wasting memory.

This patch extends the access control check on the target tables to avoid
caching a statement with column level restrictions.
2007-08-17 16:55:20 +02:00
evgen@moonbone.local
e53a484ec9 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  moonbone.local:/mnt/gentoo64/work/29856-bug-5.0-opt-mysql
2007-07-28 22:47:03 +04:00
evgen@moonbone.local
123666299e Bug#29856: Insufficient buffer space led to a server crash.
The subst_spvars function is used to create query string with SP variables 
substituted with their values. This string is used later for the binary log
and for the query cache. The problem is that the
query_cache_send_result_to_client function requires some additional space
after the query to store database name and query cache flags. This 
space wasn't reserved by the subst_spvars function which led to a memory
corruption and crash.

Now the subst_spvars function reserves additional space for the query cache.
2007-07-28 15:01:29 +04:00
thek@adventure.(none)
2a5e7fe592 Merge adventure.(none):/home/thek/Development/cpp/bug28249/my50-bug28249
into  adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime
2007-07-12 15:30:34 +02:00
thek@adventure.(none)
8ee7e48de8 Bug#28249 Query Cache returns wrong result with concurrent insert / certain lock
A race condition in the integration between MyISAM and the query cache code 
caused the query cache to fail to invalidate itself on concurrently inserted
data.

This patch fix this problem by using the existing handler interface which, upon
each statement cache attempt, compare the size of the table as viewed from the 
cache writing thread and with any snap shot of the global table state. If the
two sizes are different the global table size is unknown and the current
statement can't be cached.
2007-07-12 13:29:51 +02:00
dkatz@damien-katzs-computer.local
b89e4f9ef2 Bug #29053 SQL_CACHE in UNION causes non-deterministic functions to be cached
Changed code to enforce that SQL_CACHE only in the first SELECT is used to turn on caching(as documented), but any SQL_NO_CACHE will turn off caching (not documented, but a useful behaviour, especially for machine generated queries). Added test cases to explicitly test the documented caching behaviour and test cases for the reported bug.
2007-06-18 17:16:20 -04:00
dkatz@damien-katzs-computer.local
1481bfc87b Bug #28897 UUID() returns non-unique values when query cache is enabled
Removed the ability to cache queries containing "UUID()".
2007-06-13 14:23:25 -04:00
thek@adventure.(none)
5e774747bc 4.1 -> 5.0 Manual merge for Bug #27792 2007-05-08 11:24:07 +02:00
msvensson@pilot.mysql.com
45fe5879f4 Bug#18628 mysql-test-run: security problem(part1)
- Implement --secure-file-priv=<dir> option that limits
  "load_file", "LOAD DATA" and "SELECT .. INTO OUTFILE" to work 
  with files in specified dir.
 - Use above option for mysqld in mysql-test-run.pl
2007-02-14 14:44:34 +01:00
holyfoot/hf@mysql.com/deer.(none)
e95e23b0f3 Merge bk@192.168.21.1:mysql-5.0-opt
into  mysql.com:/home/hf/work/mysql-5.0-0mrg
2006-11-17 10:30:16 +04:00
evgen@moonbone.local
5198354584 Bug#20045: Server crash on INSERT ... SELECT ... FROM non-mergeable view
The regression is caused by the fix for bug 14767. When INSERT ... SELECT
used a view in the SELECT list that was not inlined, and there was an 
active transaction, the server could crash in Query_cache::invalidate.

On INSERT ... SELECT only the table being inserted into is invalidated.
Thus views that can't be inlined are skipped from invalidation.

The bug manifests itself in two ways so there is 2 test cases.
One checks that the only the table being inserted into is invalidated.
And the second one checks that there is no crash on INSERT ... SELECT.
2006-11-14 19:50:44 +03:00
msvensson@neptunus.(none)
f39ff057d1 Update tests and result files after running with new mysqltest that better detects problems with test files 2006-10-04 13:09:37 +02:00
monty@mysql.com
82b77cdd90 Fixes to embedded server to be able to run tests with it
(Needed for "list of pushes" web page and autopush)
2006-02-24 18:34:15 +02:00
msvensson@neptunus.(none)
09ec2919a1 Make it possible to run mysql-test-run.pl with default test suite in different vardir. 2006-01-24 08:30:54 +01:00
bell@sanja.is.com.ua
54b7e6e3dc Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into  sanja.is.com.ua:/home/bell/mysql/bk/work-merge1-5.0
2005-12-02 20:50:54 +02:00
evgen@moonbone.local
00b902b065 Manually merged 2005-12-02 19:42:14 +03:00
bell@sanja.is.com.ua
7796a79477 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into  sanja.is.com.ua:/home/bell/mysql/bk/work-merge1-5.0
2005-12-01 14:38:29 +02:00
bell@sanja.is.com.ua
12d1bf1231 We should skip beggining '(' characters when test query on possibility
to be in the query cache. (BUG#14652)
2005-12-01 14:26:19 +02:00
ramil@mysql.com
de26178f75 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/usr/home/ram/work/5.0.b10303
2005-10-24 11:36:29 +05:00
msvensson@neptunus.(none)
9b7a3bec70 Bug #13231 mysqltest: fails to dectect when mysql_next_result fails
- Packets out of order when reading cached data stored by a normal select from a ps or vice versa.
 - Add pkt_nr to query cache flags
2005-09-29 10:25:44 +02:00
ramil@mysql.com
68acf8fdea fix (bug #10303: Misleading Last_query_cost value). 2005-09-06 15:00:35 +05:00
jimw@mysql.com
fa94e5389a Merge mysql.com:/home/jimw/my/mysql-4.1-clean
into  mysql.com:/home/jimw/my/mysql-5.0-clean
2005-08-04 12:49:23 -07:00
jimw@mysql.com
b9da417688 Update test to deal with more relaxed datetime parsing. 2005-08-04 12:45:32 -07:00
hf@deer.(none)
293cfafd37 Merge deer.(none):/home/hf/work/mysql-4.1.clean
into deer.(none):/home/hf/work/mysql-5.0.clean
2005-08-04 16:36:14 +05:00
hf@deer.(none)
c396a32f46 Fix for bug #9508 (query_cache test fails)
notembedded-specific part moved to the new test
2005-07-29 17:14:21 +05:00
monty@mysql.com
15d48525af Merge mysql.com:/home/my/mysql-4.1
into  mysql.com:/home/my/mysql-5.0
2005-07-28 17:09:54 +03:00
monty@mysql.com
3c12d0ae54 Added end marker for tests to make future merges easier 2005-07-28 03:22:47 +03:00
bell@sanja.is.com.ua
f5833989ba Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into  sanja.is.com.ua:/home/bell/mysql/bk/work-bug1-5.0
2005-07-23 07:55:07 +03:00
bell@sanja.is.com.ua
bfdb6ca3cf store SERVER_MORE_RESULTS_EXISTS in key of query cache (BUG#6897) 2005-07-23 07:51:25 +03:00
bell@sanja.is.com.ua
15d02e60e1 merge 2005-07-05 11:38:05 +03:00
bell@sanja.is.com.ua
54662b4487 merge 2005-07-04 01:36:06 +03:00
bell@sanja.is.com.ua
b49b5805eb abort storing query to query cache if warnings appeared (BUG#9414) 2005-06-28 00:52:21 +03:00
bell@sanja.is.com.ua
28a93877ca temporary tables of subquery in the from clause just skipped during processing QC tables (BUG#11522) 2005-06-23 20:06:35 +03:00
bell@sanja.is.com.ua
a78cc26947 prohibit opening Query cache for SP cursors (BUG#9715) 2005-06-14 22:45:48 +03:00
jimw@mysql.com
7bab94f36b Clean up merge from 4.1 2005-05-02 10:19:37 -07:00
jimw@mysql.com
78ff49437f Manually resolve merge 2005-04-29 08:46:03 -07:00
reggie@mdk10.(none)
4bb4a285ab Merge mdk10.(none):/home/reggie/bk/mysql-4.1
into mdk10.(none):/home/reggie/bk/mysql-5.0
2005-04-11 09:29:49 -05:00
dlenev@mysql.com
b0dd388190 Merge mysql.com:/home/dlenev/src/mysql-4.0-bg9796
into mysql.com:/home/dlenev/src/mysql-4.1-merges
2005-04-11 09:53:54 +04:00
dlenev@mysql.com
06e3647274 Fix for bug #9796 "Query Cache caches queries with CURRENT_USER()
function".

We should not cache queries using CURRENT_USER() function as we do it
for some other functions, e.g. USER() function.
2005-04-11 00:30:23 +04:00
jimw@mysql.com
1476213e52 Fix crash in embedded server due to incorrect storage of results
in the query cache. (Bug #9549)
2005-03-31 19:17:45 -08:00
jimw@mysql.com
f463143158 Update tests and test results after merge, disable broken NDB tests 2005-03-11 15:06:03 -08:00
jimw@mysql.com
eaea82d3af Merge query_cache tests 2005-03-11 12:38:38 -08:00
jimw@mysql.com
50f9fc3368 Merge test and results 2005-03-11 11:07:32 -08:00
jimw@mysql.com
df84c534dd Flush entries from the query cache for tables used in
administrative statements that may alter the table, such
as REPAIR TABLE. (Bug #8480)
2005-03-07 18:15:19 -08:00
gluh@gluh.mysql.r18.ru
50266af38c wl#1629 SHOW with WHERE(final part, after review)
added syntax:
  'show variables where', 'show status where', 'show open tables where'
2004-12-30 15:20:40 +03:00
monty@mysql.com
afbe601302 merge with 4.1 2004-10-29 19:26:52 +03:00