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

Memcached cluster can lead to inconsistency if one server fails

    XMLWordPrintable

Details

    • MOODLE_29_STABLE

    Description

      Assuming you have 3 load-balanced servers configured (server_a, server_b and server_c), each running a local memcached server and the memcached configuration is:

      Servers: localhost
      Enable clustered servers: Yes
      Set Servers: server_a, server_b, server_c (each on one line)

      If the memcached instance dies on server_b, then it will silently fall back on using 'file' caching. This means that:
      1. Any cache updates written on server_b will not be propagated to the other servers (as the memcached plugin code to update all the servers will not be reached - the memcached plugin will already have bailed out)
      2. Any cache updates written on server_a or server_c will not be propagated to server_b.

      I'm not sure if there is any solution to this issue, but it could lead to some problematic inconsistencies between the different servers.

      Attachments

        Activity

          People

            Unassigned Unassigned
            davosmith Davo Smith
            Matteo Scaramuccia, David Woloszyn, Huong Nguyen, Jake Dallimore, Meirza, Michael Hawkins, Raquel Ortega, Safat Shahin, Stevani Andolo
            Votes:
            3 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: