TRAFODION-2492 Support for native hive views, plus few more changes -- added support for native hive views created externally. These views can be accessed in a traf sql query.
There are some restrictions as listed below: -- privileges support has not yet been added. That will be done, as needed, in the next checkin. -- usage info for tables contained in a native hive view is not maintained. -- native hive views cannot be inserted/updated/deleted -- cannot update stats on a native hive view
-- support for GET statements to retrieve hive data get tables/views/objects in schema hive.sch; -- this will return all tables/views in specified schema(hive database) get tables/views/objects in catalog hive; -- this will return all tables/views in hive get schemas in catalog hive; -- this will return all schemas(databases) that exist in hive
-- GET statements to retrieve hive data now supports optional MATCH clause. This can be used to filter results.
-- showddl will show if an external table on hive was created implicitly for internal usage (upd stats, privileges, views) or explicitly by user. Internal creation of external table now use 'create implicit external table' syntax and that info is stored in metadata.
-- drop external table will drop that table even if underlying hive table is missing. Currently it returns an error.
-- at runtime, accessing a missing hive table now returns a better error message instead of an internal "data mod check failed" message.
-- regress/tools/runallsb has 2 new options: -basetests (this will run core,compGeneral,executor,seabase,hive) -othertests (this will run all other tests suites)
-- optimizer/NATable.cpp was incorrectly indented by some checkin from a few days back. TABs were used instead of spaces which caused code to become all crooked. That has been fixed.
-- regress/hive/TEST007 has been updated with additional hive view tests
TRAFODION-2175 a user should only see specific schemas/tables that he has privs TRAFODION-1573 Additional GET commands for privileges This is one of several deliveries to improve GET commands: - return details about objects that are only visible to the current_user. - support additional statements
This delivery adds visibility checking to to the following commands:
get users; get roles; get users for role <role>; get roles for user <user>;
It now supports the following GET statements:
get privileges for user <user>; get privileges for role <role>;
When getting privileges for a user or role, the output is as follows:
<privileges> <object> <optional column name>
<privileges> output is a character string containing granted privileges: