Hello Impala Public Jenkins,

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/22011

to look at the new patch set (#2).

Change subject: IMPALA-13179: Make non-deterministic functions ineligible for 
tuple caching
......................................................................

IMPALA-13179: Make non-deterministic functions ineligible for tuple caching

Non-deterministic functions should make a location ineligible
for caching. Unlike existing definitions of non-determinism
like FunctionCallExpr.isNondeterministicBuiltinFn(),
the non-determinism needs to apply over time and across query
boundaries, so it is a broader list of functions.

The following are considered non-deterministic in this change:
 1. Random functions like rand/random/uuid
 2. Current time functions like now/current_timestamp
 3. Session/system information like current_user/pid/coordinator
 4. AI functions
 5. UDFs

With enable_expr_rewrites=true, constant folding can replace
some of these with a single constant (e.g. now() becomes a specific
timestamp). This is not a correctness problem for tuple caching,
because the specific value is incorporated into the cache key.

Testing:
 - Added test cases to TupleCacheTest

Change-Id: I9601dba87b3c8f24cbe42eca0d8070db42b50488
---
M fe/src/main/java/org/apache/impala/analysis/FunctionCallExpr.java
M fe/src/main/java/org/apache/impala/planner/TupleCacheInfo.java
M fe/src/test/java/org/apache/impala/planner/TupleCacheTest.java
3 files changed, 108 insertions(+), 32 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/11/22011/2
--
To view, visit http://gerrit.cloudera.org:8080/22011
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I9601dba87b3c8f24cbe42eca0d8070db42b50488
Gerrit-Change-Number: 22011
Gerrit-PatchSet: 2
Gerrit-Owner: Joe McDonnell <[email protected]>
Gerrit-Reviewer: Impala Public Jenkins <[email protected]>

Reply via email to