[GRASSLIST:9273] DBMI errors after QGIS+GRASS crash

Greetings.

I was editing a GRASS vector layer in QGIS, specifically the attribute table-
which stored in MySQL. Everything was working fine, until I tried to access
the same vector layer in the GRASS shell. An error was returned regarding
something about the header missing some this vector, and QGIS suddenly quit.
Afterwards, any time i try and access the attributes for this vector via
GRASS I get:
echo "select * from merged_dupes" | db.select
dbmi: Protocol error

...despite the fact that all of the data is still in MySQL, and the table
checks out OK. I have re-issued the db.connect, and v.db.connect commands in
hopes that that would fix the connection.

Also- now when i try and start QGIS from within this mapset and load the
trouble vector layer, QGIS quits with a "dbmi ERROR".

I have tried replacing my mapset with a known working copy, but that refuses
to work as well. Trying to copy the trouble vector results in a DBMI error as
well.

Any ideas??

--
Dylan Beaudette
Soils and Biogeochemistry Graduate Group
University of California at Davis
530.754.7341

On Friday 02 December 2005 11:24 am, Dylan Beaudette wrote:

Greetings.

I was editing a GRASS vector layer in QGIS, specifically the attribute
table- which stored in MySQL. Everything was working fine, until I tried to
access the same vector layer in the GRASS shell. An error was returned
regarding something about the header missing some this vector, and QGIS
suddenly quit. Afterwards, any time i try and access the attributes for
this vector via GRASS I get:
echo "select * from merged_dupes" | db.select
dbmi: Protocol error

...despite the fact that all of the data is still in MySQL, and the table
checks out OK. I have re-issued the db.connect, and v.db.connect commands
in hopes that that would fix the connection.

Also- now when i try and start QGIS from within this mapset and load the
trouble vector layer, QGIS quits with a "dbmi ERROR".

I have tried replacing my mapset with a known working copy, but that
refuses to work as well. Trying to copy the trouble vector results in a
DBMI error as well.

Any ideas??

Replying to my own message...

After some testing, a pattern seems to be emerging.

1. vector_a + table_a in MySQL ----> QGIS crashes when loading vector_a

2. vector_a + (no table) ----> QGIS loads vector_a without issue

3. vector_a + table_b in MySQL ----> QGIS loads vector_a without issue

4. vector_b + table_a in MySQL ---->QGIS crashes when loading vector_a

somehow anything connected to table_a in MySQL causes QGIS to crash when
loading the vector connected to this table. In addition, a vector connected
with a 'problem' table in QGIS will break certain GRASS vector commands that
work on the attribute table- Dying with a 'DBMI cursor' error.

Here is an example error reported by GRASS, when trying to use g.copy with a
vector connected to a 'problem' table stored in MySQL:

#connecting vector to the 'problem' table:
v.db.connect -o map=gradgroup_spring05 driver=mysql
database="host=localhost,dbname=test" table=gradgroup_spring05 key=cat

#trying to copy the vector:
COPY [gradgroup_spring05@PERMANENT] to current mapset as [fff]
dbmi: Protocol error
WARNING: Cannot open select cursor: 'select * from gradgroup_spring05'

Also: the tables in MySQL (both working and 'problem' ones) appear to be fine.
There are no telling messages in the mysql.log either.

Thoughts ?

--
Dylan Beaudette
Soils and Biogeochemistry Graduate Group
University of California at Davis
530.754.7341