Description
Exception:
Caused by: java.lang.NullPointerException at org.apache.sentry.hdfs.MetastorePlugin.applyLocal(MetastorePlugin.java:336) at org.apache.sentry.hdfs.MetastorePlugin.processUpdate(MetastorePlugin.java:364) at org.apache.sentry.hdfs.MetastorePlugin.notifySentryAndApplyLocal(MetastorePlugin.java:341) at org.apache.sentry.hdfs.MetastorePlugin.renameAuthzObject(MetastorePlugin.java:292) at org.apache.sentry.binding.metastore.SentryMetastorePostEventListener.renameSentryTablePrivilege(SentryMetastorePostEventListener.java:336) at org.apache.sentry.binding.metastore.SentryMetastorePostEventListener.onAlterTable(SentryMetastorePostEventListener.java:194) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.alter_table_core(HiveMetaStore.java:3439) ... 21 more
When looking in the HMS database we found:
SELECT "NAME", "DB_LOCATION_URI" FROM "DBS" WHERE NOT "DB_LOCATION_URI" LIKE 'hdfs://%/%'; NAME | DB_LOCATION_URI -----------+-------------------- db_name | hdfs://nameservice1 (1 row)
Fixed by manually updating the HMS DB:
UPDATE DBS
SET DB_LOCATION_URI='hdfs://nameservice1/user/hive/warehouse/db_name.db'
WHERE DB_ID=12345;
We should handle this more gracefully in Sentry.
Attachments
Attachments
Issue Links
- relates to
-
SENTRY-1295 Investigate malformed paths in HMS db
- Open
-
SENTRY-1508 MetastorePlugin.java does not handle properly initialization failure
- Resolved