[GRASS-dev] [GRASS GIS] #966: wx attribute table manger fails on
wingrass with >188 dbf tables
GRASS GIS
trac at osgeo.org
Fri Feb 26 02:22:25 EST 2010
#966: wx attribute table manger fails on wingrass with >188 dbf tables
----------------------+-----------------------------------------------------
Reporter: hamish | Owner: grass-dev at lists.osgeo.org
Type: defect | Status: new
Priority: normal | Milestone: 6.4.0
Component: wxGUI | Version: svn-releasebranch64
Keywords: wingrass | Platform: MSWindows XP
Cpu: x86-32 |
----------------------+-----------------------------------------------------
Hi,
as reported to the -users ML:
http://n2.nabble.com/Bug-or-my-fault-td4609390.html
On latest nightly builds of 6.4.0svn WinGrass if you have a mapset with
>188 dbf tables you get an error when you try to edit in the attribute
table gui.
I can reproduce this on Windows XP (spaces in both $GISBASE and $GISDBASE)
but not on Linux (no spaces in path names). But I get an error, no
infinite loop.
- create a new mapset called eg test255
- at the msys prompt create a bunch of maps:
{{{
for i in `seq 350` ; do
v.random out=test_$i column=rand_01 zmax=1
done
}}}
- test with `v.db.select test_262`
- add map to Layer Manager, query it, no problem.
- right click on map name in layer manager, edit attributes.
- attribute manager opens
- right click on an entry, edit it, and click Submit.
- you get a popup error window:
{{{
__Error in command execution db.execute__
Execution failed: 'db.execute
input=c:\docume~1\hamish\locals~1\temp\tmprnzmdi driver=dbf
database=C:\Documents and
Settings\Hamish\grassdata/spearfish60/user255/dbf/'
Details:
Error:
[Ok]
}}}
and in the layer manager Output tab:
{{{
Traceback ...
File "c:\Program
Files\GRASS-64-SVN\etc\wxpython\gui_modules\dbm.py", line
1425, in OnDataItemEdit
self.ApplyCommands()
File "...\dbm.py", line 1783, in ApplyCommands
gcmd.Command(cmd)
File "...\gcmd.py", line 356, in __init__
_("Error: ") + self.GetError()))
gui_modules.gcmd
.
CmdError
}}}
If I run db.execute directly from the msys prompt it works ok:
{{{
echo "UPDATE test_285 SET rand_01=0.999 WHERE cat=12" | db.execute
v.db.select test_285
}}}
Hamish
--
Ticket URL: <https://trac.osgeo.org/grass/ticket/966>
GRASS GIS <http://grass.osgeo.org>
More information about the grass-dev
mailing list