[GRASS-dev] Re: [GRASS GIS] #1159: v.in.ascii fails with long text file in WinGRASS-6.4.0-1

GRASS GIS trac at osgeo.org
Tue Sep 14 15:28:43 EDT 2010


#1159: v.in.ascii fails with long text file in WinGRASS-6.4.0-1
------------------------+---------------------------------------------------
 Reporter:  lponti      |       Owner:  grass-dev@…              
     Type:  defect      |      Status:  new                      
 Priority:  normal      |   Milestone:  6.4.1                    
Component:  Vector      |     Version:  6.4.0                    
 Keywords:  v.in.ascii  |    Platform:  MSWindows 7              
      Cpu:  x86-32      |  
------------------------+---------------------------------------------------

Comment(by hellik):

 Replying to [ticket:1159 lponti]:

 I've tried this with the nc-sample-dataset in a WinVista32-box with the
 WinGrass64-installer:

 => point mode

 {{{
 v.out.ascii --verbose input=firestations at PERMANENT
 output=C:\wd\grassascii\pointmodeout.txt dp=4 columns=LOCATION,CITY
 }}}


 {{{
 v.in.ascii -n --verbose input=C:\wd\grassascii\pointmodeout.txt
 output=testvascii_import
 BUG in description, Option 'point' in <format> doesn't exist.
 BUG in descriptions, Option 'Standard' in <format> doesn't exist.
 Scanne die Eingabe zur Ermittelung der Spaltentypen...
 Maximale Länge der Inputzeile: 69
 Maximale Anzahl der Spalten: 5
 Minimale Anzahl der Spalten: 5
 Column: 1  type: double
 Column: 2  type: double
 Column: 3  type: integer
 Column: 4  type: string length: 30
 Column: 5  type: string length: 13
 Importiere Punkte...
 Fülle Tabelle...
 ERROR: Could not close attribute table. DBMI-driver doesn't accept all
 attributes.
 }}}

 the message above is partly translated from german to english.

 and with DEEBUG=3


 {{{
 v.in.ascii -n --verbose input=C:\wd\grassascii\pointmodeout.txt
 output=testvascii_import2
 BUG in Beschreibungen, Option 'Punkt' in <format> existiert nicht.
 BUG in Beschreibungen, Option 'Standard' in <format> existiert nicht.
 D2/3: Vect_open_new(): name = testvascii_import2
 D1/3: Vect_set_thresh(): thresh = 0.000000
 D1/3: V1_open_new_nat(): name = testvascii_import2
 D1/3: Vect_get_thresh(): thresh = 0.000000
 D1/3: dig__write_head()
 D1/3: write coor size (0) to head
 D2/3: coor body offset 14
 D3/3: dig_init_plus()
 D1/3: dig_spidx_init()
 D3/3: dig_cidx_init()
 D3/3: Vect_hist_command()
 D3/3: G_recreate_command()
 Scanne die Eingabe zur Ermittelung der Spaltentypen...
 D2/3: G__read_Cell_head
 D2/3: G__read_Cell_head_array
 D3/3: region item: proj:       99
 D3/3: region item: zone:       0
 D3/3: region item: north:      228513
 D3/3: region item: south:      214975.5
 D3/3: region item: east:       645012
 D3/3: region item: west:       629992.5
 D3/3: region item: cols:       527
 D3/3: region item: rows:       475
 D3/3: region item: e-w resol:  28.5
 D3/3: region item: n-s resol:  28.5
 D3/3: region item: top:        1
 D3/3: region item: bottom:     0
 D3/3: region item: cols3:      527
 D3/3: region item: rows3:      475
 D3/3: region item: depths:     1
 D3/3: region item: e-w resol3: 28.5
 D3/3: region item: n-s resol3: 28.5
 D3/3: region item: t-b resol:  1
 D3/3: row 1 : 68 chars
 D3/3: row 2 : 66 chars
 D3/3: row 3 : 56 chars
 D3/3: row 4 : 47 chars
 D3/3: row 5 : 56 chars
 D3/3: row 6 : 55 chars
 D3/3: row 7 : 45 chars
 D3/3: row 8 : 49 chars
 D3/3: row 9 : 46 chars
 D3/3: row 10 : 48 chars
 D3/3: row 11 : 49 chars
 D3/3: row 12 : 48 chars
 D3/3: row 13 : 48 chars
 D3/3: row 14 : 50 chars
 D3/3: row 15 : 49 chars
 D3/3: row 16 : 52 chars
 D3/3: row 17 : 58 chars
 D3/3: row 18 : 53 chars
 D3/3: row 19 : 51 chars
 D3/3: row 20 : 52 chars
 D3/3: row 21 : 52 chars
 D3/3: row 22 : 46 chars
 D3/3: row 23 : 48 chars
 D3/3: row 24 : 53 chars
 D3/3: row 25 : 47 chars
 D3/3: row 26 : 49 chars
 D3/3: row 27 : 51 chars
 D3/3: row 28 : 50 chars
 D3/3: row 29 : 48 chars
 D3/3: row 30 : 53 chars
 D3/3: row 31 : 51 chars
 D3/3: row 32 : 52 chars
 D3/3: row 33 : 50 chars
 D3/3: row 34 : 49 chars
 D3/3: row 35 : 56 chars
 D3/3: row 36 : 50 chars
 D3/3: row 37 : 53 chars
 D3/3: row 38 : 52 chars
 D3/3: row 39 : 62 chars
 D3/3: row 40 : 53 chars
 D3/3: row 41 : 57 chars
 D3/3: row 42 : 57 chars
 D3/3: row 43 : 51 chars
 D3/3: row 44 : 51 chars
 D3/3: row 45 : 49 chars
 D3/3: row 46 : 46 chars
 D3/3: row 47 : 52 chars
 D3/3: row 48 : 50 chars
 D3/3: row 49 : 51 chars
 D3/3: row 50 : 59 chars
 D3/3: row 51 : 56 chars
 D3/3: row 52 : 56 chars
 D3/3: row 53 : 53 chars
 D3/3: row 54 : 56 chars
 D3/3: row 55 : 52 chars
 D3/3: row 56 : 51 chars
 D3/3: row 57 : 48 chars
 D3/3: row 58 : 51 chars
 D3/3: row 59 : 49 chars
 D3/3: row 60 : 59 chars
 D3/3: row 61 : 47 chars
 D3/3: row 62 : 57 chars
 D3/3: row 63 : 55 chars
 D3/3: row 64 : 58 chars
 D3/3: row 65 : 61 chars
 D3/3: row 66 : 54 chars
 D3/3: row 67 : 51 chars
 D3/3: row 68 : 50 chars
 D3/3: row 69 : 32 chars
 D3/3: row 70 : 59 chars
 D3/3: row 71 : 60 chars
 Maximale Länge der Inputzeile: 69
 Maximale Anzahl der Spalten: 5
 Minimale Anzahl der Spalten: 5
 D1/3: Vect_default_field_info(): map = testvascii_import2
 field = 1
 D2/3: drv = dbf db = $GISDBASE/$LOCATION_NAME/$MAPSET/dbf/
 D3/3: Vect_subst_var(): in =
 $GISDBASE/$LOCATION_NAME/$MAPSET/dbf/, map =
 testvascii_import2, mapset = user1
 D3/3:   -> C:\gisdata\grassdata/nc_spm_08/user1/dbf/
 D3/3: db_start_driver_open_database():
   drvname = dbf, dbname =
 C:\gisdata\grassdata/nc_spm_08/user1/dbf/
 D2/3: dbDbmscap(): opendir [c:\Program
 Files\GRASS-64\driver\db\]
 D3/3: win_spawn: args = C:\windows\system32\cmd.exe /c
 ""c:\Program Files\GRASS-64\driver\db\dbf.exe""
 D2/3: DBF: db__driver_open_database() name =
 'C:\gisdata\grassdata/nc_spm_08/user1/dbf/'
 D2/3: db.name = C:\gisdata\grassdata/nc_spm_08/user1/dbf/
 D2/3: add_table(): table = helli name = helli.dbf
 D2/3: add_table(): table = testvascii_import name =
 testvascii_import.dbf
 D2/3: Begin transaction
 Column: 1  type: double
 Column: 2  type: double
 Column: 3  type: integer
 Column: 4  type: string length: 30
 Column: 5  type: string length: 13
 D3/3: Field number <1>, name <(null)>
 D3/3: Vect_check_dblink: field 1
 D1/3: Vect_write_dblinks(): map = testvascii_import2, mapset
 = user1
 D1/3: dbln file: C:\gisdata\grassdata/nc_spm_08/user1/vector
 /testvascii_import2/dbln
 D1/3: 1 testvascii_import2 cat
 $GISDBASE/$LOCATION_NAME/$MAPSET/dbf/ dbf
 D1/3: Dblinks written
 D3/3: create table testvascii_import2 ( cat integer, dbl_1
 double precision, dbl_2 double precision, int_1 integer,
 str_1 varchar(30), str_2 varchar(13) )
 D3/3: SQL statement parsed successfully: create table
 testvascii_import2 ( cat integer, dbl_1 double precision,
 dbl_2 double precision, int_1 integer, str_1 varchar(30),
 str_2 varchar(13) )
 D2/3: find_table(): table = testvascii_import2
 D2/3:   ? helli
 D2/3:   ? testvascii_import
 D3/3: Doing SQL command <1> on DBF table... (see
 include/sqlp.h)
 D2/3: add_table(): table = testvascii_import2 name =
 testvascii_import2.dbf
 D2/3: find_table(): table = testvascii_import2
 D2/3:   ? helli
 D2/3:   ? testvascii_import
 D2/3:   ? testvascii_import2
 D3/3: add_column(): tab = 2, type = 2, name = cat, width =
 11, decimals = 0
 D3/3: add_column(): tab = 2, type = 3, name = dbl_1, width =
 20, decimals = 6
 D3/3: add_column(): tab = 2, type = 3, name = dbl_2, width =
 20, decimals = 6
 D3/3: add_column(): tab = 2, type = 2, name = int_1, width =
 11, decimals = 0
 D3/3: add_column(): tab = 2, type = 1, name = str_1, width =
 30, decimals = 0
 D3/3: add_column(): tab = 2, type = 1, name = str_2, width =
 13, decimals = 0
 D1/3: Vect_write_dblinks(): map = testvascii_import2, mapset
 = user1
 D1/3: dbln file: C:\gisdata\grassdata/nc_spm_08/user1/vector
 /testvascii_import2/dbln
 D1/3: Dblinks written
 D3/3: Field number <1>, name <(null)>
 D3/3: Vect_check_dblink: field 1
 D1/3: Vect_write_dblinks(): map = testvascii_import2, mapset
 = user1
 D1/3: dbln file: C:\gisdata\grassdata/nc_spm_08/user1/vector
 /testvascii_import2/dbln
 D1/3: 1 testvascii_import2 cat
 $GISDBASE/$LOCATION_NAME/$MAPSET/dbf/ dbf
 D1/3: Dblinks written
 Importiere Punkte...
 D3/3: Vect_write_line(): name = testvascii_import2, format =
 0, level = 1
 D3/3: insert into testvascii_import2 values ( 1,
 620856.9586, 230066.3831, 1, '6804 Carpenter Fire Station
 Rd', 'Morrisville')
 D3/3: SQL statement parsed successfully: insert into
 testvascii_import2 values ( 1, 620856.9586, 230066.3831, 1,
 '6804 Carpenter Fire Station Rd', 'Morrisville')
 D2/3: find_table(): table = testvascii_import2
 D2/3:   ? helli
 D2/3:   ? testvascii_import
 D2/3:   ? testvascii_import2
 D2/3: load_table_head(): tab = 2, C:\gisdata\grassdata/nc_sp
 m_08/user1/dbf//testvascii_import2.dbf
 D3/3: Doing SQL command <3> on DBF table... (see
 include/sqlp.h)
 D2/3: load_table(): tab = 2
 D3/3: Vect_write_line(): name = testvascii_import2, format =
 0, level = 1
 D3/3: insert into testvascii_import2 values ( 2,
 625331.9186, 229990.8216, 2, '100 Morrisville-Carpenter Rd',
 'Morrisville')
 D3/3: SQL statement parsed successfully: insert into
 testvascii_import2 values ( 2, 625331.9186, 229990.8216, 2,
 '100 Morrisville-Carpenter Rd', 'Morrisville')
 D2/3: find_table(): table = testvascii_import2
 D2/3:   ? helli
 D2/3:   ? testvascii_import
 D2/3:   ? testvascii_import2
 D2/3: load_table_head(): tab = 2, C:\gisdata\grassdata/nc_sp
 m_08/user1/dbf//testvascii_import2.dbf
 D3/3: Doing SQL command <3> on DBF table... (see
 include/sqlp.h)
 D2/3: load_table(): tab = 2
 D3/3: Vect_write_line(): name = testvascii_import2, format =
 0, level = 1
 D3/3: insert into testvascii_import2 values ( 3,
 615797.6655, 213363.9926, 3, '3045 New Hill Holleman Rd',
 'Apex')
 D3/3: SQL statement parsed successfully: insert into
 testvascii_import2 values ( 3, 615797.6655, 213363.9926, 3,
 '3045 New Hill Holleman Rd', 'Apex')
 D2/3: find_table(): table = testvascii_import2
 D2/3:   ? helli
 D2/3:   ? testvascii_import
 D2/3:   ? testvascii_import2
 D2/3: load_table_head(): tab = 2, C:\gisdata\grassdata/nc_sp
 m_08/user1/dbf//testvascii_import2.dbf
 D3/3: Doing SQL command <3> on DBF table... (see
 include/sqlp.h)
 D2/3: load_table(): tab = 2
 D3/3: Vect_write_line(): name = testvascii_import2, format =
 0, level = 1
 D3/3: insert into testvascii_import2 values ( 4,
 623113.7142, 219859.0622, 4, '210 N. Salem St.', 'Apex')
 D3/3: SQL statement parsed successfully: insert into
 testvascii_import2 values ( 4, 623113.7142, 219859.0622, 4,
 '210 N. Salem St.', 'Apex')
 D2/3: find_table(): table = testvascii_import2
 D2/3:   ? helli
 D2/3:   ? testvascii_import
 D2/3:   ? testvascii_import2
 D2/3: load_table_head(): tab = 2, C:\gisdata\grassdata/nc_sp
 m_08/user1/dbf//testvascii_import2.dbf
 D3/3: Doing SQL command <3> on DBF table... (see
 include/sqlp.h)
 D2/3: load_table(): tab = 2
 D3/3: Vect_write_line(): name = testvascii_import2, format =
 0, level = 1
 D3/3: insert into testvascii_import2 values ( 5,
 627926.2843, 203208.6161, 5, '301 S. Fuquay Av', 'Fuquay-
 Varina')
 D3/3: SQL statement parsed successfully: insert into
 testvascii_import2 values ( 5, 627926.2843, 203208.6161, 5,
 '301 S. Fuquay Av', 'Fuquay-Varina')
 D2/3: find_table(): table = testvascii_import2
 D2/3:   ? helli
 D2/3:   ? testvascii_import
 D2/3:   ? testvascii_import2
 D2/3: load_table_head(): tab = 2, C:\gisdata\grassdata/nc_sp
 m_08/user1/dbf//testvascii_import2.dbf
 D3/3: Doing SQL command <3> on DBF table... (see
 include/sqlp.h)
 D2/3: load_table(): tab = 2
 D3/3: Vect_write_line(): name = testvascii_import2, format =
 0, level = 1
 D3/3: insert into testvascii_import2 values ( 6,
 634666.6648, 207474.4939, 6, '5617 Hilltop Rd', 'Fuquay-
 Varina')
 D3/3: SQL statement parsed successfully: insert into
 testvascii_import2 values ( 6, 634666.6648, 207474.4939, 6,
 '5617 Hilltop Rd', 'Fuquay-Varina')
 D2/3: find_table(): table = testvascii_import2
 D2/3:   ? helli
 D2/3:   ? testvascii_import
 D2/3:   ? testvascii_import2
 D2/3: load_table_head(): tab = 2, C:\gisdata\grassdata/nc_sp
 m_08/user1/dbf//testvascii_import2.dbf
 D3/3: Doing SQL command <3> on DBF table... (see
 include/sqlp.h)
 D2/3: load_table(): tab = 2
 D3/3: Vect_write_line(): name = testvascii_import2, format =
 0, level = 1
 D3/3: insert into testvascii_import2 values ( 7, 642099.61,
 208679.4695, 7, '9115 Sauls Rd', 'Raleigh')
 D3/3: SQL statement parsed successfully: insert into
 testvascii_import2 values ( 7, 642099.61, 208679.4695, 7,
 '9115 Sauls Rd', 'Raleigh')
 D2/3: find_table(): table = testvascii_import2
 D2/3:   ? helli
 D2/3:   ? testvascii_import
 D2/3:   ? testvascii_import2
 D2/3: load_table_head(): tab = 2, C:\gisdata\grassdata/nc_sp
 m_08/user1/dbf//testvascii_import2.dbf
 D3/3: Doing SQL command <3> on DBF table... (see
 include/sqlp.h)
 D2/3: load_table(): tab = 2
 D3/3: Vect_write_line(): name = testvascii_import2, format =
 0, level = 1
 D3/3: insert into testvascii_import2 values ( 8,
 636078.5716, 213276.0477, 8, '7401 Ten-Ten Rd', 'Raleigh')
 D3/3: SQL statement parsed successfully: insert into
 testvascii_import2 values ( 8, 636078.5716, 213276.0477, 8,
 '7401 Ten-Ten Rd', 'Raleigh')
 D2/3: find_table(): table = testvascii_import2
 D2/3:   ? helli
 D2/3:   ? testvascii_import
 D2/3:   ? testvascii_import2
 D2/3: load_table_head(): tab = 2, C:\gisdata\grassdata/nc_sp
 m_08/user1/dbf//testvascii_import2.dbf
 D3/3: Doing SQL command <3> on DBF table... (see
 include/sqlp.h)
 D2/3: load_table(): tab = 2
 D3/3: Vect_write_line(): name = testvascii_import2, format =
 0, level = 1
 D3/3: insert into testvascii_import2 values ( 9,
 630420.5003, 215694.0281, 9, '4501 Ten-Ten Rd', 'Apex')
 D3/3: SQL statement parsed successfully: insert into
 testvascii_import2 values ( 9, 630420.5003, 215694.0281, 9,
 '4501 Ten-Ten Rd', 'Apex')
 D2/3: find_table(): table = testvascii_import2
 D2/3:   ? helli
 D2/3:   ? testvascii_import
 D2/3:   ? testvascii_import2
 D2/3: load_table_head(): tab = 2, C:\gisdata\grassdata/nc_sp
 m_08/user1/dbf//testvascii_import2.dbf
 D3/3: Doing SQL command <3> on DBF table... (see
 include/sqlp.h)
 D2/3: load_table(): tab = 2
 D3/3: Vect_write_line(): name = testvascii_import2, format =
 0, level = 1
 D3/3: insert into testvascii_import2 values ( 10,
 627041.5491, 224084.2533, 10, '1401 Old Apex Rd', 'Cary')
 D3/3: SQL statement parsed successfully: insert into
 testvascii_import2 values ( 10, 627041.5491, 224084.2533,
 10, '1401 Old Apex Rd', 'Cary')
 D2/3: find_table(): table = testvascii_import2
 [...]
 D3/3: Doing SQL command <3> on DBF table... (see
 include/sqlp.h)
 D2/3: load_table(): tab = 2
 D3/3: Vect_write_line(): name = testvascii_import2, format =
 0, level = 1
 D3/3: insert into testvascii_import2 values ( 71,
 623658.6433, 209478.2433, 71, '1140 Avent Ferry Rd', 'Holly
 Springs')
 D3/3: SQL statement parsed successfully: insert into
 testvascii_import2 values ( 71, 623658.6433, 209478.2433,
 71, '1140 Avent Ferry Rd', 'Holly Springs')
 D2/3: find_table(): table = testvascii_import2
 D2/3:   ? helli
 D2/3:   ? testvascii_import
 D2/3:   ? testvascii_import2
 D2/3: load_table_head(): tab = 2, C:\gisdata\grassdata/nc_sp
 m_08/user1/dbf//testvascii_import2.dbf
 D3/3: Doing SQL command <3> on DBF table... (see
 include/sqlp.h)
 D2/3: load_table(): tab = 2
 D2/3: Commit transaction
 D2/3: save_table 0
 D2/3: save_table 1
 D2/3: save_table 2
 D2/3: Write table to tempfile:
 'C:\gisdata\grassdata/nc_spm_08/user1/.tmp/6896.dbf'
 D2/3: Write 71 rows
 D2/3: Written 71 records
 Fülle Tabelle...
 ERROR: Konnte Attributetabelle nicht schliessen. Der DBMI-Treiber hat
 nicht alle Attribute akzeptiert.
 }}}

 Helmut

-- 
Ticket URL: <http://trac.osgeo.org/grass/ticket/1159#comment:1>
GRASS GIS <http://grass.osgeo.org>



More information about the grass-dev mailing list