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

SparkClientFactory.stop may prevent JVM from exiting

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.0.0
    • Component/s: Spark
    • Labels:
      None

      Description

      When we receive SIGINT more than once, we call System.exit to terminate the JVM. System.exit runs the shutdown hooks which in turn calls SparkClientFactory.stop. All the methods in SparkClientFactory are synchronized and at this point, we may be waiting to create a SparkClientImpl in SparkClientFactory.createClient. Therefore SparkClientFactory.stop will be blocked until SparkClientFactory.createClient returns.
      The reason why we may be waiting to create SparkClientImpl is usually to wait for RemoteDriver to connect. If RemoteDriver runs into problem, the JVM won't exit until we timeout.

        Attachments

          Activity

            People

            • Assignee:
              lirui Rui Li
              Reporter:
              lirui Rui Li
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: