Merge remote-tracking branch 'origin/QA_4_1' into QA_4_1

This commit is contained in:
Weblate 2014-01-21 11:54:17 +01:00
commit ad7c483a93
3 changed files with 8 additions and 2 deletions

View File

@ -74,6 +74,9 @@ $is_count = isset($analyzed_sql[0]['queryflags']['is_count']);
// check for a real SELECT ... FROM
$is_select = isset($analyzed_sql[0]['queryflags']['select_from']);
// the query contains a subquery
$is_subquery = isset($analyzed_sql[0]['queryflags']['is_subquery']);
// check for CALL
// Since multiple query execution is anyway handled,
// ignore the WHERE clause of the first sql statement
@ -105,7 +108,8 @@ $analyzed_sql_results = array(
"is_func" => $is_func,
"is_count" => $is_count,
"is_select" => $is_select,
"is_procedure" => $is_procedure
"is_procedure" => $is_procedure,
"is_subquery" => $is_subquery
);

View File

@ -839,7 +839,7 @@ function PMA_isAppendLimitClause($analyzed_sql_results)
if (($_SESSION['tmpval']['max_rows'] != 'all')
&& ! ($analyzed_sql_results['is_export']
|| $analyzed_sql_results['is_analyse'])
&& $select_from
&& ($select_from || $analyzed_sql_results['is_subquery'])
&& ! isset($analyzed_sql_results['analyzed_sql'][0]['queryflags']['offset'])
&& empty($analyzed_sql_results['analyzed_sql'][0]['limit_clause'])
) {

View File

@ -996,6 +996,7 @@ function PMA_SQP_analyze($arr)
* |MIN|MAX|BIT_OR|BIT_AND
* ['queryflags']['is_count'] = 1; for the presence of SELECT COUNT
* ['queryflags']['is_procedure'] = 1; for the presence of CALL
* ['queryflags']['is_subquery'] = 1; contains a subquery
*
* query clauses
* -------------
@ -1213,6 +1214,7 @@ function PMA_SQP_analyze($arr)
if ($number_of_brackets > 0) {
$in_subquery = true;
$seen_subquery = true;
$subresult['queryflags']['is_subquery'] = 1;
// this is a subquery so do not analyze inside it
continue;
}