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

Memcached cluster can lead to inconsistency if one server fails

    XMLWordPrintable

    Details

    • Affected Branches:
      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

            Assignee:
            Unassigned Unassigned
            Reporter:
            davosmith Davo Smith
            Participants:
            Component watchers:
            Matteo Scaramuccia, Amaia Anabitarte, Carlos Escobedo, Ferran Recio, Ilya Tregubov, Sara Arjona (@sarjona)
            Votes:
            3 Vote for this issue
            Watchers:
            4 Start watching this issue

              Dates

              Created:
              Updated: