qgis / QGIS

QGIS is a free, open source, cross platform (lin/win/mac) geographical information system (GIS)
https://qgis.org
GNU General Public License v2.0
10.04k stars 2.92k forks source link

GRASS 7 digitising bug 'Could not Commit changes' #27104

Open qgib opened 6 years ago

qgib commented 6 years ago

Author Name: Chris Kahler (@ChrisKahler) Original Redmine Issue: 19276 Affected QGIS version: 3.5(master) Redmine category:grass


Hi, I'm not able to consistently edit either new GRASS polygon layers or existing ones in QGIS 3.2. This problem has persisted for a few versions of QGIS going back into the later version 2 releases. The error message always includes the text "Geometry type is not compatible with the current layer". It seems as though QGIS is not able to distinguish between boundary and line layers in GRASS. Note that even standalone versions of GRASS 7 (last release tested was 7.4.1) are not stable when digitising and GRASS usually crashes when entering digitising mode. Digitising and editing vectors topologically has always been an attribute of GRASS that I've valued - this function has been broken or buggy for more than a year now in both GRASS releases and QGIS releases. Able to provide link to screen capture while experiencing this error Regards, CK

qgib commented 6 years ago

Author Name: Chris Kahler (@ChrisKahler)


qgib commented 6 years ago

Author Name: Giovanni Manghi (@gioman)


What is the last version where you were able to edit/digitize GRASS vectors?

Have you tested if this problem is platform specific?


qgib commented 6 years ago

Author Name: Jürgen Fischer (@jef-n)


qgib commented 6 years ago

Author Name: Chris Kahler (@ChrisKahler)


Hi Giovanni, 1) hard to be sure when GRASS digitising last worked well, however, I can say I used '2.8.2-Wien' in December 2015 to create a vector map from scratch with no real problems. From memory, this version used a GRASS digitising tool set borrowed directly from GRASS (that is, before GRASS was integrated with QGIS native vector edit tools). The GRASS toolset wasn't as capable as the modern QGIS editing toolset is, however, it worked as expected on GRASS vectors. From memory this was with GRASS 6 versions. Problems started when GRASS digitising tools were done away with and GRASS began to be integrated with QGIS edit tools. This is one of a number of issues I've had attempting to edit vectors in GRASS using the native QGIS tools. Others, which may be related include i) not being able to delete centroids in edit mode and ii) inconsistent behaviour of node edit tool (QGIS 3.2).

2) I can't test on other platforms unfortunately. I have seen Underdark's (Anita Graser) video editing using GRASS vector layers in QGIS 3.1 and it seemed to work for her. Not sure what system she uses.

qgib commented 6 years ago

Author Name: Giovanni Manghi (@gioman)


Chris Kahler wrote:

Hi Giovanni, 1) hard to be sure when GRASS digitising last worked well, however, I can say I used '2.8.2-Wien' in December 2015 to create a vector map from scratch with no real problems. From memory, this version used a GRASS digitising tool set borrowed directly from GRASS (that is, before GRASS was integrated with QGIS native vector edit tools). The GRASS toolset wasn't as capable as the modern QGIS editing toolset is, however, it worked as expected on GRASS vectors. From memory this was with GRASS 6 versions. Problems started when GRASS digitising tools were done away with and GRASS began to be integrated with QGIS edit tools. This is one of a number of issues I've had attempting to edit vectors in GRASS using the native QGIS tools. Others, which may be related include i) not being able to delete centroids in edit mode and ii) inconsistent behaviour of node edit tool (QGIS 3.2).

2) I can't test on other platforms unfortunately. I have seen Underdark's (Anita Graser) video editing using GRASS vector layers in QGIS 3.1 and it seemed to work for her. Not sure what system she uses.

I'm almost sure Anita uses Windows. Can you point me to such video? thanks.

qgib commented 6 years ago

Author Name: Chris Kahler (@ChrisKahler)


My mistake, not Underdark. URL here: https://youtu.be/AubBmm3kL2E "QGIS GRASS Plugin - editing of multiple layers" by Radim Blazek.

qgib commented 6 years ago

Author Name: Chris Kahler (@ChrisKahler)


A video of the issue while editing GRASS layer on my system: https://www.youtube.com/watch?v=elnprq7_bqk

