Sushanth Sowmyan created HIVE-6499:
--------------------------------------

             Summary: Using Metastore-side Auth errors on non-resolvable 
IF/OF/SerDe
                 Key: HIVE-6499
                 URL: https://issues.apache.org/jira/browse/HIVE-6499
             Project: Hive
          Issue Type: Bug
            Reporter: Sushanth Sowmyan
            Assignee: Sushanth Sowmyan


In cases where a user needs to use a custom IF/OF/SerDe that is not accessible 
from the metastore, calls like msc.createTable and msc.dropTable should still 
work without being able to load the class. This is possible as long as one does 
not enable MetaStore-side authorization, at which point this becomes 
impossible, erroring out with a ClassNotFoundException.

The reason this happens is that since the AuthorizationProvider interface is 
defined against a ql.metadata.Table, we wind up needing to instantiate a 
ql.metadata.Table object, which, in its constructor tries to instantiate 
IF/OF/SerDe elements in an attempt to pre-load those fields. And if we do not 
have access to those classes in the metastore, this is when that fails. The 
constructor/initialize methods of Table and Partition do not really need to 
pre-initialize these fields, since the fields are accessed only through the 
accessor, and will be instantiated on first-use.




--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to