[osgeo4w-dev] [osgeo4w] #758: Crash when reading SNAPPY compressed Parquet files through GDAL
OSGeo4W
trac_osgeo4w at osgeo.org
Mon Aug 1 00:33:14 PDT 2022
#758: Crash when reading SNAPPY compressed Parquet files through GDAL
--------------------+----------------------------
Reporter: rouault | Owner: osgeo4w-dev@…
Type: defect | Status: new
Priority: major | Component: Package
Version: | Resolution:
Keywords: |
--------------------+----------------------------
Comment (by jef):
Replying to [comment:1 jef]:
> Not reproducable here. Are you seing invalid instructions in eventlog?
Replying to [comment:2 andreaerdna]:
> Could you please try if in your system also the following command
(without "-so"):
> terminates properly listing all the features and if QGIS doesn't crash
opening the out_SNAPPY.parquet layer?
apparently works fine.
----
{{{
C:\OSGeo4W> ogrinfo out_SNAPPY.parquet out_SNAPPY --debug on & echo
%errorlevel%
GDAL: Auto register
C:\OSGeo4W\apps\gdal\lib\gdalplugins\gdal_ECW_JP2ECW.dll using
GDALRegister_ECW_JP2ECW.
GDAL: Auto register C:\OSGeo4W\apps\gdal\lib\gdalplugins\gdal_GEOR.dll
using GDALRegister_GEOR.
GDAL: Auto register C:\OSGeo4W\apps\gdal\lib\gdalplugins\gdal_HDF5.dll
using GDALRegister_HDF5.
GDAL: Auto register C:\OSGeo4W\apps\gdal\lib\gdalplugins\gdal_MrSID.dll
using GDALRegister_MrSID.
GDAL: Auto register C:\OSGeo4W\apps\gdal\lib\gdalplugins\ogr_OCI.dll using
RegisterOGROCI.
GDAL: Auto register C:\OSGeo4W\apps\gdal\lib\gdalplugins\ogr_SOSI.dll
using RegisterOGRSOSI.
PARQUET: geo =
{"version":"0.4.0","primary_column":"geometry","columns":{"geometry":{"encoding":"WKB","bbox":[0.0,2.0,4.0,2.0],"orientation":"counterclockwise","geometry_type":"Point"}}}
PARQUET: gdal:schema =
{"columns":{"boolean":{"type":"Integer","subtype":"Boolean"},"uint8":{"type":"Integer"},"int8":{"type":"Integer"},"uint16":{"type":"Integer"},"int16":{"type":"Integer","subtype":"Int16"},"uint32":{"type":"Integer64"},"int32":{"type":"Integer"},"uint64":{"type":"Real"},"int64":{"type":"Integer64"},"float32":{"type":"Real","subtype":"Float32"},"float64":{"type":"Real"},"string":{"type":"String"},"large_string":{"type":"String"},"timestamp_ms_gmt":{"type":"DateTime"},"timestamp_ms_gmt_plus_2":{"type":"DateTime"},"timestamp_ms_gmt_minus_0215":{"type":"DateTime"},"timestamp_s_no_tz":{"type":"DateTime"},"time32_s":{"type":"Time"},"time32_ms":{"type":"Time"},"time64_us":{"type":"Integer64"},"time64_ns":{"type":"Integer64"},"date32":{"type":"Date"},"date64":{"type":"Date"},"binary":{"type":"Binary"},"large_binary":{"type":"Binary"},"fixed_size_binary":{"type":"Binary","width":2},"decimal128":{"type":"Real","width":7,"precision":3},"decimal256":{"type":"Real","width":7,"precision":3},"list_boolean":{"type":"IntegerList","subtype":"Boolean"},"list_uint8":{"type":"IntegerList"},"list_int8":{"type":"IntegerList"},"list_uint16":{"type":"IntegerList"},"list_int16":{"type":"IntegerList"},"list_uint32":{"type":"Integer64List"},"list_int32":{"type":"IntegerList"},"list_uint64":{"type":"RealList"},"list_int64":{"type":"Integer64List"},"list_float32":{"type":"RealList","subtype":"Float32"},"list_float64":{"type":"RealList"},"list_string":{"type":"StringList"},"fixed_size_list_boolean":{"type":"IntegerList","subtype":"Boolean"},"fixed_size_list_uint8":{"type":"IntegerList"},"fixed_size_list_int8":{"type":"IntegerList"},"fixed_size_list_uint16":{"type":"IntegerList"},"fixed_size_list_int16":{"type":"IntegerList"},"fixed_size_list_uint32":{"type":"Integer64List"},"fixed_size_list_int32":{"type":"IntegerList"},"fixed_size_list_uint64":{"type":"RealList"},"fixed_size_list_int64":{"type":"Integer64List"},"fixed_size_list_float32":{"type":"RealList","subtype":"Float32"},"fixed_size_list_float64":{"type":"RealList"},"fixed_size_list_string":{"type":"StringList"},"struct_field.a":{"type":"Integer64"},"struct_field.b":{"type":"Real"},"struct_field.c.d":{"type":"String"},"struct_field.c.f":{"type":"String"},"struct_field.h":{"type":"Integer64List"},"struct_field.i":{"type":"Integer64"},"map_boolean":{"type":"String","subtype":"JSON"},"map_uint8":{"type":"String","subtype":"JSON"},"map_int8":{"type":"String","subtype":"JSON"},"map_uint16":{"type":"String","subtype":"JSON"},"map_int16":{"type":"String","subtype":"JSON"},"map_uint32":{"type":"String","subtype":"JSON"},"map_int32":{"type":"String","subtype":"JSON"},"map_uint64":{"type":"String","subtype":"JSON"},"map_int64":{"type":"String","subtype":"JSON"},"map_float32":{"type":"String","subtype":"JSON"},"map_float64":{"type":"String","subtype":"JSON"},"map_string":{"type":"String","subtype":"JSON"},"dict":{"type":"Integer"}}}
GDAL: GDALOpen(out_SNAPPY.parquet, this=00000211A70E3DA0) succeeds as
Parquet.
INFO: Open of `out_SNAPPY.parquet'
using driver `Parquet' successful.
Layer name: out_SNAPPY
Geometry: Point
Feature Count: 5
Extent: (0.000000, 2.000000) - (4.000000, 2.000000)
Layer SRS WKT:
GEOGCRS["WGS 84",
ENSEMBLE["World Geodetic System 1984 ensemble",
MEMBER["World Geodetic System 1984 (Transit)"],
MEMBER["World Geodetic System 1984 (G730)"],
MEMBER["World Geodetic System 1984 (G873)"],
MEMBER["World Geodetic System 1984 (G1150)"],
MEMBER["World Geodetic System 1984 (G1674)"],
MEMBER["World Geodetic System 1984 (G1762)"],
MEMBER["World Geodetic System 1984 (G2139)"],
ELLIPSOID["WGS 84",6378137,298.257223563,
LENGTHUNIT["metre",1]],
ENSEMBLEACCURACY[2.0]],
PRIMEM["Greenwich",0,
ANGLEUNIT["degree",0.0174532925199433]],
CS[ellipsoidal,2],
AXIS["geodetic latitude (Lat)",north,
ORDER[1],
ANGLEUNIT["degree",0.0174532925199433]],
AXIS["geodetic longitude (Lon)",east,
ORDER[2],
ANGLEUNIT["degree",0.0174532925199433]],
USAGE[
SCOPE["Horizontal component of 3D system."],
AREA["World."],
BBOX[-90,-180,90,180]],
ID["EPSG",4326]]
Data axis to CRS axis mapping: 2,1
Geometry Column = geometry
boolean: Integer(Boolean) (0.0)
uint8: Integer (0.0)
int8: Integer (0.0)
uint16: Integer (0.0)
int16: Integer(Int16) (0.0)
uint32: Integer64 (0.0)
int32: Integer (0.0)
uint64: Real (0.0)
int64: Integer64 (0.0)
float32: Real(Float32) (0.0)
float64: Real (0.0)
string: String (0.0)
large_string: String (0.0)
timestamp_ms_gmt: DateTime (0.0)
timestamp_ms_gmt_plus_2: DateTime (0.0)
timestamp_ms_gmt_minus_0215: DateTime (0.0)
timestamp_s_no_tz: DateTime (0.0)
time32_s: Time (0.0)
time32_ms: Time (0.0)
time64_us: Integer64 (0.0)
time64_ns: Integer64 (0.0)
date32: Date (0.0)
date64: Date (0.0)
binary: Binary (0.0)
large_binary: Binary (0.0)
fixed_size_binary: Binary (2.0)
decimal128: Real (7.3)
decimal256: Real (7.3)
list_boolean: IntegerList(Boolean) (0.0)
list_uint8: IntegerList (0.0)
list_int8: IntegerList (0.0)
list_uint16: IntegerList (0.0)
list_int16: IntegerList (0.0)
list_uint32: Integer64List (0.0)
list_int32: IntegerList (0.0)
list_uint64: RealList (0.0)
list_int64: Integer64List (0.0)
list_float32: RealList(Float32) (0.0)
list_float64: RealList (0.0)
list_string: StringList (0.0)
fixed_size_list_boolean: IntegerList(Boolean) (0.0)
fixed_size_list_uint8: IntegerList (0.0)
fixed_size_list_int8: IntegerList (0.0)
fixed_size_list_uint16: IntegerList (0.0)
fixed_size_list_int16: IntegerList (0.0)
fixed_size_list_uint32: Integer64List (0.0)
fixed_size_list_int32: IntegerList (0.0)
fixed_size_list_uint64: RealList (0.0)
fixed_size_list_int64: Integer64List (0.0)
fixed_size_list_float32: RealList(Float32) (0.0)
fixed_size_list_float64: RealList (0.0)
fixed_size_list_string: StringList (0.0)
struct_field.a: Integer64 (0.0)
struct_field.b: Real (0.0)
struct_field.c.d: String (0.0)
struct_field.c.f: String (0.0)
struct_field.h: Integer64List (0.0)
struct_field.i: Integer64 (0.0)
map_boolean: String(JSON) (0.0)
map_uint8: String(JSON) (0.0)
map_int8: String(JSON) (0.0)
map_uint16: String(JSON) (0.0)
map_int16: String(JSON) (0.0)
map_uint32: String(JSON) (0.0)
map_int32: String(JSON) (0.0)
map_uint64: String(JSON) (0.0)
map_int64: String(JSON) (0.0)
map_float32: String(JSON) (0.0)
map_float64: String(JSON) (0.0)
map_string: String(JSON) (0.0)
dict: Integer (0.0), domain name=dictDomain
OGRFeature(out_SNAPPY):0
boolean (Integer(Boolean)) = 1
uint8 (Integer) = 1
int8 (Integer) = -2
uint16 (Integer) = 1
int16 (Integer(Int16)) = -20000
uint32 (Integer64) = 1
int32 (Integer) = -2000000000
uint64 (Real) = 1
int64 (Integer64) = -200000000000
float32 (Real(Float32)) = 1.5
float64 (Real) = 1.5
string (String) = abcd
large_string (String) = abcd
timestamp_ms_gmt (DateTime) = 2019/01/01 14:00:00+00
timestamp_ms_gmt_plus_2 (DateTime) = 2019/01/01 14:00:00+02
timestamp_ms_gmt_minus_0215 (DateTime) = 2019/01/01 14:00:00-0215
timestamp_s_no_tz (DateTime) = 2019/01/01 14:00:00
time32_s (Time) = 01:02:03
time32_ms (Time) = 01:02:03.456
time64_us (Integer64) = 3723000000
time64_ns (Integer64) = 3723000000456
date32 (Date) = 1970/01/02
date64 (Date) = 1970/01/02
binary (Binary) = 0001
large_binary (Binary) = 0001
fixed_size_binary (Binary) = 0001
decimal128 (Real) = 1234.567
decimal256 (Real) = 1234.567
list_boolean (IntegerList(Boolean)) = (0:)
list_uint8 (IntegerList) = (0:)
list_int8 (IntegerList) = (0:)
list_uint16 (IntegerList) = (0:)
list_int16 (IntegerList) = (0:)
list_uint32 (Integer64List) = (0:)
list_int32 (IntegerList) = (0:)
list_uint64 (RealList) = (0:)
list_int64 (Integer64List) = (0:)
list_float32 (RealList(Float32)) = (0:)
list_float64 (RealList) = (0:)
list_string (StringList) = (0:)
fixed_size_list_boolean (IntegerList(Boolean)) = (2:1,0)
fixed_size_list_uint8 (IntegerList) = (2:0,1)
fixed_size_list_int8 (IntegerList) = (2:0,1)
fixed_size_list_uint16 (IntegerList) = (2:0,1)
fixed_size_list_int16 (IntegerList) = (2:0,1)
fixed_size_list_uint32 (Integer64List) = (2:0,1)
fixed_size_list_int32 (IntegerList) = (2:0,1)
fixed_size_list_uint64 (RealList) = (2:0,1)
fixed_size_list_int64 (Integer64List) = (2:0,1)
fixed_size_list_float32 (RealList(Float32)) = (2:0.0,nan)
fixed_size_list_float64 (RealList) = (2:0,nan)
fixed_size_list_string (StringList) = (2:a,b)
struct_field.a (Integer64) = 1
struct_field.b (Real) = 2.5
struct_field.c.d (String) = e
struct_field.c.f (String) = g
struct_field.h (Integer64List) = (2:5,6)
struct_field.i (Integer64) = 3
map_boolean (String(JSON)) = {"x":null,"y":true}
map_uint8 (String(JSON)) = {"x":1,"y":null}
map_int8 (String(JSON)) = {"x":1,"y":null}
map_uint16 (String(JSON)) = {"x":1,"y":null}
map_int16 (String(JSON)) = {"x":1,"y":null}
map_uint32 (String(JSON)) = {"x":4000000000,"y":null}
map_int32 (String(JSON)) = {"x":2000000000,"y":null}
map_uint64 (String(JSON)) = {"x":4000000000000.0,"y":null}
map_int64 (String(JSON)) = {"x":-2000000000000,"y":null}
map_float32 (String(JSON)) = {"x":1.5,"y":null}
map_float64 (String(JSON)) = {"x":1.5,"y":null}
map_string (String(JSON)) = {"x":"x_val","y":null}
dict (Integer) = 0
POINT (0 2)
OGRFeature(out_SNAPPY):1
boolean (Integer(Boolean)) = 0
uint8 (Integer) = 2
int8 (Integer) = -1
uint16 (Integer) = 10001
int16 (Integer(Int16)) = -10000
uint32 (Integer64) = 1000000001
int32 (Integer) = -1000000000
uint64 (Real) = 100000000001
int64 (Integer64) = -100000000000
float32 (Real(Float32)) = 2.5
float64 (Real) = 2.5
string (String) =
large_string (String) =
timestamp_ms_gmt (DateTime) = 2019/01/01 14:00:00+00
timestamp_ms_gmt_plus_2 (DateTime) = 2019/01/01 14:00:00+02
timestamp_ms_gmt_minus_0215 (DateTime) = 2019/01/01 14:00:00-0215
timestamp_s_no_tz (DateTime) = 2019/01/01 14:00:00
time32_s (Time) = (null)
time32_ms (Time) = 00:00:00.002
time64_us (Integer64) = (null)
time64_ns (Integer64) = 2
date32 (Date) = 1970/01/03
date64 (Date) = 1970/01/01
binary (Binary) = 0001
large_binary (Binary) = 0001
fixed_size_binary (Binary) = 0001
decimal128 (Real) = -1234.567
decimal256 (Real) = -1234.567
list_boolean (IntegerList(Boolean)) = (1:0)
list_uint8 (IntegerList) = (1:0)
list_int8 (IntegerList) = (1:0)
list_uint16 (IntegerList) = (1:0)
list_int16 (IntegerList) = (1:0)
list_uint32 (Integer64List) = (1:0)
list_int32 (IntegerList) = (1:0)
list_uint64 (RealList) = (1:0)
list_int64 (Integer64List) = (1:0)
list_float32 (RealList(Float32)) = (1:nan)
list_float64 (RealList) = (1:nan)
list_string (StringList) = (1:A)
fixed_size_list_boolean (IntegerList(Boolean)) = (2:0,1)
fixed_size_list_uint8 (IntegerList) = (2:2,3)
fixed_size_list_int8 (IntegerList) = (2:2,3)
fixed_size_list_uint16 (IntegerList) = (2:2,3)
fixed_size_list_int16 (IntegerList) = (2:2,3)
fixed_size_list_uint32 (Integer64List) = (2:2,3)
fixed_size_list_int32 (IntegerList) = (2:2,3)
fixed_size_list_uint64 (RealList) = (2:2,3)
fixed_size_list_int64 (Integer64List) = (2:2,3)
fixed_size_list_float32 (RealList(Float32)) = (2:2.0,3.0)
fixed_size_list_float64 (RealList) = (2:2,3)
fixed_size_list_string (StringList) = (2:c,d)
struct_field.a (Integer64) = 1
struct_field.b (Real) = 2.5
struct_field.c.d (String) = e
struct_field.c.f (String) = g
struct_field.h (Integer64List) = (2:5,6)
struct_field.i (Integer64) = 3
map_boolean (String(JSON)) = {"z":true}
map_uint8 (String(JSON)) = {"z":3}
map_int8 (String(JSON)) = {"z":3}
map_uint16 (String(JSON)) = {"z":3}
map_int16 (String(JSON)) = {"z":3}
map_uint32 (String(JSON)) = {"z":3}
map_int32 (String(JSON)) = {"z":3}
map_uint64 (String(JSON)) = {"z":3.0}
map_int64 (String(JSON)) = {"z":3}
map_float32 (String(JSON)) = {"z":3.0}
map_float64 (String(JSON)) = {"z":3.0}
map_string (String(JSON)) = {"z":"z_val"}
dict (Integer) = 1
OGRFeature(out_SNAPPY):2
boolean (Integer(Boolean)) = (null)
uint8 (Integer) = (null)
int8 (Integer) = (null)
uint16 (Integer) = (null)
int16 (Integer(Int16)) = (null)
uint32 (Integer64) = (null)
int32 (Integer) = (null)
uint64 (Real) = (null)
int64 (Integer64) = (null)
float32 (Real(Float32)) = (null)
float64 (Real) = (null)
string (String) = (null)
large_string (String) = (null)
timestamp_ms_gmt (DateTime) = 2019/01/01 14:00:00+00
timestamp_ms_gmt_plus_2 (DateTime) = 2019/01/01 14:00:00+02
timestamp_ms_gmt_minus_0215 (DateTime) = 2019/01/01 14:00:00-0215
timestamp_s_no_tz (DateTime) = 2019/01/01 14:00:00
time32_s (Time) = 00:00:03
time32_ms (Time) = 00:00:00.003
time64_us (Integer64) = 3
time64_ns (Integer64) = 3
date32 (Date) = 1970/01/04
date64 (Date) = 1970/01/01
binary (Binary) = 0001
large_binary (Binary) = 0001
fixed_size_binary (Binary) = 0001
decimal128 (Real) = (null)
decimal256 (Real) = (null)
list_boolean (IntegerList(Boolean)) = (null)
list_uint8 (IntegerList) = (null)
list_int8 (IntegerList) = (null)
list_uint16 (IntegerList) = (null)
list_int16 (IntegerList) = (null)
list_uint32 (Integer64List) = (null)
list_int32 (IntegerList) = (null)
list_uint64 (RealList) = (null)
list_int64 (Integer64List) = (null)
list_float32 (RealList(Float32)) = (null)
list_float64 (RealList) = (null)
list_string (StringList) = (null)
fixed_size_list_boolean (IntegerList(Boolean)) = (2:1,0)
fixed_size_list_uint8 (IntegerList) = (2:4,5)
fixed_size_list_int8 (IntegerList) = (2:4,5)
fixed_size_list_uint16 (IntegerList) = (2:4,5)
fixed_size_list_int16 (IntegerList) = (2:4,5)
fixed_size_list_uint32 (Integer64List) = (2:4,5)
fixed_size_list_int32 (IntegerList) = (2:4,5)
fixed_size_list_uint64 (RealList) = (2:4,5)
fixed_size_list_int64 (Integer64List) = (2:4,5)
fixed_size_list_float32 (RealList(Float32)) = (2:4.0,5.0)
fixed_size_list_float64 (RealList) = (2:4,5)
fixed_size_list_string (StringList) = (2:e,f)
struct_field.a (Integer64) = 1
struct_field.b (Real) = 2.5
struct_field.c.d (String) = e
struct_field.c.f (String) = g
struct_field.h (Integer64List) = (2:5,6)
struct_field.i (Integer64) = 3
map_boolean (String(JSON)) = (null)
map_uint8 (String(JSON)) = (null)
map_int8 (String(JSON)) = (null)
map_uint16 (String(JSON)) = (null)
map_int16 (String(JSON)) = (null)
map_uint32 (String(JSON)) = (null)
map_int32 (String(JSON)) = (null)
map_uint64 (String(JSON)) = (null)
map_int64 (String(JSON)) = (null)
map_float32 (String(JSON)) = (null)
map_float64 (String(JSON)) = (null)
map_string (String(JSON)) = (null)
dict (Integer) = 2
POINT (2 2)
OGRFeature(out_SNAPPY):3
boolean (Integer(Boolean)) = 0
uint8 (Integer) = 4
int8 (Integer) = 1
uint16 (Integer) = 30001
int16 (Integer(Int16)) = 10000
uint32 (Integer64) = 3000000001
int32 (Integer) = 1000000000
uint64 (Real) = 300000000001
int64 (Integer64) = 100000000000
float32 (Real(Float32)) = 4.5
float64 (Real) = 4.5
string (String) = c
large_string (String) = c
timestamp_ms_gmt (DateTime) = 2019/01/01 14:00:00+00
timestamp_ms_gmt_plus_2 (DateTime) = 2019/01/01 14:00:00+02
timestamp_ms_gmt_minus_0215 (DateTime) = 2019/01/01 14:00:00-0215
timestamp_s_no_tz (DateTime) = 2019/01/01 14:00:00
time32_s (Time) = 00:00:04
time32_ms (Time) = 00:00:00.004
time64_us (Integer64) = 4
time64_ns (Integer64) = 4
date32 (Date) = 1970/01/05
date64 (Date) = 1970/01/01
binary (Binary) = 0001
large_binary (Binary) = 0001
fixed_size_binary (Binary) = 0001
decimal128 (Real) = 1234.567
decimal256 (Real) = 1234.567
list_boolean (IntegerList(Boolean)) = (3:0,0,1)
list_uint8 (IntegerList) = (3:0,4,5)
list_int8 (IntegerList) = (3:0,4,5)
list_uint16 (IntegerList) = (3:0,4,5)
list_int16 (IntegerList) = (3:0,4,5)
list_uint32 (Integer64List) = (3:0,4,5)
list_int32 (IntegerList) = (3:0,4,5)
list_uint64 (RealList) = (3:0,4,5)
list_int64 (Integer64List) = (3:0,4,5)
list_float32 (RealList(Float32)) = (3:nan,4.5,5.5)
list_float64 (RealList) = (3:nan,4.5,5.5)
list_string (StringList) = (3:A,BC,CDE)
fixed_size_list_boolean (IntegerList(Boolean)) = (2:0,1)
fixed_size_list_uint8 (IntegerList) = (2:6,7)
fixed_size_list_int8 (IntegerList) = (2:6,7)
fixed_size_list_uint16 (IntegerList) = (2:6,7)
fixed_size_list_int16 (IntegerList) = (2:6,7)
fixed_size_list_uint32 (Integer64List) = (2:6,7)
fixed_size_list_int32 (IntegerList) = (2:6,7)
fixed_size_list_uint64 (RealList) = (2:6,7)
fixed_size_list_int64 (Integer64List) = (2:6,7)
fixed_size_list_float32 (RealList(Float32)) = (2:6.0,7.0)
fixed_size_list_float64 (RealList) = (2:6,7)
fixed_size_list_string (StringList) = (2:g,h)
struct_field.a (Integer64) = 1
struct_field.b (Real) = 2.5
struct_field.c.d (String) = e
struct_field.c.f (String) = g
struct_field.h (Integer64List) = (2:5,6)
struct_field.i (Integer64) = 3
map_boolean (String(JSON)) = {}
map_uint8 (String(JSON)) = {}
map_int8 (String(JSON)) = {}
map_uint16 (String(JSON)) = {}
map_int16 (String(JSON)) = {}
map_uint32 (String(JSON)) = {}
map_int32 (String(JSON)) = {}
map_uint64 (String(JSON)) = {}
map_int64 (String(JSON)) = {}
map_float32 (String(JSON)) = {}
map_float64 (String(JSON)) = {}
map_string (String(JSON)) = {}
dict (Integer) = (null)
POINT (3 2)
OGRFeature(out_SNAPPY):4
boolean (Integer(Boolean)) = 1
uint8 (Integer) = 5
int8 (Integer) = 2
uint16 (Integer) = 40001
int16 (Integer(Int16)) = 20000
uint32 (Integer64) = 4000000001
int32 (Integer) = 2000000000
uint64 (Real) = 400000000001
int64 (Integer64) = 200000000000
float32 (Real(Float32)) = 5.5
float64 (Real) = 5.5
string (String) = d
large_string (String) = d
timestamp_ms_gmt (DateTime) = 2019/01/01 14:00:00+00
timestamp_ms_gmt_plus_2 (DateTime) = 2019/01/01 14:00:00+02
timestamp_ms_gmt_minus_0215 (DateTime) = 2019/01/01 14:00:00-0215
timestamp_s_no_tz (DateTime) = 2019/01/01 14:00:00
time32_s (Time) = 00:00:05
time32_ms (Time) = 00:00:00.005
time64_us (Integer64) = 5
time64_ns (Integer64) = 5
date32 (Date) = 1970/01/06
date64 (Date) = 1970/01/01
binary (Binary) = 0001
large_binary (Binary) = 0001
fixed_size_binary (Binary) = 0001
decimal128 (Real) = -1234.567
decimal256 (Real) = -1234.567
list_boolean (IntegerList(Boolean)) = (4:1,0,1,0)
list_uint8 (IntegerList) = (4:0,7,8,9)
list_int8 (IntegerList) = (4:0,7,8,9)
list_uint16 (IntegerList) = (4:0,7,8,9)
list_int16 (IntegerList) = (4:0,7,8,9)
list_uint32 (Integer64List) = (4:0,7,8,9)
list_int32 (IntegerList) = (4:0,7,8,9)
list_uint64 (RealList) = (4:0,7,8,9)
list_int64 (Integer64List) = (4:0,7,8,9)
list_float32 (RealList(Float32)) = (4:nan,7.5,8.5,9.5)
list_float64 (RealList) = (4:nan,7.5,8.5,9.5)
list_string (StringList) = (4:A,BC,CDE,DEFG)
fixed_size_list_boolean (IntegerList(Boolean)) = (2:1,0)
fixed_size_list_uint8 (IntegerList) = (2:8,9)
fixed_size_list_int8 (IntegerList) = (2:8,9)
fixed_size_list_uint16 (IntegerList) = (2:8,9)
fixed_size_list_int16 (IntegerList) = (2:8,9)
fixed_size_list_uint32 (Integer64List) = (2:8,9)
fixed_size_list_int32 (IntegerList) = (2:8,9)
fixed_size_liARROW: Memory pool: bytes_allocated = 12800
ARROW: Memory pool: max_memory = 32896
GDAL: GDALClose(out_SNAPPY.parquet, this=00000211A70E3DA0)
GDAL: In GDALDestroy - unloading GDAL shared library.
st_uint64 (RealList) = (2:8,9)
fixed_size_list_int64 (Integer64List) = (2:8,9)
fixed_size_list_float32 (RealList(Float32)) = (2:8.0,9.0)
fixed_size_list_float64 (RealList) = (2:8,9)
fixed_size_list_string (StringList) = (2:i,j)
struct_field.a (Integer64) = 1
struct_field.b (Real) = 2.5
struct_field.c.d (String) = e
struct_field.c.f (String) = g
struct_field.h (Integer64List) = (2:5,6)
struct_field.i (Integer64) = 3
map_boolean (String(JSON)) = {}
map_uint8 (String(JSON)) = {}
map_int8 (String(JSON)) = {}
map_uint16 (String(JSON)) = {}
map_int16 (String(JSON)) = {}
map_uint32 (String(JSON)) = {}
map_int32 (String(JSON)) = {}
map_uint64 (String(JSON)) = {}
map_int64 (String(JSON)) = {}
map_float32 (String(JSON)) = {}
map_float64 (String(JSON)) = {}
map_string (String(JSON)) = {}
dict (Integer) = 2
POINT (4 2)
0
}}}
--
Ticket URL: <https://trac.osgeo.org/osgeo4w/ticket/758#comment:3>
OSGeo4W <http://trac.osgeo.org/osgeo4w>
OSGeo4W is the Windows installer and package environment for the OSGeo stack.
More information about the osgeo4w-dev
mailing list