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

Separate out ql code from exec jar

    Details

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

      Description

      We should publish our code independently from our dependencies. Since the exec jar has to include the runtime dependencies, I'd propose that we make two jars, a ql jar and and exec jar.

        Issue Links

          Activity

          Hide
          brocknoland Brock Noland added a comment -

          I'd propose we do away with the exec uber jar and utilize the libjars functionality to push the dependencies into the class path.

          Show
          brocknoland Brock Noland added a comment - I'd propose we do away with the exec uber jar and utilize the libjars functionality to push the dependencies into the class path.
          Hide
          arren Shevek added a comment -

          +1 - we are losing days of development work working around this packaging misfeature.

          Show
          arren Shevek added a comment - +1 - we are losing days of development work working around this packaging misfeature.
          Hide
          namburikrishna murali namburi added a comment -

          +1 this is causing issue to use hive-exec jar, it always having conflicts with jackson jars

          Show
          namburikrishna murali namburi added a comment - +1 this is causing issue to use hive-exec jar, it always having conflicts with jackson jars
          Hide
          brocknoland Brock Noland added a comment -

          I think the purpose originally for the fat jar was so that we only had to ship a single jar. With HIVE-860 shipping multiple jars will be quite easy.

          Show
          brocknoland Brock Noland added a comment - I think the purpose originally for the fat jar was so that we only had to ship a single jar. With HIVE-860 shipping multiple jars will be quite easy.
          Hide
          esammer E. Sammer added a comment -

          Another +1. We just hit this and it's causing us serious pain. I was surprised that the shaded classes weren't relocated. As it stands today, using the JDBC driver seems to suck in hive-exec at the end of the rainbow, meaning any application that uses Guava (or Jackson, or...) gets burned unless they happen to be using the same version as Hive.

          Show
          esammer E. Sammer added a comment - Another +1. We just hit this and it's causing us serious pain. I was surprised that the shaded classes weren't relocated. As it stands today, using the JDBC driver seems to suck in hive-exec at the end of the rainbow, meaning any application that uses Guava (or Jackson, or...) gets burned unless they happen to be using the same version as Hive.
          Hide
          mprim Michael Prim added a comment -

          +1, Took us this week some time to debug and find out that there is another Guava version spooking around in the classpath of hive which breaks our own code

          Show
          mprim Michael Prim added a comment - +1, Took us this week some time to debug and find out that there is another Guava version spooking around in the classpath of hive which breaks our own code

            People

            • Assignee:
              owen.omalley Owen O'Malley
              Reporter:
              owen.omalley Owen O'Malley
            • Votes:
              3 Vote for this issue
              Watchers:
              10 Start watching this issue

              Dates

              • Created:
                Updated:

                Development