Problem/Motivation
Past issues in pagedesigner caused malformed data in elements. These prevent reporting proper status about published sections and can be spread by copying malformed elements. This issue should provide reliable and predictable cleanup using the debugger sub module which can be run using drush or as a service. Some cleanup may be run directly in update_hooks of pagedesigner or a sub module.
Proposed resolution
Provide and optimize a debugger routine to be run on any installation with the goal to rectify any malformed data in the elements. The approach taken will be conservative. This means, data is rather preserved than deleted if the state is not clearly determined (e.g. if an element is attached to a pagedesignertree but marked as deleted, it will be restored).
The routine might also make non-essential changes to simplify the data model, e.g. removing orphaned elements or reduce the number of container elements per node and field to one on multilingual pages. This will standardize the data and enable further enhancements.
There are possible states that might need human intervention, e.g. if the same element is in multiple trees and a predictable action can not be taken. The routine will report those cases.
Remaining tasks
- Enhance the existing debugger to apply unpublished nodes
- Optimize the run time and memory consumption
- Provide a clear interface for running it using drush or as a service
User interface changes
None
API changes
- Adds a new interface to request and perform debugging operations using drush or as a service
Data model changes
- Malformed data is rectified (e.g. entity, parent, container, status, delete status)
- Elements marked as deleted but in a tree are restored
- Duplicate container per language are simplifed into on translated container
- Orphaned elements are removed
Issue fork pagedesigner-3352372
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
- 3352372-resolve-issues-in
changes, plain diff MR !55
Comments
Comment #2
pvbergen commentedComment #3
pvbergen commentedComment #4
pvbergen commentedComment #6
pvbergen commentedComment #8
pvbergen commentedComment #10
pvbergen commented