archesproject / arches

Arches is a web platform for creating, managing, & visualizing geospatial data. Arches was inspired by the needs of the Cultural Heritage community, particularly the widespread need of organizations to build & manage cultural heritage inventories
GNU Affero General Public License v3.0
210 stars 139 forks source link

If parts of a graph were developed by adding branches to it, then that graph is tied to those branches. This causes an issue when sharing graphs with others. #10908

Open apeters opened 2 months ago

apeters commented 2 months ago

Here's the problem: If a graph is created and a branch was added to that graph from the branch editor (using the "Add Branch" button)

Screenshot 2024-05-10 at 5 00 05 PM

then that graph becomes linked with that branch via the sourcebranchpublication_id value on the node. As long as I have that branch in my system, then reimporting the graph is not an issue. If, however, I delete that branch and then try to reimport the graph, I get this error:

django.db.utils.IntegrityError: insert or update on table "nodes" violates foreign key constraint "nodes_sourcebranchpublicat_dc224e58_fk_graphs_x_"
DETAIL:  Key (sourcebranchpublicationid)=(f520509e-0f0f-11ef-9a87-faffc210b420) is not present in table "graphs_x_published_graphs"

You also get the same error if you try to share that graph with someone else and they don't have that branch either.

bferguso commented 2 months ago

This was what I was referring to in this issue as well: #9466