This is an automated email from the ASF dual-hosted git repository.
dongjoon pushed a commit to branch branch-3.5
in repository https://gitbox.apache.org/repos/asf/spark.git
The following commit(s) were added to refs/heads/branch-3.5 by this push:
new fcf55737490 [SPARK-46019][SQL][TESTS] Fix
`HiveThriftServer2ListenerSuite` and `ThriftServerPageSuite` to create
`java.io.tmpdir` if it doesn't exist
fcf55737490 is described below
commit fcf55737490a5d6a1b491b4be4c9924492b8e740
Author: panbingkun <[email protected]>
AuthorDate: Tue Nov 21 10:26:36 2023 -0800
[SPARK-46019][SQL][TESTS] Fix `HiveThriftServer2ListenerSuite` and
`ThriftServerPageSuite` to create `java.io.tmpdir` if it doesn't exist
### What changes were proposed in this pull request?
The pr aims to fix `HiveThriftServer2ListenerSuite` and
`ThriftServerPageSuite` failed when there are running on local.
```
[info] ThriftServerPageSuite:
[info] - thriftserver page should load successfully *** FAILED *** (515
milliseconds)
[info] java.lang.IllegalStateException: Could not initialize plugin:
interface org.mockito.plugins.MockMaker (alternate: null)
[info] at
org.mockito.internal.configuration.plugins.PluginLoader$1.invoke(PluginLoader.java:84)
[info] at jdk.proxy2/jdk.proxy2.$Proxy20.isTypeMockable(Unknown Source)
[info] at
org.mockito.internal.util.MockUtil.typeMockabilityOf(MockUtil.java:78)
[info] at
org.mockito.internal.util.MockCreationValidator.validateType(MockCreationValidator.java:22)
[info] at
org.mockito.internal.creation.MockSettingsImpl.validatedSettings(MockSettingsImpl.java:267)
[info] at
org.mockito.internal.creation.MockSettingsImpl.build(MockSettingsImpl.java:234)
[info] at org.mockito.internal.MockitoCore.mock(MockitoCore.java:86)
[info] at org.mockito.Mockito.mock(Mockito.java:2037)
[info] at org.mockito.Mockito.mock(Mockito.java:2010)
[info] at
org.apache.spark.sql.hive.thriftserver.ui.ThriftServerPageSuite.getStatusStore(ThriftServerPageSuite.scala:49)
```
It can be simply reproduced by running the following command:
```
build/sbt "hive-thriftserver/testOnly
org.apache.spark.sql.hive.thriftserver.ui.HiveThriftServer2ListenerSuite"
-Phive-thriftserver
build/sbt "hive-thriftserver/testOnly
org.apache.spark.sql.hive.thriftserver.ui.ThriftServerPageSuite"
-Phive-thriftserver
```
### Why are the changes needed?
Fix tests failed.
### Does this PR introduce _any_ user-facing change?
No.
### How was this patch tested?
Manually test:
```
build/sbt "hive-thriftserver/testOnly
org.apache.spark.sql.hive.thriftserver.ui.HiveThriftServer2ListenerSuite"
-Phive-thriftserver
build/sbt "hive-thriftserver/testOnly
org.apache.spark.sql.hive.thriftserver.ui.ThriftServerPageSuite"
-Phive-thriftserver
```
After it:
```
[info] - listener events should store successfully (live = true) (1 second,
711 milliseconds)
[info] - listener events should store successfully (live = false) (6
milliseconds)
[info] - cleanup session if exceeds the threshold (live = true) (21
milliseconds)
[info] - cleanup session if exceeds the threshold (live = false) (3
milliseconds)
[info] - update execution info when jobstart event come after execution end
event (9 milliseconds)
[info] - SPARK-31387 - listener update methods should not throw exception
with unknown input (8 milliseconds)
[info] Run completed in 3 seconds, 734 milliseconds.
[info] Total number of tests run: 6
[info] Suites: completed 1, aborted 0
[info] Tests: succeeded 6, failed 0, canceled 0, ignored 0, pending 0
[info] All tests passed.
[success] Total time: 156 s (02:36), completed Nov 21, 2023, 1:57:21 PM
```
### Was this patch authored or co-authored using generative AI tooling?
No.
Closes #43921 from panbingkun/SPARK-46019.
Authored-by: panbingkun <[email protected]>
Signed-off-by: Dongjoon Hyun <[email protected]>
(cherry picked from commit fdcd20f4b51c3ddddaae12f7d3f429e7b77c9f5e)
Signed-off-by: Dongjoon Hyun <[email protected]>
---
.../hive/thriftserver/ui/HiveThriftServer2ListenerSuite.scala | 10 ++++++++++
.../spark/sql/hive/thriftserver/ui/ThriftServerPageSuite.scala | 10 ++++++++++
2 files changed, 20 insertions(+)
diff --git
a/sql/hive-thriftserver/src/test/scala/org/apache/spark/sql/hive/thriftserver/ui/HiveThriftServer2ListenerSuite.scala
b/sql/hive-thriftserver/src/test/scala/org/apache/spark/sql/hive/thriftserver/ui/HiveThriftServer2ListenerSuite.scala
index f5167a4ea73..62d97772bcb 100644
---
a/sql/hive-thriftserver/src/test/scala/org/apache/spark/sql/hive/thriftserver/ui/HiveThriftServer2ListenerSuite.scala
+++
b/sql/hive-thriftserver/src/test/scala/org/apache/spark/sql/hive/thriftserver/ui/HiveThriftServer2ListenerSuite.scala
@@ -17,6 +17,7 @@
package org.apache.spark.sql.hive.thriftserver.ui
+import java.io.File
import java.util.Properties
import org.mockito.Mockito.{mock, RETURNS_SMART_NULLS}
@@ -34,6 +35,15 @@ class HiveThriftServer2ListenerSuite extends SparkFunSuite
with BeforeAndAfter {
private var kvstore: ElementTrackingStore = _
+ protected override def beforeAll(): Unit = {
+ val tmpDirName = System.getProperty("java.io.tmpdir")
+ val tmpDir = new File(tmpDirName)
+ if (!tmpDir.exists()) {
+ tmpDir.mkdirs()
+ }
+ super.beforeAll()
+ }
+
after {
if (kvstore != null) {
kvstore.close()
diff --git
a/sql/hive-thriftserver/src/test/scala/org/apache/spark/sql/hive/thriftserver/ui/ThriftServerPageSuite.scala
b/sql/hive-thriftserver/src/test/scala/org/apache/spark/sql/hive/thriftserver/ui/ThriftServerPageSuite.scala
index d7e18521996..1245e6740eb 100644
---
a/sql/hive-thriftserver/src/test/scala/org/apache/spark/sql/hive/thriftserver/ui/ThriftServerPageSuite.scala
+++
b/sql/hive-thriftserver/src/test/scala/org/apache/spark/sql/hive/thriftserver/ui/ThriftServerPageSuite.scala
@@ -17,6 +17,7 @@
package org.apache.spark.sql.hive.thriftserver.ui
+import java.io.File
import java.util.{Calendar, Locale}
import javax.servlet.http.HttpServletRequest
@@ -34,6 +35,15 @@ class ThriftServerPageSuite extends SparkFunSuite with
BeforeAndAfter {
private var kvstore: ElementTrackingStore = _
+ protected override def beforeAll(): Unit = {
+ val tmpDirName = System.getProperty("java.io.tmpdir")
+ val tmpDir = new File(tmpDirName)
+ if (!tmpDir.exists()) {
+ tmpDir.mkdirs()
+ }
+ super.beforeAll()
+ }
+
after {
if (kvstore != null) {
kvstore.close()
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]