Uploaded image for project: '[Read Only] - Hippo Repository'
  1. [Read Only] - Hippo Repository
  2. REPO-1664

Forced cleanup and removal of obsolete nodetype definitions - part one

    XMLWordPrintable

Details

    • Improvement
    • Status: Closed
    • Blocker
    • Resolution: Fixed
    • None
    • 5.0.0
    • None
    • None
    • Platform Sprint 157: Finish, Platform159:Post-bang/Pre-beta, Platform160:BETA!

    Description

      For CMS v12 there are several standard hippo nodetypes (in hipposys, hippostd, hst, etc.) which either are obsolete or have obsolete property/child definitions.
      Furthermore, some are too generic (e.g. allow/use nt:unstructured) and/or enable SNS usages while they are not, or should not, be used, anymore.

      Cleanup of such obsolete or undesired nodetype definitions isn't trivial and hence not allow by Jackrabbit directly. Which is understandable as there might be existing usages of such nodetype definitions in the repository (nodes, properties) which would break when removed.

      However, within some limitations, and with proper checks (querying for such existing usages), and when and where needed runtime fixes (changing/removing existing usages), such cleanup technically can be enforced and executed.

      This requires however very strict control and execution, and will not be a generic solution to be used repeatedly, but instead a 'one-off' internal-only fix and cleanup to be done only for the upgrade from v11.2 to v12.0.

      The implementation also will only be done within the hippo-repository engine itself, not provide 'extension points'. Therefore all intended cleanup and fixes will be implemented and tied to this one issue.

      The check if/when the nodetypes cleanup will be done will be based on the still presence of a (one) specific obsolete nodetype to be deleted, for which there are several candidates, like:

      • hipposys:types (deprecated since REPO-841, v7.9)
      • hipposys:ocmquery, hipposys:ocmqueryfolder (deprecated since REPO-699, v7.9)

      Only, and only when one of these nodetypes are still present during (pre) startup, the cleanup operation will be started, and (only) when completed these remaining nodetypes will be removed, as well. Thereby ensuring the cleanup only will be done during upgrade, once.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              adouma Ate Douma (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: