blob: c5eb5b5164cf4da819139f463b779ce8ada6a6fc (
plain) (
tree)
|
|
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// This is a test protocol for testing parquet-avro compatibility.
@namespace("org.apache.spark.sql.execution.datasources.parquet.test.avro")
protocol CompatibilityTest {
enum Suit {
SPADES,
HEARTS,
DIAMONDS,
CLUBS
}
record ParquetEnum {
Suit suit;
}
record Nested {
array<int> nested_ints_column;
string nested_string_column;
}
record AvroPrimitives {
boolean bool_column;
int int_column;
long long_column;
float float_column;
double double_column;
bytes binary_column;
string string_column;
}
record AvroOptionalPrimitives {
union { null, boolean } maybe_bool_column;
union { null, int } maybe_int_column;
union { null, long } maybe_long_column;
union { null, float } maybe_float_column;
union { null, double } maybe_double_column;
union { null, bytes } maybe_binary_column;
union { null, string } maybe_string_column;
}
record AvroNonNullableArrays {
array<string> strings_column;
union { null, array<int> } maybe_ints_column;
}
record AvroArrayOfArray {
array<array<int>> int_arrays_column;
}
record AvroMapOfArray {
map<array<int>> string_to_ints_column;
}
record ParquetAvroCompat {
array<string> strings_column;
map<int> string_to_int_column;
map<array<Nested>> complex_column;
}
}
|