Skip to content

Commit 9bf93e9

Browse files
add tests
1 parent d91e5ed commit 9bf93e9

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

core/src/test/scala/org/apache/spark/serializer/KryoSerializerSuite.scala

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,36 @@ class KryoSerializerSuite extends FunSuite with SharedSparkContext {
3232
conf.set("spark.serializer", "org.apache.spark.serializer.KryoSerializer")
3333
conf.set("spark.kryo.registrator", classOf[MyRegistrator].getName)
3434

35+
test("configuration limits") {
36+
val conf1 = conf.clone()
37+
val kryoBufferProperty = "spark.kryoserializer.buffer"
38+
val kryoBufferMaxProperty = "spark.kryoserializer.buffer.max"
39+
conf1.set(kryoBufferProperty, "64k")
40+
conf1.set(kryoBufferMaxProperty, "64m")
41+
new KryoSerializer(conf1).newInstance()
42+
// 2048m = 2097152k
43+
conf1.set(kryoBufferProperty, "2097151k")
44+
conf1.set(kryoBufferMaxProperty, "64m")
45+
// should not throw exception when kryoBufferMaxProperty < kryoBufferProperty
46+
new KryoSerializer(conf1).newInstance()
47+
conf1.set(kryoBufferMaxProperty, "2097151k")
48+
new KryoSerializer(conf1).newInstance()
49+
val conf2 = conf.clone()
50+
conf2.set(kryoBufferProperty, "2048m")
51+
val thrown1 = intercept[IllegalArgumentException](new KryoSerializer(conf2).newInstance())
52+
assert(thrown1.getMessage.contains(kryoBufferProperty))
53+
val conf3 = conf.clone()
54+
conf3.set(kryoBufferMaxProperty, "2048m")
55+
val thrown2 = intercept[IllegalArgumentException](new KryoSerializer(conf3).newInstance())
56+
assert(thrown2.getMessage.contains(kryoBufferMaxProperty))
57+
val conf4 = conf.clone()
58+
conf4.set(kryoBufferProperty, "2g")
59+
conf4.set(kryoBufferMaxProperty, "3g")
60+
val thrown3 = intercept[IllegalArgumentException](new KryoSerializer(conf4).newInstance())
61+
assert(thrown3.getMessage.contains(kryoBufferProperty))
62+
assert(!thrown3.getMessage.contains(kryoBufferMaxProperty))
63+
}
64+
3565
test("basic types") {
3666
val ser = new KryoSerializer(conf).newInstance()
3767
def check[T: ClassTag](t: T) {

0 commit comments

Comments
 (0)