Github user bdrillard commented on a diff in the pull request:

    https://github.com/apache/spark/pull/22878#discussion_r229328064
  
    --- Diff: 
external/avro/src/test/scala/org/apache/spark/sql/avro/AvroSuite.scala ---
    @@ -1374,4 +1377,182 @@ class AvroSuite extends QueryTest with 
SharedSQLContext with SQLTestUtils {
           |}
         """.stripMargin)
       }
    +
    +  test("generic record converts to row and back") {
    +    val nested =
    +      SchemaBuilder.record("simple_record").fields()
    +        .name("nested1").`type`("int").withDefault(0)
    +        .name("nested2").`type`("string").withDefault("string").endRecord()
    +    val schema = SchemaBuilder.record("record").fields()
    +      .name("boolean").`type`("boolean").withDefault(false)
    +      .name("int").`type`("int").withDefault(0)
    +      .name("long").`type`("long").withDefault(0L)
    +      .name("float").`type`("float").withDefault(0.0F)
    +      .name("double").`type`("double").withDefault(0.0)
    +      .name("string").`type`("string").withDefault("string")
    +      
.name("bytes").`type`("bytes").withDefault(java.nio.ByteBuffer.wrap("bytes".getBytes))
    +      .name("nested").`type`(nested).withDefault(new 
GenericRecordBuilder(nested).build)
    +      .name("enum").`type`(
    +      SchemaBuilder.enumeration("simple_enums")
    +        .symbols("SPADES", "HEARTS", "CLUBS", "DIAMONDS"))
    +      .withDefault("SPADES")
    +      .name("int_array").`type`(
    +      SchemaBuilder.array().items().`type`("int"))
    +      .withDefault(java.util.Arrays.asList(1, 2, 3))
    +      .name("string_array").`type`(
    +      SchemaBuilder.array().items().`type`("string"))
    +      .withDefault(java.util.Arrays.asList("a", "b", "c"))
    +      .name("record_array").`type`(
    +      SchemaBuilder.array.items.`type`(nested))
    +      .withDefault(java.util.Arrays.asList(
    +        new GenericRecordBuilder(nested).build,
    +        new GenericRecordBuilder(nested).build))
    +      .name("enum_array").`type`(
    +      SchemaBuilder.array.items.`type`(
    +        SchemaBuilder.enumeration("simple_enums")
    +          .symbols("SPADES", "HEARTS", "CLUBS", "DIAMONDS")))
    +      .withDefault(java.util.Arrays.asList("SPADES", "HEARTS", "SPADES"))
    +      .name("fixed_array").`type`(
    +      SchemaBuilder.array.items().`type`(
    +        SchemaBuilder.fixed("simple_fixed").size(3)))
    +      .withDefault(java.util.Arrays.asList("foo", "bar", "baz"))
    +      .name("fixed").`type`(SchemaBuilder.fixed("simple_fixed").size(16))
    +      .withDefault("string_length_16")
    --- End diff --
    
    In our first pass at the encoder, we hadn't supported Avro map types yet, 
and so this test case omits an Avro map-typed field. Can we add a simple one 
(with a default value) to this test case?


---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to