Sergey Shelukhin created HIVE-6061: -------------------------------------- Summary: Metastore (and other) Thrift APIs should use request-response pattern Key: HIVE-6061 URL: https://issues.apache.org/jira/browse/HIVE-6061 Project: Hive Issue Type: Wish Components: Metastore, Thrift API Reporter: Sergey Shelukhin
Wish in lieu of "brainstorming" JIRA. Metastore Thrift APIs currently use normal method signatures (e.g. int foo(string bar, double baz)); this is problematic in Thrift because the APIs cannot be evolved without breaking compat; and weird names have to be invented because overloading is not supported either. An easy solution to this is to have methods in the form of FooResponse foo(FooRequest req); the structures can then be evolved easily. This may apply also to other Thrift APIs, I have not checked. This is a brainstorming JIRA for the transformations. Obviously this will either double the API size, or cause massive backward incompatibility. Maybe we can do 1-2 releases with both APIs, marking the old ones deprecated in some form, and then remove them? -- This message was sent by Atlassian JIRA (v6.1.4#6159)