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

Container_builder and Container don't use the same cache_dir when cache dir is overridden via env parameter

    Details

    • Type: Bug
    • Status: Open (View Workflow)
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 3.2.8
    • Fix Version/s: None
    • Component/s: Caching (ACM)
    • Labels:

      Description

      The container_builder allows for the cache directory to be overridden by $SERVER['PHPBB____core__cache_dir']. This is because get_core_parameters wants it values to be extended and overwritten by get_env_parameters, which will read PHPBB__ keys from $_SERVER.

      So we can set a custom cache directory via:

      ```
      $_SERVER['PHPBB____core__cache_dir'] = '/some/path';
      ```

      When the container is built (via get_container) the application will use our supplied cache directory, but, the container_builder will create the autoloader and container cache files in phpbb_root_path/cache/<env>. This seems like inconsistent behavior. It would be more consistent if the container_builder would also use the overwritten cache_dir.

      This also solves/relates to tickets the following tickets PHPBB3-15649, PHPBB3-10113, PHPBB3-9610 and PHPBB3-10398, and maybe more.

      I've attached a test file which demonstrates the buggy behavior, and contains a (skipped) test for the desired behavior.

      The Pull Request for this fix can be found here: https://github.com/phpbb/phpbb/pull/5707

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              j-angnoe j-angnoe
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: