Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-6061

Metastore (and other) Thrift APIs should use request-response pattern

    XMLWordPrintableJSON

Details

    • Wish
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • Metastore, Thrift API
    • None

    Description

      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?

      Attachments

        Activity

          People

            Unassigned Unassigned
            sershe Sergey Shelukhin
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: