scarlin-cloudera commented on a change in pull request #2763:
URL: https://github.com/apache/hive/pull/2763#discussion_r745746867
##########
File path:
ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/RelOptHiveTable.java
##########
@@ -333,12 +360,20 @@ public boolean isKey(ImmutableBitSet columns) {
parentTableQualifiedName.add(parentTableName);
qualifiedName = parentTableName;
}
+ if (!tablesCache.containsKey(qualifiedName)) {
+ // Table doesn't exist in the cache, so we don't need to track
+ // these referential constraints. But we do need to keep track
+ // of the table in case the tableCache gets populated later, though
+ // in theory, this should never happen based on how this is called.
Review comment:
I was thinking about this a little more. I'll have to review the code
to see if it's possible, but I think I can at least put in one check (that
isn't foolproof) that willl prevent a user calling for an incomplete list of
referential constraints. I can do this by ensuring that a second call
retrieving them doesn't have any missing.
Of course, if the list is incomplete and a second call isn't made, then this
won't be caught.
But I think will add this shortly.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]