Opened 14 years ago
Closed 12 years ago
#1328 closed defect (fixed)
v.in.ogr: bogus table connection created when input Shapefile has spaces in it's name
Reported by: | msieczka | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | 6.4.4 |
Component: | Vector | Version: | svn-releasebranch64 |
Keywords: | Cc: | ||
CPU: | All | Platform: | All |
Description
Debian, releasebranch_6_4 r45717.
Import the attached "a a.shp":
$ v.in.ogr dsn=a\ a.shp output=b
Try some operation on it - e.g:
$ v.info -c b Displaying column types/names for database connection of layer 1: DBMI-DBF driver error: Cannot create dbf database: cat /home/grassdata/spearfish60/PERMANENT/dbf/ ERROR: Unable to open database <cat /home/grassdata/spearfish60/PERMANENT/dbf/> by driver <d
That's because the table link is bogus:
$ v.db.connect -p b Vector map <b@PERMANENT> is connected by: layer <1> table <a> in database <cat /home/grassdata/spearfish60/PERMANENT/dbf/> through driver <dbf> with key <b>
which should rather be:
layer <1> table <b> in database </home/grassdata/spearfish60/PERMANENT/dbf/> through driver <dbf> with key <cat>
The respective dbln file contains:
1/a a b cat $GISDBASE/$LOCATION_NAME/$MAPSET/dbf/ dbf
(Mind the "a a" above, derived from input Shapefile layer name.)
Does GRASS allow spaces in layer names? If so, maybe use a different separator in dbln's?
Attachments (1)
Change History (6)
by , 14 years ago
follow-up: 2 comment:1 by , 13 years ago
follow-up: 3 comment:2 by , 12 years ago
Milestone: | 6.4.1 → 6.4.4 |
---|
follow-up: 4 comment:3 by , 12 years ago
Replying to neteler:
Replying to hamish:
see #809.
the dbln file field sep in grass7 has been changed to '|' from space.
Since we cannot change the dbln format in GRASS 6, this looks like "wontfix".
Fixed in 6.5 r52755 by replacing whitespace with underscore in the GRASS layer name. Works for me with shapefiles with whitespace in the name. Backport to 6.4?
Markus M
comment:4 by , 12 years ago
Replying to mmetz:
Replying to neteler:
Replying to hamish:
see #809.
the dbln file field sep in grass7 has been changed to '|' from space.
Since we cannot change the dbln format in GRASS 6, this looks like "wontfix".
Fixed in 6.5 r52755 by replacing whitespace with underscore in the GRASS layer name. Works for me with shapefiles with whitespace in the name. Backport to 6.4?
Whitespace support in OGR dsn and OGR layer names has been backported to 6.4 in r52765.
Markus M
see #809.
the dbln file field sep in grass7 has been changed to '|' from space.
Hamish