Uploaded image for project: 'A/B Testing'
  1. A/B Testing
  2. ABTEST-436

Magnolia cache prevents ABn testing filter from seeing requests

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Neutral Neutral
    • 1.0
    • None
    • None

      Steps to reproduce

      1.  Create and run an ABn test for travel/about.html.
      2.  Repeatedly request that page via curl (curl -v http://localhost:8080/magnoliaPublic/travel/about.html)

      Expected results

      Every request is handled by ABTestingFilter#doFilter

      Actual results

      Only the first request is handled by ABTestingFilter#doFilter

      Workaround

      Add a config.modules.cache.config.contentCaching.defaultPageCache.cachePolicy.shouldBypassVoters.urls.excludes.travel.yaml excluding the page URL from caching

      Development notes

      • This PR adds logging ABTestingFilter#doFilter, which simplifies observing expected and actual results.
      • One approach to solving this could be to exclude requests from the cache that have the X-Header (from ABTEST-430) set. For this we would need to add a cache policy based on info.magnolia.voting.voters.RequestParameterVoter
      • An alternative approach is to disable caching of pages under test via a TTL voter similar to how this is done in the personalisation module with info.magnolia.personalization.cache.PersonalizedContentTtlVoter.

        Acceptance criteria

              chuong.doan Chuong Doan Huy
              mduerig Michael Duerig
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Bug DoR
                  Task DoD