While we currently implement
onDependencyRemoval() for the index entity to react properly when its server is removed, we currently don't make any attempts to "save the situation" (i.e., remove the dependency instead of deleting the index) when a plugin's dependency is removed, which is bound to be very annoying when it happens (you delete a view mode or disable a module and suddenly your search index, view and facet configuration are all gone).
E.g., some of the following might happen:
- An entity type that the index indexes is removed.
- A view mode used by the "Rendered item" processor gets removed. (At least once is resolved.)
A module providing a processor is uninstalled.
We should probably do two things:
- Have some kind of
onDependencyRemoval()method for plugins as well and call that from the index's implementation of the method.
- If that doesn't work for some plugin, just remove the plugin and not the complete index.
Estimated Value and Story Points
This issue was identified as a Beta Blocker for Drupal 8. We sat down and figured out the value proposition and amount of work (story points) for this issue.
Value and Story points are in the scale of fibonacci. Our minimum is 1, our maximum is 21. The higher, the more value or work a certain issue has.
Value : 5
Story Points: 8