mirror of
https://github.com/MariaDB/server.git
synced 2025-07-27 18:02:13 +03:00
MDEV-4520: Assertion `0' fails in Query_cache::end_of_result on concurrent drop event and event execution
If there is no net.vio then query cache cant't get data via net_real_write() so it is better just do not try to cache such query.
This commit is contained in:
@ -4000,7 +4000,8 @@ Query_cache::is_cacheable(THD *thd, LEX *lex,
|
||||
if (thd->lex->safe_to_cache_query &&
|
||||
(thd->variables.query_cache_type == 1 ||
|
||||
(thd->variables.query_cache_type == 2 && (lex->select_lex.options &
|
||||
OPTION_TO_QUERY_CACHE))))
|
||||
OPTION_TO_QUERY_CACHE))) &&
|
||||
thd->net.vio)
|
||||
{
|
||||
DBUG_PRINT("qcache", ("options: %lx %lx type: %u",
|
||||
(long) OPTION_TO_QUERY_CACHE,
|
||||
@ -4022,11 +4023,12 @@ Query_cache::is_cacheable(THD *thd, LEX *lex,
|
||||
}
|
||||
|
||||
DBUG_PRINT("qcache",
|
||||
("not interesting query: %d or not cacheable, options %lx %lx type: %u",
|
||||
("not interesting query: %d or not cacheable, options %lx %lx type: %u net->vio present: %u",
|
||||
(int) lex->sql_command,
|
||||
(long) OPTION_TO_QUERY_CACHE,
|
||||
(long) lex->select_lex.options,
|
||||
(int) thd->variables.query_cache_type));
|
||||
(int) thd->variables.query_cache_type,
|
||||
(uint) test(thd->net.vio)));
|
||||
DBUG_RETURN(0);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user