From 47b7e20e914fd838b00700e918be330af54be5de Mon Sep 17 00:00:00 2001 From: Rithvik Panchapakesan Date: Fri, 1 Dec 2023 10:50:47 -0800 Subject: [PATCH] one validation check and a comment (#1816) --- src/snowflake/connector/constants.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/snowflake/connector/constants.py b/src/snowflake/connector/constants.py index beb174419..096cabf40 100644 --- a/src/snowflake/connector/constants.py +++ b/src/snowflake/connector/constants.py @@ -44,7 +44,10 @@ class FieldType(NamedTuple): def vector_pa_type(metadata: ResultMetadataV2) -> DataType: - """Generate the arrow type represented by the given vector column metadata.""" + """Generate the Arrow type represented by the given vector column metadata. + + Vectors are represented as Arrow fixed-size lists. + """ if metadata.fields is None: raise ValueError( @@ -60,6 +63,10 @@ def vector_pa_type(metadata: ResultMetadataV2) -> DataType: raise ValueError( "Invalid result metadata for vector type: expected a dimension" ) + elif metadata.vector_dimension <= 0: + raise ValueError( + "Invalid result metadata for vector type: expected a positive dimension" + ) if field_type == "FIXED": return pa.list_(pa.int32(), metadata.vector_dimension)