Bug report #13490

PostGIS: Merge drops dataset whereas split retains it

Added by Bernhard Ströbl about 4 years ago. Updated 8 months ago.

Status:Closed
Priority:Normal
Assignee:-
Category:Vectors
Affected QGIS version:2.10.1 Regression?:No
Operating System: Easy fix?:No
Pull Request or Patch supplied:No Resolution:end of life
Crashes QGIS or corrupts data:No Copied to github as #:21535

Description

When digitizing in a PostGIS layer and
  1. splitting a feature in two new features, the database receives an UPDATE and an INSERT statement - OK
  2. merging two features together, the database receives two DELETE and one INSERT statement. I would expect one DELETE and one UPDATE statment. Thus you could retain the primary key of a feature which is crucial if other tables have a foreign key constraint on the table being edited.

History

#1 Updated by Jürgen Fischer about 4 years ago

  • Category changed from Data Provider to Vectors
  • Status changed from Open to Feedback

I don't think this is a bug, but it's not a provider issue. The algorithm merges the two features, deletes them and insert a new one. Both could have relations and we don't have a way/feature to choose which one of the two should survive.

#2 Updated by Bernhard Ströbl about 4 years ago

Jürgen Fischer wrote:

I don't think this is a bug, but it's not a provider issue. The algorithm merges the two features, deletes them and insert a new one.

I did not really know where to put it, so the algorithm is supposed to be changed then. If merge is regarded being the opposite of split, the two should behave similar.

Both could have relations and we don't have a way/feature to choose which one of the two should survive.

Oh, there is a way already implemented: When you merge features a dialog opens where you can decide which attribute set you want in the new feature. So if you decide for one of the two pk values that would be the one to be updated.

#3 Updated by Bernhard Ströbl about 4 years ago

  • Crashes QGIS or corrupts data changed from No to Yes

Jürgen, would it be hard to implement this for data providers which must have a primary key field?

#4 Updated by Giovanni Manghi about 4 years ago

  • Operating System deleted (any)

#5 Updated by Giovanni Manghi almost 4 years ago

  • Status changed from Feedback to Open

#6 Updated by Bernhard Ströbl almost 4 years ago

Just for the record:
Until this is fixed in QGIS I implemented the functionality in Digitizing tools

#7 Updated by Sandro Santilli over 3 years ago

  • Crashes QGIS or corrupts data changed from Yes to No

I don't think we can call this bug to cause a "corruption". It's an editing operation, just doesn't behave as the user is expecting.

#8 Updated by Bernhard Ströbl over 3 years ago

Sandro Santilli wrote:

I don't think we can call this bug to cause a "corruption". It's an editing operation, just doesn't behave as the user is expecting.

The corruption comes from foreign key constraints defined with ON DELETE CASCADE => related datasets in other tables are thus deleted! If you defined them ON DELETE RESTRICT you would not be able to merge at all.

#9 Updated by Giovanni Manghi over 2 years ago

  • Regression? set to No
  • Easy fix? set to No

#10 Updated by Giovanni Manghi 8 months ago

  • Resolution set to end of life
  • Status changed from Open to Closed

End of life notice: QGIS 2.18 LTR

Source:
http://blog.qgis.org/2019/03/09/end-of-life-notice-qgis-2-18-ltr/

QGIS 3.4 has recently become our new Long Term Release (LTR) version. This is a major step in our history – a long term release version based on the massive updates, library upgrades and improvements that we carried out in the course of the 2.x to 3x upgrade cycle.

We strongly encourage all users who are currently using QGIS 2.18 LTR as their preferred QGIS release to migrate to QGIS 3.4. This new LTR version will receive regular bugfixes for at least one year. It also includes hundreds of new functions, usability improvements, bugfixes, and other goodies. See the relevant changelogs for a good sampling of all the new features that have gone into version 3.4

Most plugins have been either migrated or incorporated into the core QGIS code base.

We strongly discourage the continued use of QGIS 2.18 LTR as it is now officially unsupported, which means we’ll not provide any bug fix releases for it.

You should also note that we intend to close all bug tickets referring to the now obsolete LTR version. Original reporters will receive a notification of the ticket closure and are encouraged to check whether the issue persists in the new LTR, in which case they should reopen the ticket.

If you would like to better understand the QGIS release roadmap, check out our roadmap page! It outlines the schedule for upcoming releases and will help you plan your deployment of QGIS into an operational environment.

The development of QGIS 3.4 LTR has been made possible by the work of hundreds of volunteers, by the investments of companies, professionals, and administrations, and by continuous donations and financial support from many of you. We sincerely thank you all and encourage you to collaborate and support the project even more, for the long term improvement and sustainability of the QGIS project.

Also available in: Atom PDF