hootenanny icon indicating copy to clipboard operation
hootenanny copied to clipboard

Add a filtered delete for the Cut & Replace (changeset replacement) workflow

Open brianhatchl opened this issue 2 years ago • 3 comments

In the scenario where a road network is being cut & replaced, other relations often have dependencies on these features. In the scenario where two input datasets are both filtered to only include roads, Hoot doesn't know anything about these "external" relation dependencies in order to update them (by removing or replacing the member reference). This leads to failed changeset uploads because of conflict the remaining relation references still exist.

It's proposed that these conflicts can be avoided if all the reference data for an AOI is pulled, but in the cut phase, only the filtered features would be removed. Then Hoot would have the awareness to clean up any relation references to the deleted features.

brianhatchl avatar May 13 '22 17:05 brianhatchl

I have a branch https://github.com/ngageoint/hootenanny/tree/5339_filtered_cut_replace where I've added incomplete parents (mostly relations) to the reference pull. This should make them available to hoot for removing the member ref when the "cut" features are deleted. but currently the derive changeset logic seems to delete incomplete relations entirely from the reference data.

We will have to consider the impact of just removing the deleted member ref instead I think.

brianhatchl avatar May 24 '22 16:05 brianhatchl

@bmarchant @mschicker Can we put our :brain: together and see if the incomplete relation behavior can be changed?

brianhatchl avatar May 31 '22 19:05 brianhatchl

@mattjdnv you too

brianhatchl avatar Jun 08 '22 13:06 brianhatchl