----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/67899/#review206070 -----------------------------------------------------------
Ship it! Ship It! - kalyan kumar kalvagadda On July 13, 2018, 4:06 p.m., Na Li wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/67899/ > ----------------------------------------------------------- > > (Updated July 13, 2018, 4:06 p.m.) > > > Review request for sentry, Arjun Mishra, Lei Xu, kalyan kumar kalvagadda, and > Sergio Pena. > > > Bugs: sentry-2299 > https://issues.apache.org/jira/browse/sentry-2299 > > > Repository: sentry > > > Description > ------- > > Sentry client at NameNode does not create entry for a table whose location is > not with in the sentry managed prefix's . When user rename this table with > different path, null exception happens. The fix is to check if old entry > exists or not. If exists, move old paths to new table. Otherwise, skip that > step. > > You can see that in the following function createAuthzObjPath in > HMSPaths.java, if the path is outside of prefix, no entry is created > > public Entry createAuthzObjPath(List<String> pathElements, String > authzObj) { > Entry entry = null; > Entry prefix = findPrefixEntry(pathElements); > if (prefix != null) { > // we only create the entry if is under a prefix, else we ignore it > entry = createChild(pathElements, EntryType.AUTHZ_OBJECT, authzObj); > } else { > if (LOG.isDebugEnabled()) { > LOG.debug(String.format("%s: createAuthzObjPath(%s, %s): outside of > prefix, skipping", <- skip creating entry for external tables > this, authzObj, pathElements)); > } > } > return entry; > } > > > Diffs > ----- > > > sentry-hdfs/sentry-hdfs-common/src/main/java/org/apache/sentry/hdfs/HMSPaths.java > 3919d60 > > sentry-hdfs/sentry-hdfs-common/src/test/java/org/apache/sentry/hdfs/TestHMSPaths.java > 20ed97c > > > Diff: https://reviews.apache.org/r/67899/diff/1/ > > > Testing > ------- > > Add new test case for renaming external table with different paths. It passes > > > Thanks, > > Na Li > >