Github user robertamarton commented on a diff in the pull request:
https://github.com/apache/incubator-trafodion/pull/74#discussion_r38961242
--- Diff: core/sql/optimizer/BindRelExpr.cpp ---
@@ -1569,12 +1569,11 @@ NATable *BindWA::getNATable(CorrName& corrName,
((QualifiedName&)(table->getTableName())).setIsVolatile(TRUE);
}
- // For now, do not allow access through the Trafodion external name
created for
- // the HIVE object unless the inDDL flag is set. inDDL is set for drop
- // table and SHOWDDL statements.
- // TDB - may want to merge the Trafodion version with the HIVE version.
- // TDB - similar operation may be needed for external HBase tables
- if ((table) && (table->isExternalTable() && (! bindWA->inDDL())))
+ // For now, don't allow access through the Trafodion external name
created for
+ // native HIVE or HBASE objects unless the allowExternalTables flag is
set.
+ // allowExternalTables is set for drop table and SHOWDDL statements.
+ // TDB - may want to merge the Trafodion version with the native version.
+ if ((table) && (table->isExternalTable() && (!
bindWA->allowExternalTables())))
--- End diff --
We could open this up and allow the customer to use either name. The same
results should be returned independent of the name. They are sort of like
synonyms. But the way it is coded is that the customer will always use the
hive.sch.table or hbase.sch.table name. They really don't need to worry about
the registered (external) name.
We could open it up for all requests but there will be additional code and
testing. I could create a JIRA to change this or wait and see how people use
external tables to see if this is a desired feature.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---