Opened 13 years ago

Closed 13 years ago

## #634 closed defect (fixed)

# v.out.ogr error on Vista

Reported by: | cnielsen | Owned by: | |
---|---|---|---|

Priority: | major | Milestone: | 6.4.0 |

Component: | Vector | Version: | svn-develbranch6 |

Keywords: | wingrass, v.out.ogr | Cc: | |

CPU: | x86-32 | Platform: | MSWindows Vista |

## Description

I'm not sure if this is just my own error or if its a larger issue of GDAL/OGR on Vista. I'm getting an error when trying to export a vector point file via v.out.ogr in the latest native wingrass (and on my own builds of develbranch_6 and trunk) on Vista-32.

There's no message at all, just a regular windows box that says "v.out.ogr.exe has stopped working".

I turned on DEBUG=5 but it isn't very informative either, the log is below. There wasn't a problem when I tried this on a winxp-64 machine.

Please let me know what other information I should provide to help someone fix this.

> v.out.ogr input=archsites type=point dsn=archsites D2/5: driver count = 26 D2/5: driver 0/26 : ESRI Shapefile D2/5: driver 1/26 : MapInfo File D2/5: driver 4/26 : TIGER D2/5: driver 5/26 : S57 D2/5: driver 6/26 : DGN D2/5: driver 9/26 : Memory D2/5: driver 10/26 : BNA D2/5: driver 11/26 : CSV D2/5: driver 12/26 : GML D2/5: driver 13/26 : GPX D2/5: driver 14/26 : KML D2/5: driver 15/26 : GeoJSON D2/5: driver 16/26 : Interlis 1 D2/5: driver 17/26 : Interlis 2 D2/5: driver 18/26 : GMT D2/5: driver 19/26 : SQLite D2/5: driver 20/26 : ODBC D2/5: driver 23/26 : PostgreSQL D2/5: driver 24/26 : MySQL D2/5: all drivers: ESRI_Shapefile,MapInfo_File,TIGER,S57,DGN,Memory,BNA,CSV,GML,GPX,KML,GeoJSON,Interlis_1,Interlis_2,GMT,SQLite,ODBC,PostgreSQL,MySQL, D1/5: Vect_open_old(): name = archsites mapset= PERMANENT update = 0 D1/5: Vect_set_thresh(): thresh = 0.000000 D3/5: dig_init_plus() D1/5: dig_spidx_init() D3/5: dig_cidx_init() D1/5: open format file: 'PERMANENT/vector/archsites/frmt' D1/5: Vector format: 0 (native) D1/5: Vect_set_thresh(): thresh = 0.000000 D1/5: Vect__read_head(): vector = archsites@PERMANENT D1/5: Vect_set_thresh(): thresh = 0.000000 D1/5: Level request = 2 D1/5: Vect_open_topo(): name = archsites mapset= PERMANENT D1/5: get coor info: C:/Users/Llamo/Documents/GIS DataBase/Spearfish60/PERMANENT/vector/archsites/coor D1/5: Info->size = 739, Info->mtime = 1113226004 D2/5: Topo header: file version 5.0 , supported from GRASS version 5.0 D2/5: byte order 0 D2/5: header size 142 D2/5: with_z 0 D2/5: coor size 739 D1/5: Topo head: coor size = 739, coor mtime = 1995283852 D1/5: dig_load_plus() D3/5: dig_init_plus() D1/5: dig_spidx_init() D3/5: dig_cidx_init() D2/5: Topo header: file version 5.0 , supported from GRASS version 5.0 D2/5: byte order 0 D2/5: header size 142 D2/5: with_z 0 D2/5: coor size 739 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_node() D3/5: dig_node_alloc_line(): add = 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_Rd_P_line() D5/5: line type 1 -> 1 D3/5: dig_alloc_isle(): D2/5: Vect_cidx_open(): name = archsites mapset= PERMANENT D3/5: dig_cidx_init() D3/5: dig_read_cidx() D3/5: dig_cidx_init() D3/5: Cidx header: file version 5.0 , supported from GRASS version 5.0 D3/5: byte order 0 D3/5: header size 9 D1/5: V1_open_old_nat(): name = archsites mapset = PERMANENT D2/5: Coor header: file version 5.1 , supported from GRASS version 5.1 D2/5: byte order 0 D2/5: header size 14 D2/5: with_z 0 D2/5: coor size 739 D1/5: get coor info: C:/Users/Llamo/Documents/GIS DataBase/Spearfish60/PERMANENT/vector/archsites/coor D1/5: Info->size = 739, Info->mtime = 1113226004 D1/5: coor size in head = 739, real coor file size= 739 D2/5: dig_file_load () D2/5: requested mode = 2 D2/5: size = 739 D2/5: file was not loaded to the memory D1/5: Vect_open_old(): vector opened on level 2 D1/5: Vect_read_dblinks(): map = archsites, mapset = PERMANENT D3/5: Searching for FID column in OGR DB D1/5: dbln file: C:/Users/Llamo/Documents/GIS DataBase/Spearfish60/PERMANENT/vector/archsites/dbln D1/5: dbln: 1 archsites cat $GISDBASE/$LOCATION_NAME/$MAPSET/dbf/ dbf D3/5: Field number <1>, name <(null)> D3/5: Vect_check_dblink: field 1 D1/5: field = 1 name = (null), table = archsites, key = cat, database = $GISDBASE/$LOCATION_NAME/$MAPSET/dbf/, driver = dbf D1/5: Dblinks read D1/5: Vect_Rewind(): name = archsites D2/5: G__read_Cell_head D2/5: G__read_Cell_head_array D3/5: region item: proj: 1 D3/5: region item: zone: 13 D3/5: region item: north: 4928010 D3/5: region item: south: 4913700 D3/5: region item: east: 609000 D3/5: region item: west: 589980 D3/5: region item: cols: 634 D3/5: region item: rows: 477 D3/5: region item: e-w resol: 30 D3/5: region item: n-s resol: 30 D3/5: region item: top: 1 D3/5: region item: bottom: 0 D3/5: region item: cols3: 634 D3/5: region item: rows3: 477 D3/5: region item: depths: 1 D3/5: region item: e-w resol3: 30 D3/5: region item: n-s resol3: 30 D3/5: region item: t-b resol: 1 D2/5: driver count = 52 D2/5: driver 0 : ESRI Shapefile D2/5: -> driver = 0 D2/5: driver 1 : MapInfo File D2/5: driver 2 : UK .NTF D2/5: driver 3 : SDTS D2/5: driver 4 : TIGER D2/5: driver 5 : S57 D2/5: driver 6 : DGN D2/5: driver 7 : VRT D2/5: driver 8 : REC D2/5: driver 9 : Memory D2/5: driver 10 : BNA D2/5: driver 11 : CSV D2/5: driver 12 : GML D2/5: driver 13 : GPX D2/5: driver 14 : KML D2/5: driver 15 : GeoJSON D2/5: driver 16 : Interlis 1 D2/5: driver 17 : Interlis 2 D2/5: driver 18 : GMT D2/5: driver 19 : SQLite D2/5: driver 20 : ODBC D2/5: driver 21 : PGeo D2/5: driver 22 : OGDI D2/5: driver 23 : PostgreSQL D2/5: driver 24 : MySQL D2/5: driver 25 : AVCBin D2/5: driver 26 : ESRI Shapefile D2/5: -> driver = 26 D2/5: driver 27 : MapInfo File D2/5: driver 28 : UK .NTF D2/5: driver 29 : SDTS D2/5: driver 30 : TIGER D2/5: driver 31 : S57 D2/5: driver 32 : DGN D2/5: driver 33 : VRT D2/5: driver 34 : REC D2/5: driver 35 : Memory D2/5: driver 36 : BNA D2/5: driver 37 : CSV D2/5: driver 38 : GML D2/5: driver 39 : GPX D2/5: driver 40 : KML D2/5: driver 41 : GeoJSON D2/5: driver 42 : Interlis 1 D2/5: driver 43 : Interlis 2 D2/5: driver 44 : GMT D2/5: driver 45 : SQLite D2/5: driver 46 : ODBC D2/5: driver 47 : PGeo D2/5: driver 48 : OGDI D2/5: driver 49 : PostgreSQL D2/5: driver 50 : MySQL D2/5: driver 51 : AVCBin

