File tree Expand file tree Collapse file tree 2 files changed +32
-4
lines changed Expand file tree Collapse file tree 2 files changed +32
-4
lines changed Original file line number Diff line number Diff line change @@ -195,7 +195,8 @@ def _build_schema(dataframe,
195195 try :
196196 athena_type = data_types .pyarrow2athena (dtype )
197197 except UnsupportedType :
198- raise UnsupportedType (f"Unsupported Pyarrow type for column { name } : { dtype } " )
198+ raise UnsupportedType (
199+ f"Unsupported Pyarrow type for column { name } : { dtype } " )
199200 if name in partition_cols :
200201 partition_cols_types [name ] = athena_type
201202 else :
Original file line number Diff line number Diff line change @@ -879,6 +879,33 @@ def test_to_parquet_with_pyarrow_null_type(
879879 })
880880 with pytest .raises (UnsupportedType ):
881881 assert session .pandas .to_parquet (dataframe = dataframe ,
882- database = database ,
883- path = f"s3://{ bucket } /test/" ,
884- mode = "overwrite" )
882+ database = database ,
883+ path = f"s3://{ bucket } /test/" ,
884+ mode = "overwrite" )
885+
886+
887+ def test_to_parquet_casting_to_string (
888+ session ,
889+ bucket ,
890+ database ,
891+ ):
892+ dataframe = pandas .DataFrame ({
893+ "a" : [1 , 2 , 3 ],
894+ "col_string_null" : [None , None , None ],
895+ "c" : [7 , 8 , 9 ],
896+ })
897+ session .pandas .to_parquet (dataframe = dataframe ,
898+ database = database ,
899+ path = f"s3://{ bucket } /test/" ,
900+ mode = "overwrite" ,
901+ cast_columns = {"col_string_null" : "string" })
902+ dataframe2 = None
903+ for counter in range (10 ):
904+ dataframe2 = session .pandas .read_sql_athena (sql = "select * from test" ,
905+ database = database )
906+ if len (dataframe .index ) == len (dataframe2 .index ):
907+ break
908+ sleep (2 )
909+ assert len (dataframe .index ) == len (dataframe2 .index )
910+ assert (len (list (dataframe .columns )) + 1 ) == len (list (dataframe2 .columns ))
911+ print (dataframe2 )
You can’t perform that action at this time.
0 commit comments