Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-43033

Newly created category does not appear when memcached cachestore is used

    XMLWordPrintable

    Details

    • Database:
      MySQL
    • Testing Instructions:
      Hide

      Step 1: Run unit tests.

      Step 2: Attempt to reproduce with memcache.

      1. Set up as required for php+memcache
      2. Log in as an admin
      3. Browse to cache config
      4. Create a new memcache store
      5. Edit the stores used when no mapping is present
      6. Set the application cache to your newly created memcache store.
      7. Save changes
      8. Browse to the course category management interface.
      9. Add a top level category
      10. Check the following:
        • When the page loads after adding the category you immediately see the category.
        • Find the eventinvalidation cache stats box and check you see cachestore_file in there.
      11. Repeat with memcached

      Step 3: Attempt to delete a course.

      1. Set up as required for php+memcache
      2. Log in as an admin
      3. Browse to cache config
      4. Create a new memcache store
      5. Edit the stores used when no mapping is present
      6. Set the application cache to your newly created memcache store.
      7. Save changes
      8. Browse to the course category management interface.
      9. Add a course
      10. Browse back to the course category management interface and to the category you added the course to.
      11. Check that you see the course.
      12. Delete the course.
      13. Check when the deletion is complete that you don't see the course in the management interface and that you didn't get any errors.

      Step 4: Test install and upgrade.

      1. Upgrade a 2.5 site to 2.6/master
      2. Perform a fresh install
      Show
      Step 1: Run unit tests. Step 2: Attempt to reproduce with memcache. Set up as required for php+memcache Log in as an admin Browse to cache config Create a new memcache store Edit the stores used when no mapping is present Set the application cache to your newly created memcache store. Save changes Browse to the course category management interface. Add a top level category Check the following: When the page loads after adding the category you immediately see the category. Find the eventinvalidation cache stats box and check you see cachestore_file in there. Repeat with memcached Step 3: Attempt to delete a course. Set up as required for php+memcache Log in as an admin Browse to cache config Create a new memcache store Edit the stores used when no mapping is present Set the application cache to your newly created memcache store. Save changes Browse to the course category management interface. Add a course Browse back to the course category management interface and to the category you added the course to. Check that you see the course. Delete the course. Check when the deletion is complete that you don't see the course in the management interface and that you didn't get any errors. Step 4: Test install and upgrade. Upgrade a 2.5 site to 2.6/master Perform a fresh install
    • Affected Branches:
      MOODLE_24_STABLE, MOODLE_25_STABLE, MOODLE_26_STABLE
    • Fixed Branches:
      MOODLE_24_STABLE, MOODLE_25_STABLE, MOODLE_26_STABLE
    • Pull Master Branch:
      43033-27
    • Pull Master Diff URL:

      Description

      To reproduce with Moodle 2.6 latest weekly build:

      • add a memcache store instance (either memcached or memcache)
      • map Application to it
      • save the config
      • click on Site Administration - > Manage courses and categories
      • in the Course and category management page click on 'Create new category'
      • edit category and save it
      • the page 'Course and category management' does not show the newly created category

      If memcache store is disabled (just remapping 'Application' to default store) the newly created category with the above described procedure appears correclty

      Test has been done using both memcache and memcached cache store with local memcached daemon (127.0.0.1) or networked memcached deaemon running on a memcache server. In all cases the problem is reproducible.

      Workaround: purge caches

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Fix Release Date:
                  13/Jan/14