Uploaded image for project: 'phpBB3'
  1. phpBB3
  2. PHPBB3-14266

Migrator permission tool is unable to scale

    Details

    • Type: Bug
    • Status: Open (View Workflow)
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 3.1.6
    • Fix Version/s: 3.1.13-RC1
    • Component/s: Extensions
    • Labels:
      None

      Description

      The migrator permission tool cannot scale well in its current state. Its usage of phpbb\auth\auth's acl_clear_prefetch method in every call to its add, remove, permission_set, permission_unset, and role_remove methods results in terrible performance. For larger extensions such as Titania where the largest migration has ~100 total calls to the permission tool's methods it easily takes more than 5 minutes to install the extension. Removing the calls to acl_clear_prefetch clears the bottleneck resulting in an instant installation.

      The method takes care of clearing the entire user base's permission cache in the users table and rebuilding the role cache. This should be done with a single call after running the migration set.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              prototech prototech [X] (Inactive)
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: