[ https://issues.apache.org/jira/browse/HIVE-3970?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13583083#comment-13583083 ]
Hudson commented on HIVE-3970: ------------------------------ Integrated in hive-trunk-hadoop1 #95 (See [https://builds.apache.org/job/hive-trunk-hadoop1/95/]) HIVE-3970 Clean up/fix PartitionNameWhitelistPreEventListener (Kevin Wilfong via namit) (Revision 1448541) Result = ABORTED namit : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1448541 Files : * /hive/trunk/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java * /hive/trunk/conf/hive-default.xml.template * /hive/trunk/metastore/if/hive_metastore.thrift * /hive/trunk/metastore/src/gen/thrift/gen-cpp/ThriftHiveMetastore.cpp * /hive/trunk/metastore/src/gen/thrift/gen-cpp/ThriftHiveMetastore.h * /hive/trunk/metastore/src/gen/thrift/gen-cpp/ThriftHiveMetastore_server.skeleton.cpp * /hive/trunk/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/Database.java * /hive/trunk/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/EnvironmentContext.java * /hive/trunk/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/Index.java * /hive/trunk/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/Partition.java * /hive/trunk/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/PrincipalPrivilegeSet.java * /hive/trunk/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/Schema.java * /hive/trunk/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/SerDeInfo.java * /hive/trunk/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/SkewedInfo.java * /hive/trunk/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/StorageDescriptor.java * /hive/trunk/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/Table.java * /hive/trunk/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ThriftHiveMetastore.java * /hive/trunk/metastore/src/gen/thrift/gen-php/metastore/ThriftHiveMetastore.php * /hive/trunk/metastore/src/gen/thrift/gen-py/hive_metastore/ThriftHiveMetastore-remote * /hive/trunk/metastore/src/gen/thrift/gen-py/hive_metastore/ThriftHiveMetastore.py * /hive/trunk/metastore/src/gen/thrift/gen-rb/thrift_hive_metastore.rb * /hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java * /hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java * /hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/IMetaStoreClient.java * /hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreUtils.java * /hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/PartitionNameWhitelistPreEventListener.java * /hive/trunk/metastore/src/test/org/apache/hadoop/hive/metastore/TestHiveMetaStore.java * /hive/trunk/metastore/src/test/org/apache/hadoop/hive/metastore/TestPartitionNameWhitelistPreEventHook.java * /hive/trunk/metastore/src/test/org/apache/hadoop/hive/metastore/TestPartitionNameWhitelistValidation.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/MoveTask.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java * /hive/trunk/ql/src/test/org/apache/hadoop/hive/ql/hooks/VerifyTableDirectoryIsEmptyHook.java * /hive/trunk/ql/src/test/queries/clientnegative/add_partition_with_whitelist.q * /hive/trunk/ql/src/test/queries/clientnegative/alter_partition_with_whitelist.q * /hive/trunk/ql/src/test/queries/clientnegative/dynamic_partitions_with_whitelist.q * /hive/trunk/ql/src/test/queries/clientpositive/add_partition_no_whitelist.q * /hive/trunk/ql/src/test/queries/clientpositive/add_partition_with_whitelist.q * /hive/trunk/ql/src/test/queries/clientpositive/alter_partition_with_whitelist.q * /hive/trunk/ql/src/test/results/clientnegative/alter_partition_with_whitelist.q.out * /hive/trunk/ql/src/test/results/clientnegative/dynamic_partitions_with_whitelist.q.out * /hive/trunk/ql/src/test/results/clientpositive/add_partition_no_whitelist.q.out * /hive/trunk/ql/src/test/results/clientpositive/alter_partition_with_whitelist.q.out > Clean up/fix PartitionNameWhitelistPreEventListener > --------------------------------------------------- > > Key: HIVE-3970 > URL: https://issues.apache.org/jira/browse/HIVE-3970 > Project: Hive > Issue Type: Improvement > Components: Metastore > Affects Versions: 0.11.0 > Reporter: Kevin Wilfong > Assignee: Kevin Wilfong > Fix For: 0.11.0 > > Attachments: HIVE-3970.1.patch.txt, HIVE-3970.2.patch.txt, > HIVE-3970.3.patch.txt > > > There are a number of issues and things which can be cleaned up related to > PartitionNameWhitelistPreEventListener. > * It's an event listener, but it really doesn't need to be given that the > regex whitelist is configurable, it could just be a utility method. > * It's not run when a partition is renamed, so partitions with invalid > characters can be created in this way. > * There's no easy way to check if a partition contains invalid characters > before creating it and seeing if it fails. > Most importantly, when a dynamic partition contains an invalid character, the > directory for this partition is created, and the data is moved into it, but > the partition fails to be created leaving an orphan directory. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira