[Answer Query Using Materialized Views] Consider mutable functions and bypass expressions have no Vars for view query target. #455
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fix misc of AQUMV, please review by commits:
Bypass expression has no Vars for view query target.
For expressions have no Vars, we don't need to sort and take
them into account.
Origin query has mutable functions can not use AQUMV.
We have disabled view query has mutable functions, but forget the
origin query.
Mutable functions should be kept in the origin relation.
Example:
Function random() should be projected on t1 itself.
Add case HAVING clause doesn't have column reference.
HAVING quals like: having 2 > 1, the clause without column reference
should be ok in AQUMV.
Expression
2 > 1is always true if there were tuples form the underlying relations, same for materialized views we use.So we could just drop things like that.
Use shcema aqumv for tests