[
https://issues.apache.org/jira/browse/HIVE-18214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16325386#comment-16325386
]
Sahil Takiar commented on HIVE-18214:
-------------------------------------
Yes, I basically removed the non-production code from the unit tests, so now
the tests exercise a setup that more closely mimics what is run in production.
Are you referring to the {{TestLocalSparkCliDriver}}? Yes, that was added so
everything is run in a single process, which simplifies debugging, but it was
mainly geared at debugging q-tests. These changes won't affect that because it
follows a different code path ({{LocalHiveSparkClient}} vs.
{{RemoteHiveSparkClient}}).
> Flaky test: TestSparkClient
> ---------------------------
>
> Key: HIVE-18214
> URL: https://issues.apache.org/jira/browse/HIVE-18214
> Project: Hive
> Issue Type: Sub-task
> Components: Spark
> Reporter: Sahil Takiar
> Assignee: Sahil Takiar
> Attachments: HIVE-18214.1.patch, HIVE-18214.2.patch
>
>
> Looks like there is a race condition in {{TestSparkClient#runTest}}. The test
> creates a {{RemoteDriver}} in memory, which creates a {{JavaSparkContext}}. A
> new {{JavaSparkContext}} is created for each test that is run. There is a
> race condition where the {{RemoteDriver}} isn't given enough time to
> shutdown, so when the next test starts running it creates another
> {{JavaSparkContext}} which causes an exception like
> {{org.apache.spark.SparkException: Only one SparkContext may be running in
> this JVM (see SPARK-2243)}}.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)