Hive
  1. Hive
  2. HIVE-3040

Hive Exec jar should not include Thrift

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Minor Minor
    • Resolution: Unresolved
    • Affects Version/s: 0.8.1
    • Fix Version/s: 0.8.1
    • Component/s: Build Infrastructure
    • Labels:
      None

      Description

      hive-exec jar includes Thrift classes even though it does not need them. This can create problems because it can load some wrong version of Thrift and other jars that need Thrift get stuck with the wrong version. We will remove Thrift from this jar.

        Issue Links

          Activity

          Bhushan Mandhani created issue -
          Jakob Homan made changes -
          Field Original Value New Value
          Link This issue is related to HIVE-3017 [ HIVE-3017 ]
          Paul Yang made changes -
          Attachment HIVE-3040.1.patch [ 12528521 ]
          Hide
          Carl Steinbach added a comment -

          hive-exec also includes all of the serde classes, some of which depend on Thrift (e.g. TCTLSeparatedProtocol, DynamicSerDe, etc). If you remove Thrift from hive-exec then you also need to remove these classes and the associated test cases from hive-serde.

          Show
          Carl Steinbach added a comment - hive-exec also includes all of the serde classes, some of which depend on Thrift (e.g. TCTLSeparatedProtocol, DynamicSerDe, etc). If you remove Thrift from hive-exec then you also need to remove these classes and the associated test cases from hive-serde.
          Hide
          Ashutosh Chauhan added a comment -

          This should be done in conjunction with HIVE-3017

          Show
          Ashutosh Chauhan added a comment - This should be done in conjunction with HIVE-3017
          Travis Crawford made changes -
          Link This issue is related to HIVE-2424 [ HIVE-2424 ]
          Hide
          Travis Crawford added a comment -

          This issue has also been discussed in HIVE-2424.

          I believe there are two main use cases:

          • Using Hive without modifications. In this case hive-exec actually simplifies things because users do not need to register additional jars.
          • Extending Hive, or integrating with an existing environment. This use case is not supported because the fat jar forces certain dependencies (thrift version for example).

          Given that multiple issues have been opened about this "hive-exec fat jar" issue there seems to be a real need to solve this.

          Show
          Travis Crawford added a comment - This issue has also been discussed in HIVE-2424 . I believe there are two main use cases: Using Hive without modifications. In this case hive-exec actually simplifies things because users do not need to register additional jars. Extending Hive, or integrating with an existing environment. This use case is not supported because the fat jar forces certain dependencies (thrift version for example). Given that multiple issues have been opened about this "hive-exec fat jar" issue there seems to be a real need to solve this.
          Bhushan Mandhani made changes -
          Assignee Bhushan Mandhani [ bmandhani ] Namit Jain [ namit ]

            People

            • Assignee:
              Namit Jain
              Reporter:
              Bhushan Mandhani
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:

                Time Tracking

                Estimated:
                Original Estimate - 1h
                1h
                Remaining:
                Remaining Estimate - 1h
                1h
                Logged:
                Time Spent - Not Specified
                Not Specified

                  Development