hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Eugene Koifman (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HIVE-4580) Change DDLTask to report errors using canonical error messages rather than http status codes
Date Thu, 20 Jun 2013 18:12:20 GMT

    [ https://issues.apache.org/jira/browse/HIVE-4580?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13689467#comment-13689467
] 

Eugene Koifman commented on HIVE-4580:
--------------------------------------

List of files in HIVE-4580.1.patch
git diff-tree --no-commit-id --name-only -r 91a702fd80f044a3d71efd3ba41a27b05f2a240a 8d0568474a8f734d59304c4d4165ae7fd8beeb75
contrib/src/test/results/clientnegative/serde_regex.q.out
contrib/src/test/results/clientnegative/url_hook.q.out
hcatalog/src/test/e2e/templeton/tests/ddl.conf
hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/AppConfig.java
hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/BadParam.java
hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/BusyException.java
hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/CallbackFailedException.java
hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/CatchallExceptionMapper.java
hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/HcatDelegator.java
hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/HcatException.java
hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/JsonBuilder.java
hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/Main.java
hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/NotAuthorizedException.java
hcatalog/webhcat/svr/src/main/java/org/apache/hcatalog/templeton/QueueException.java
hcatalog/webhcat/svr/src/test/java/org/apache/hcatalog/templeton/TestWebHCatE2e.java
ql/src/java/org/apache/hadoop/hive/ql/Driver.java
ql/src/java/org/apache/hadoop/hive/ql/ErrorMsg.java
ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
ql/src/java/org/apache/hadoop/hive/ql/exec/Task.java
ql/src/java/org/apache/hadoop/hive/ql/exec/TaskResult.java
ql/src/java/org/apache/hadoop/hive/ql/exec/TaskRunner.java
ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java
ql/src/java/org/apache/hadoop/hive/ql/metadata/HiveException.java
ql/src/java/org/apache/hadoop/hive/ql/metadata/InvalidTableException.java
ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/JsonMetaDataFormatter.java
ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/MetaDataFormatUtils.java
ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/MetaDataFormatter.java
ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/TextMetaDataFormatter.java
ql/src/test/org/apache/hadoop/hive/ql/QTestUtil.java
ql/src/test/results/clientnegative/add_partition_with_whitelist.q.out
ql/src/test/results/clientnegative/addpart1.q.out
ql/src/test/results/clientnegative/alter_partition_nodrop_table.q.out
ql/src/test/results/clientnegative/alter_partition_with_whitelist.q.out
ql/src/test/results/clientnegative/alter_rename_partition_failure.q.out
ql/src/test/results/clientnegative/alter_rename_partition_failure2.q.out
ql/src/test/results/clientnegative/alter_rename_partition_failure3.q.out
ql/src/test/results/clientnegative/alter_table_wrong_regex.q.out
ql/src/test/results/clientnegative/alter_view_failure4.q.out
ql/src/test/results/clientnegative/altern1.q.out
ql/src/test/results/clientnegative/archive1.q.out
ql/src/test/results/clientnegative/archive2.q.out
ql/src/test/results/clientnegative/archive_multi1.q.out
ql/src/test/results/clientnegative/archive_multi2.q.out
ql/src/test/results/clientnegative/archive_multi3.q.out
ql/src/test/results/clientnegative/archive_multi4.q.out
ql/src/test/results/clientnegative/archive_multi5.q.out
ql/src/test/results/clientnegative/archive_multi6.q.out
ql/src/test/results/clientnegative/archive_multi7.q.out
ql/src/test/results/clientnegative/authorization_fail_1.q.out
ql/src/test/results/clientnegative/column_rename1.q.out
ql/src/test/results/clientnegative/column_rename2.q.out
ql/src/test/results/clientnegative/column_rename4.q.out
ql/src/test/results/clientnegative/create_table_failure3.q.out
ql/src/test/results/clientnegative/create_table_failure4.q.out
ql/src/test/results/clientnegative/create_table_wrong_regex.q.out
ql/src/test/results/clientnegative/create_view_failure1.q.out
ql/src/test/results/clientnegative/create_view_failure2.q.out
ql/src/test/results/clientnegative/create_view_failure4.q.out
ql/src/test/results/clientnegative/database_create_already_exists.q.out
ql/src/test/results/clientnegative/database_create_invalid_name.q.out
ql/src/test/results/clientnegative/database_drop_does_not_exist.q.out
ql/src/test/results/clientnegative/database_drop_not_empty.q.out
ql/src/test/results/clientnegative/database_drop_not_empty_restrict.q.out
ql/src/test/results/clientnegative/database_switch_does_not_exist.q.out
ql/src/test/results/clientnegative/deletejar.q.out
ql/src/test/results/clientnegative/describe_xpath1.q.out
ql/src/test/results/clientnegative/describe_xpath2.q.out
ql/src/test/results/clientnegative/describe_xpath3.q.out
ql/src/test/results/clientnegative/describe_xpath4.q.out
ql/src/test/results/clientnegative/disallow_incompatible_type_change_on1.q.out
ql/src/test/results/clientnegative/disallow_incompatible_type_change_on2.q.out
ql/src/test/results/clientnegative/drop_table_failure2.q.out
ql/src/test/results/clientnegative/drop_table_failure3.q.out
ql/src/test/results/clientnegative/drop_view_failure1.q.out
ql/src/test/results/clientnegative/external1.q.out
ql/src/test/results/clientnegative/external2.q.out
ql/src/test/results/clientnegative/invalid_columns.q.out
ql/src/test/results/clientnegative/lockneg2.q.out
ql/src/test/results/clientnegative/lockneg3.q.out
ql/src/test/results/clientnegative/lockneg4.q.out
ql/src/test/results/clientnegative/lockneg5.q.out
ql/src/test/results/clientnegative/protectmode_tbl6.q.out
ql/src/test/results/clientnegative/protectmode_tbl_no_drop.q.out
ql/src/test/results/clientnegative/serde_regex.q.out
ql/src/test/results/clientnegative/serde_regex3.q.out
ql/src/test/results/clientnegative/touch1.q.out
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.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

Mime
View raw message