@@ -35,12 +35,15 @@ pub fn into_pg_type(arrow_type: &DataType) -> PgWireResult<Type> {
3535 DataType :: Time32 ( _) | DataType :: Time64 ( _) => Type :: TIME ,
3636 DataType :: Date32 | DataType :: Date64 => Type :: DATE ,
3737 DataType :: Interval ( _) => Type :: INTERVAL ,
38- DataType :: Binary | DataType :: FixedSizeBinary ( _) | DataType :: LargeBinary => Type :: BYTEA ,
38+ DataType :: Binary
39+ | DataType :: FixedSizeBinary ( _)
40+ | DataType :: LargeBinary
41+ | DataType :: BinaryView => Type :: BYTEA ,
3942 DataType :: Float16 | DataType :: Float32 => Type :: FLOAT4 ,
4043 DataType :: Float64 => Type :: FLOAT8 ,
4144 DataType :: Decimal128 ( _, _) => Type :: NUMERIC ,
4245 DataType :: Utf8 => Type :: VARCHAR ,
43- DataType :: LargeUtf8 => Type :: TEXT ,
46+ DataType :: LargeUtf8 | DataType :: Utf8View => Type :: TEXT ,
4447 DataType :: List ( field) | DataType :: FixedSizeList ( field, _) | DataType :: LargeList ( field) => {
4548 match field. data_type ( ) {
4649 DataType :: Boolean => Type :: BOOL_ARRAY ,
@@ -58,11 +61,14 @@ pub fn into_pg_type(arrow_type: &DataType) -> PgWireResult<Type> {
5861 DataType :: Time32 ( _) | DataType :: Time64 ( _) => Type :: TIME_ARRAY ,
5962 DataType :: Date32 | DataType :: Date64 => Type :: DATE_ARRAY ,
6063 DataType :: Interval ( _) => Type :: INTERVAL_ARRAY ,
61- DataType :: FixedSizeBinary ( _) | DataType :: Binary => Type :: BYTEA_ARRAY ,
64+ DataType :: FixedSizeBinary ( _)
65+ | DataType :: Binary
66+ | DataType :: LargeBinary
67+ | DataType :: BinaryView => Type :: BYTEA_ARRAY ,
6268 DataType :: Float16 | DataType :: Float32 => Type :: FLOAT4_ARRAY ,
6369 DataType :: Float64 => Type :: FLOAT8_ARRAY ,
6470 DataType :: Utf8 => Type :: VARCHAR_ARRAY ,
65- DataType :: LargeUtf8 => Type :: TEXT_ARRAY ,
71+ DataType :: LargeUtf8 | DataType :: Utf8View => Type :: TEXT_ARRAY ,
6672 struct_type @ DataType :: Struct ( _) => Type :: new (
6773 Type :: RECORD_ARRAY . name ( ) . into ( ) ,
6874 Type :: RECORD_ARRAY . oid ( ) ,
@@ -78,7 +84,6 @@ pub fn into_pg_type(arrow_type: &DataType) -> PgWireResult<Type> {
7884 }
7985 }
8086 }
81- DataType :: Utf8View => Type :: TEXT ,
8287 DataType :: Dictionary ( _, value_type) => into_pg_type ( value_type) ?,
8388 DataType :: Struct ( fields) => {
8489 let name: String = fields
0 commit comments