Uploaded image for project: 'IMPALA'
  1. IMPALA
  2. IMPALA-6215

Race between lib_cache and java udf class loading

    XMLWordPrintableJSON

Details

    • ghx-label-1

    Description

      There's a race between the lib_cache (backend) and UdfExecutor's class loading (frontend).

      A sequence of events that exposes this race is as follows:

      1. Backend hive-udf-call, in Init obtains the cached, local path to the jar containing the java
      method to run
      2. A function that is contained in the cached jar is dropped
      3. The impala server, on a separate thread learns of the dropped function, so blows away the
      containing jar
      4. Backend hive-udf-call is opened, which constructs the UdfExecutor given the cached path
      to the jar that has just been deleted. A classloader is created with that path-- when the
      class is resolved, we get a ClassNotFound exception

      An example of this sequence shows up occasionally and is the reason for the following flake:
      https://issues.apache.org/jira/browse/IMPALA-6092

      Attachments

        Issue Links

          Activity

            People

              vukercegovac Vuk Ercegovac
              vukercegovac Vuk Ercegovac
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: