Uploaded image for project: 'Sentry'
  1. Sentry
  2. SENTRY-652

Sentry fails to parse spaces when HDFS ACL sync enabled

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.4.0
    • Fix Version/s: 1.5.0
    • Component/s: None
    • Labels:
      None

      Description

      Sentry HDFS ACL sync with partitions containing spaces in partition key

      When partition keys, and thus their directory, contain white space HDFS ACL sync breaks HMS functionality.

      Upon restart HMS throws the following exception:

      Could not initialize Plugin !!
      java.lang.reflect.InvocationTargetException
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
      at org.apache.sentry.binding.metastore.SentryMetastorePostEventListener.<init>(SentryMetastorePostEventListener.java:79)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
      at org.apache.hadoop.hive.metastore.MetaStoreUtils.getMetaStoreListeners(MetaStoreUtils.java:1373)
      at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:424)
      at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.<init>(HiveMetaStore.java:365)
      at org.apache.hadoop.hive.metastore.RetryingHMSHandler.<init>(RetryingHMSHandler.java:55)
      at org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:60)
      at org.apache.hadoop.hive.metastore.HiveMetaStore.newHMSHandler(HiveMetaStore.java:4953)
      at org.apache.hadoop.hive.metastore.HiveMetaStore.startMetaStore(HiveMetaStore.java:5174)
      at org.apache.hadoop.hive.metastore.HiveMetaStore.main(HiveMetaStore.java:5093)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)
      at org.apache.hadoop.util.RunJar.main(RunJar.java:212)
      Caused by: java.lang.RuntimeException: java.lang.RuntimeException: Incomprehensible path [hdfs://host-10-17-74-151.coe.cloudera.com:8020/user/hive/warehouse/test/b=all the spaces/c=in PartKeys]
      at org.apache.sentry.hdfs.MetastorePlugin.<init>(MetastorePlugin.java:121)
      ... 22 more
      Caused by: java.lang.RuntimeException: Incomprehensible path [hdfs://host-10-17-74-151.coe.cloudera.com:8020/user/hive/warehouse/test/b=all the spaces/c=in PartKeys]
      at org.apache.sentry.hdfs.PathsUpdate.parsePath(PathsUpdate.java:96)
      at org.apache.sentry.hdfs.MetastorePlugin.createInitialUpdate(MetastorePlugin.java:162)
      at org.apache.sentry.hdfs.MetastorePlugin.<init>(MetastorePlugin.java:118)

      This puts HMS in a state where it will not listen to incoming connections

        Attachments

        1. SENTRY-652.patch
          2 kB
          Ryan P
        2. SENTRY-652.patch
          2 kB
          Ryan P
        3. SENTRY-652.patch
          2 kB
          Ryan P
        4. SENTRY-652.patch
          2 kB
          Ryan P
        5. SENTRY-652.patch
          2 kB
          Ryan P
        6. SENTRY-652.patch
          0.8 kB
          Ryan P

          Issue Links

            Activity

              People

              • Assignee:
                Ryan P Ryan P
                Reporter:
                Ryan P Ryan P
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: