Alex Behm has posted comments on this change.

Change subject: IMPALA-4998: Fix missing table lock acquisition.
......................................................................


Patch Set 5:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/6177/5/fe/src/main/java/org/apache/impala/catalog/TableLoadingMgr.java
File fe/src/main/java/org/apache/impala/catalog/TableLoadingMgr.java:

Line 318:       if (tbl == null || tbl instanceof IncompleteTable || 
!tbl.isLoaded()) return;
> Doesn't this mean that we can never "refresh" an IncompleteTable? Without t
We never execute a REFRESH command asynchronously.

This particular code is only called for HDFS caching. When caching a table or 
partition, we asynchronously wait for the HDFS caching request to fully 
complete, and once that is done, we automatically issue a REFRESH from this 
code path to pick up the new cached blocks. I'm not sure this flow even makes 
sense, but it doesn't make sense to me to load an IncompleteTable here or 'fix' 
an IncompleteTable that failed to load for whatever reason. That seems beyond 
the scope of what we are trying to do here and could lead to confusion.

Take a look at asyncRefreshThread_ in TableLoadingMgr.


-- 
To view, visit http://gerrit.cloudera.org:8080/6177
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I0e0270daf59fce95f1a1520fc5aaf91d3a7b99fe
Gerrit-PatchSet: 5
Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-Owner: Alex Behm <[email protected]>
Gerrit-Reviewer: Alex Behm <[email protected]>
Gerrit-Reviewer: Bharath Vissapragada <[email protected]>
Gerrit-HasComments: Yes

Reply via email to