### Attachments (1)

### Change History (9)

### comment:1 by , 13 years ago

Component: | default → Vector |
---|---|

Keywords: | wingrass v.out.ogr added |

Version: | unspecified → svn-develbranch6 |

### comment:2 by , 13 years ago

Replying to cnielsen:

I'm not sure if this is just my own error or if its a larger issue of GDAL/OGR on Vista. I'm getting an error when trying to export a vector point file via v.out.ogr in the latest native wingrass (and on my own builds of develbranch_6 and trunk) on Vista-32.

There's no message at all, just a regular windows box that says "v.out.ogr.exe has stopped working".

I turned on DEBUG=5 but it isn't very informative either, the log is below. There wasn't a problem when I tried this on a winxp-64 machine.

Please let me know what other information I should provide to help someone fix this.

i can confirm this with a today self compiled grass (osgeo4w-tree, gdal1.6) (see http://lists.osgeo.org/pipermail/grass-user/2009-July/051356.html), r.out.gdal is working

helli

### comment:3 by , 13 years ago

I suggest to fix the valgrind errors in v.out.ogr listed above as the first line of attack.

### comment:4 by , 13 years ago

Hopefully fixed in 6.4 r38556. Suspected bug was calling OGRRegisterAll() twice: first driver count was 26, second driver count was 52 in debug report above by cnielsen.

Unfortunately I can't test on vista myself. If you test, please post debug report with debug level 3. Debug level 5 is not necessary.

valgrind report looks here different from what Hamish posted, most notably I get a message about Invalid free() / delete / delete[], but I did not yet manage to track it down.

Markus M

### comment:5 by , 13 years ago

Still broken in 38559 on vista. Normally I get the error below. Once I got all of that plus

ERROR 2: CPLRealloc(): Out of memory allocating 366 bytes.

though nothing was different from the try before.

D2/3: driver count = 26 D2/3: driver 0/26 : ESRI Shapefile D2/3: driver 1/26 : MapInfo File D2/3: driver 4/26 : TIGER D2/3: driver 5/26 : S57 D2/3: driver 6/26 : DGN D2/3: driver 9/26 : Memory D2/3: driver 10/26 : BNA D2/3: driver 11/26 : CSV D2/3: driver 12/26 : GML D2/3: driver 13/26 : GPX D2/3: driver 14/26 : KML D2/3: driver 15/26 : GeoJSON D2/3: driver 16/26 : Interlis 1 D2/3: driver 17/26 : Interlis 2 D2/3: driver 18/26 : GMT D2/3: driver 19/26 : SQLite D2/3: driver 20/26 : ODBC D2/3: driver 23/26 : PostgreSQL D2/3: driver 24/26 : MySQL D2/3: all drivers: ESRI_Shapefile,MapInfo_File,TIGER,S57,DGN,Memory,BNA,CSV,GML,GPX,KML,GeoJSON,Interlis_1,Interlis_2,GMT,SQLite,ODBC,PostgreSQL,MySQL, D1/3: Vect_open_old(): name = archsites mapset= PERMANENT update = 0 D1/3: Vect_set_thresh(): thresh = 0.000000 D3/3: dig_init_plus() D1/3: dig_spidx_init() D3/3: dig_cidx_init() D1/3: open format file: 'PERMANENT/vector/archsites/frmt' D1/3: Vector format: 0 (native) D1/3: Vect_set_thresh(): thresh = 0.000000 D1/3: Vect__read_head(): vector = archsites@PERMANENT D1/3: Vect_set_thresh(): thresh = 0.000000 D1/3: Level request = 2 D1/3: Vect_open_topo(): name = archsites mapset= PERMANENT D1/3: get coor info: C:/Users/Llamo/Documents/GIS DataBase/Spearfish60/PERMANENT/vector/archsites/coor D1/3: Info->size = 739, Info->mtime = 1113226004 D2/3: Topo header: file version 5.0 , supported from GRASS version 5.0 D2/3: byte order 0 D2/3: header size 142 D2/3: with_z 0 D2/3: coor size 739 D1/3: Topo head: coor size = 739, coor mtime = 1999216012 D1/3: dig_load_plus() D3/3: dig_init_plus() D1/3: dig_spidx_init() D3/3: dig_cidx_init() D2/3: Topo header: file version 5.0 , supported from GRASS version 5.0 D2/3: byte order 0 D2/3: header size 142 D2/3: with_z 0 D2/3: coor size 739 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_node() D3/3: dig_node_alloc_line(): add = 1 D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_Rd_P_line() D3/3: dig_alloc_isle(): D2/3: Vect_cidx_open(): name = archsites mapset= PERMANENT D3/3: dig_cidx_init() D3/3: dig_read_cidx() D3/3: dig_cidx_init() D3/3: Cidx header: file version 5.0 , supported from GRASS version 5.0 D3/3: byte order 0 D3/3: header size 9 D1/3: V1_open_old_nat(): name = archsites mapset = PERMANENT D2/3: Coor header: file version 5.1 , supported from GRASS version 5.1 D2/3: byte order 0 D2/3: header size 14 D2/3: with_z 0 D2/3: coor size 739 D1/3: get coor info: C:/Users/Llamo/Documents/GIS DataBase/Spearfish60/PERMANENT/vector/archsites/coor D1/3: Info->size = 739, Info->mtime = 1113226004 D1/3: coor size in head = 739, real coor file size= 739 D2/3: dig_file_load () D2/3: requested mode = 2 D2/3: size = 739 D2/3: file was not loaded to the memory D1/3: Vect_open_old(): vector opened on level 2 D1/3: Vect_read_dblinks(): map = archsites, mapset = PERMANENT D3/3: Searching for FID column in OGR DB D1/3: dbln file: C:/Users/Llamo/Documents/GIS DataBase/Spearfish60/PERMANENT/vector/archsites/dbln D1/3: dbln: 1 archsites cat $GISDBASE/$LOCATION_NAME/$MAPSET/dbf/ dbf D3/3: Field number <1>, name <(null)> D3/3: Vect_check_dblink: field 1 D1/3: field = 1 name = (null), table = archsites, key = cat, database = $GISDBASE/$LOCATION_NAME/$MAPSET/dbf/, driver = dbf D1/3: Dblinks read D1/3: Vect_Rewind(): name = archsites D2/3: G__read_Cell_head D2/3: G__read_Cell_head_array D3/3: region item: proj: 1 D3/3: region item: zone: 13 D3/3: region item: north: 4928010 D3/3: region item: south: 4913700 D3/3: region item: east: 609000 D3/3: region item: west: 589980 D3/3: region item: cols: 634 D3/3: region item: rows: 477 D3/3: region item: e-w resol: 30 D3/3: region item: n-s resol: 30 D3/3: region item: top: 1 D3/3: region item: bottom: 0 D3/3: region item: cols3: 634 D3/3: region item: rows3: 477 D3/3: region item: depths: 1 D3/3: region item: e-w resol3: 30 D3/3: region item: n-s resol3: 30 D3/3: region item: t-b resol: 1 D2/3: driver count = 26 D2/3: driver 0 : ESRI Shapefile D2/3: -> driver = 0 D2/3: driver 1 : MapInfo File D2/3: driver 2 : UK .NTF D2/3: driver 3 : SDTS D2/3: driver 4 : TIGER D2/3: driver 5 : S57 D2/3: driver 6 : DGN D2/3: driver 7 : VRT D2/3: driver 8 : REC D2/3: driver 9 : Memory D2/3: driver 10 : BNA D2/3: driver 11 : CSV D2/3: driver 12 : GML D2/3: driver 13 : GPX D2/3: driver 14 : KML D2/3: driver 15 : GeoJSON D2/3: driver 16 : Interlis 1 D2/3: driver 17 : Interlis 2 D2/3: driver 18 : GMT D2/3: driver 19 : SQLite D2/3: driver 20 : ODBC D2/3: driver 21 : PGeo D2/3: driver 22 : OGDI D2/3: driver 23 : PostgreSQL D2/3: driver 24 : MySQL D2/3: driver 25 : AVCBin

### follow-up: 7 comment:6 by , 13 years ago

The attached patch is for debugging only. It contains two minor potential fixes plus some more debugging info. I would like to find out where exactly v.out.ogr stops. You can add G_debug() statements yourself to pin down to exact point where v.out.ogr stops working, at least for me it would then be easier to tackle the problem. Maybe gdb could also help, but so far I did not find problems with gdb. Any tips on how to use gdb?

BTW, are other vector modules working for you, and is it Vista 32bit or Vista 64bit?

Markus M

### comment:7 by , 13 years ago

Replying to mmetz:

The attached patch is for debugging only. It contains two minor potential fixes plus some more debugging info.

The minor potential fixes seem to have worked. It works perfectly now. Should I still post the debugging?

BTW, are other vector modules working for you, and is it Vista 32bit or Vista 64bit?

Other modules were working, and it is vista 32bit.

-Colin

### comment:8 by , 13 years ago

Resolution: | → fixed |
---|---|

Status: | new → closed |

**Note:**See TracTickets for help on using tickets.

given example works for me on XP-32 using the latest OSGeo4w installer.

but valgrind on linux/i686 does find some errors.

other modules with valgrind errors -- r.los (#111) and r.sim.water (#617) -- have shown similar breakage on windows but work ok anyway in other OSs.

Hamish