qgib commented 6 years ago

Author Name: Giovanni Manghi (@gioman)


Chris Kahler wrote:

A video of the issue while editing GRASS layer on my system: https://www.youtube.com/watch?v=elnprq7_bqk

does it work as expected on 2.18?

qgib commented 5 years ago

Author Name: Chris Kahler (@ChrisKahler)


Hi Giovanni, apologies for absence, I've been on leave: no, it didn't work reliably on version 2.18 either.

qgib commented 5 years ago

Author Name: Chris Kahler (@ChrisKahler)


Example video of GRASS bug in QGIS2.18 here (https://youtu.be/jFOLtx5qsog). Results in the error 'Geometry type Linestring not compatible with provider type Polygon' when attempting to digitise in GRASS.

qgib commented 5 years ago

Author Name: Chris Kahler (@ChrisKahler)


I recently tested QGIS 2.8.9 with GRASS 6.4 on a Windows XP virtual machine on mac. All edit tools worked without the problems given above (although it would crash on exiting edit mode). I installed QGI 2.8.1 on my mac (the only 2.8 version I could find for mac)and had some luck although GRASS couldn't find it's modules (eg. v.build). Existing GRASS vectors could be edited to a point although cleaning and other functions weren't available due to the module problem. With the ongoing integration of GRASS into QGIS and the development of GRASS from version 6 to 7 I suppose the cause of these problems will be hard to track down.

Editing vectors with the digitiser is such an elementary function it's surprising it no longer works.

qgib commented 5 years ago

Author Name: Giovanni Manghi (@gioman)


Editing vectors with the digitiser is such an elementary function it's surprising it no longer works.

editing GRASS vectors is all but an obvious task, both for users as also for developers (because of the GRASS vector data model). The work on 2.* was done basically by 1 developer (a GRASS/QGIS developer), but I haven't seen him very active on the QGIS 3 development front. If this is a functionality (editing/digitizing GRASS vectors in QGIS 3) you need evaluate the possibility to support the fix for this specific data source.


qgib commented 5 years ago

Author Name: Chris Kahler (@ChrisKahler)


Thanks Giovanni, good suggestion. I've just checked the QGIS3 webpage to see if I can support a fix - no luck. Do I need to contact developers directly? If not how can I support a fix for this issue?

qgib commented 5 years ago

Author Name: Chris Kahler (@ChrisKahler)


A solution of sorts: after trial and error checking with previous versions of GQIS, I found 2.14.8-1 to work consistently when digitising in GRASS. All GRASS (apparently version 6) modules appear to be available.

qgib commented 5 years ago

Author Name: Giovanni Manghi (@gioman)


Chris Kahler wrote:

A solution of sorts: after trial and error checking with previous versions of GQIS, I found 2.14.8-1 to work consistently when digitising in GRASS. All GRASS (apparently version 6) modules appear to be available.

this is expected: the major overhaul of GRASS digitizing tools was done for QGIS 2.14 LTR

qgib commented 5 years ago

Author Name: Giovanni Manghi (@gioman)


Chris Kahler wrote:

Thanks Giovanni, good suggestion. I've just checked the QGIS3 webpage to see if I can support a fix - no luck. Do I need to contact developers directly? If not how can I support a fix for this issue?

raise your question in the developers mailing list, thanks!

qgib commented 5 years ago

Author Name: Loïc BARTOLETTI (@lbartoletti)


Tested and confirmed on Windows and FreeBSD on master, 3.4 with Grass 7.4 and 7.6


qgib commented 5 years ago

Author Name: Giovanni Manghi (@gioman)


Pedro-Murteira commented 2 years ago

@ChrisKahler is this issue still valid on more recent releases?

lbartoletti commented 2 years ago

@Pedro-Murteira Not tested, but I think it's still valid since it was not fixed recently and proposed to be removed.

gioman commented 2 years ago

@Pedro-Murteira Not tested, but I think it's still valid since it was not fixed recently and proposed to be removed.

@lbartoletti GRASS plugin (and GRASS digitizing) is unmaintained and likely to be removed. The GRASS provider will stay, to allow continue read GRASS locations/mapsets. At this stage there is no point in testing tickets about the GRASS plugin and related functionalities @Pedro-Murteira