[ https://issues.apache.org/jira/browse/HIVE-4580?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13708711#comment-13708711 ]
Hudson commented on HIVE-4580: ------------------------------ FAILURE: Integrated in Hive-trunk-hadoop2-ptest #14 (See [https://builds.apache.org/job/Hive-trunk-hadoop2-ptest/14/]) HIVE-4580 : Change DDLTask to report errors using canonical error messages rather than http status codes (Eugene Koifman via Ashutosh Chauhan) (hashutosh: http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1501053) * /hive/trunk/contrib/src/test/results/clientnegative/serde_regex.q.out * /hive/trunk/contrib/src/test/results/clientnegative/url_hook.q.out * /hive/trunk/hcatalog/src/test/e2e/templeton/tests/ddl.conf * /hive/trunk/hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/AppConfig.java * /hive/trunk/hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/BadParam.java * /hive/trunk/hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/BusyException.java * /hive/trunk/hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/CallbackFailedException.java * /hive/trunk/hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/CatchallExceptionMapper.java * /hive/trunk/hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/HcatDelegator.java * /hive/trunk/hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/HcatException.java * /hive/trunk/hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/JsonBuilder.java * /hive/trunk/hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/Main.java * /hive/trunk/hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/NotAuthorizedException.java * /hive/trunk/hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/QueueException.java * /hive/trunk/hcatalog/webhcat/svr/src/test/java/org/apache/hcatalog/templeton/TestWebHCatE2e.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/Driver.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/ErrorMsg.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/Task.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/TaskResult.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/TaskRunner.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/HiveException.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/InvalidTableException.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/JsonMetaDataFormatter.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/MetaDataFormatUtils.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/MetaDataFormatter.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/TextMetaDataFormatter.java * /hive/trunk/ql/src/test/org/apache/hadoop/hive/ql/QTestUtil.java * /hive/trunk/ql/src/test/results/clientnegative/add_partition_with_whitelist.q.out * /hive/trunk/ql/src/test/results/clientnegative/addpart1.q.out * /hive/trunk/ql/src/test/results/clientnegative/alter_partition_nodrop_table.q.out * /hive/trunk/ql/src/test/results/clientnegative/alter_partition_with_whitelist.q.out * /hive/trunk/ql/src/test/results/clientnegative/alter_rename_partition_failure.q.out * /hive/trunk/ql/src/test/results/clientnegative/alter_rename_partition_failure2.q.out * /hive/trunk/ql/src/test/results/clientnegative/alter_rename_partition_failure3.q.out * /hive/trunk/ql/src/test/results/clientnegative/alter_table_wrong_regex.q.out * /hive/trunk/ql/src/test/results/clientnegative/alter_view_failure4.q.out * /hive/trunk/ql/src/test/results/clientnegative/altern1.q.out * /hive/trunk/ql/src/test/results/clientnegative/archive1.q.out * /hive/trunk/ql/src/test/results/clientnegative/archive2.q.out * /hive/trunk/ql/src/test/results/clientnegative/archive_multi1.q.out * /hive/trunk/ql/src/test/results/clientnegative/archive_multi2.q.out * /hive/trunk/ql/src/test/results/clientnegative/archive_multi3.q.out * /hive/trunk/ql/src/test/results/clientnegative/archive_multi4.q.out * /hive/trunk/ql/src/test/results/clientnegative/archive_multi5.q.out * /hive/trunk/ql/src/test/results/clientnegative/archive_multi6.q.out * /hive/trunk/ql/src/test/results/clientnegative/archive_multi7.q.out * /hive/trunk/ql/src/test/results/clientnegative/authorization_fail_1.q.out * /hive/trunk/ql/src/test/results/clientnegative/column_rename1.q.out * /hive/trunk/ql/src/test/results/clientnegative/column_rename2.q.out * /hive/trunk/ql/src/test/results/clientnegative/column_rename4.q.out * /hive/trunk/ql/src/test/results/clientnegative/create_table_failure3.q.out * /hive/trunk/ql/src/test/results/clientnegative/create_table_failure4.q.out * /hive/trunk/ql/src/test/results/clientnegative/create_table_wrong_regex.q.out * /hive/trunk/ql/src/test/results/clientnegative/create_view_failure1.q.out * /hive/trunk/ql/src/test/results/clientnegative/create_view_failure2.q.out * /hive/trunk/ql/src/test/results/clientnegative/create_view_failure4.q.out * /hive/trunk/ql/src/test/results/clientnegative/database_create_already_exists.q.out * /hive/trunk/ql/src/test/results/clientnegative/database_create_invalid_name.q.out * /hive/trunk/ql/src/test/results/clientnegative/database_drop_does_not_exist.q.out * /hive/trunk/ql/src/test/results/clientnegative/database_drop_not_empty.q.out * /hive/trunk/ql/src/test/results/clientnegative/database_drop_not_empty_restrict.q.out * /hive/trunk/ql/src/test/results/clientnegative/database_switch_does_not_exist.q.out * /hive/trunk/ql/src/test/results/clientnegative/deletejar.q.out * /hive/trunk/ql/src/test/results/clientnegative/describe_xpath1.q.out * /hive/trunk/ql/src/test/results/clientnegative/describe_xpath2.q.out * /hive/trunk/ql/src/test/results/clientnegative/describe_xpath3.q.out * /hive/trunk/ql/src/test/results/clientnegative/describe_xpath4.q.out * /hive/trunk/ql/src/test/results/clientnegative/disallow_incompatible_type_change_on1.q.out * /hive/trunk/ql/src/test/results/clientnegative/disallow_incompatible_type_change_on2.q.out * /hive/trunk/ql/src/test/results/clientnegative/drop_table_failure2.q.out * /hive/trunk/ql/src/test/results/clientnegative/drop_table_failure3.q.out * /hive/trunk/ql/src/test/results/clientnegative/drop_view_failure1.q.out * /hive/trunk/ql/src/test/results/clientnegative/external1.q.out * /hive/trunk/ql/src/test/results/clientnegative/external2.q.out * /hive/trunk/ql/src/test/results/clientnegative/invalid_columns.q.out * /hive/trunk/ql/src/test/results/clientnegative/lockneg2.q.out * /hive/trunk/ql/src/test/results/clientnegative/lockneg3.q.out * /hive/trunk/ql/src/test/results/clientnegative/lockneg4.q.out * /hive/trunk/ql/src/test/results/clientnegative/lockneg5.q.out * /hive/trunk/ql/src/test/results/clientnegative/protectmode_tbl6.q.out * /hive/trunk/ql/src/test/results/clientnegative/protectmode_tbl_no_drop.q.out * /hive/trunk/ql/src/test/results/clientnegative/serde_regex.q.out * /hive/trunk/ql/src/test/results/clientnegative/serde_regex3.q.out * /hive/trunk/ql/src/test/results/clientnegative/touch1.q.out * /hive/trunk/ql/src/test/results/clientnegative/touch2.q.out > Change DDLTask to report errors using canonical error messages rather than > http status codes > -------------------------------------------------------------------------------------------- > > Key: HIVE-4580 > URL: https://issues.apache.org/jira/browse/HIVE-4580 > Project: Hive > Issue Type: Bug > Components: HCatalog > Affects Versions: 0.11.0 > Reporter: Eugene Koifman > Assignee: Eugene Koifman > Fix For: 0.12.0 > > Attachments: HIVE-4580.1.patch, HIVE-4580.2.patch, HIVE-4580.3.patch, > HIVE-4580.patch > > Original Estimate: 40h > Remaining Estimate: 40h > > org.apache.hadoop.hive.ql.exec.DDLTask handles DDL operations in Hive. > Some operations (those exposed as REST API by Templeton) in this class, write > a JSON object to stdout (on failure) which includes "error" and "errorCode" > fields. "errorCode" is set to values like 404, 500, etc. i.e. Http Status > codes. I believe this was done to support Templeton REST API. This is not > the right place to introduce Http codes. > DDLTask should use canonical error messages defined in > org.apache.hadoop.hive.ql.ErrorMsg and propagate it up to HCatCli which can > decide how to encode the error and to which stream. In particular it can > create a parseable JSON object which Templeton can then interpret. JSON > object can also be generated here for errors from the parser/resolver (e.g. > trying to describe a table which doesn't exist). > Then Templeton can map the canonical error code to appropriate Http Code. -- 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