    # File lib/active_support/vendor/memcache-client-1.6.5/memcache.rb, line 316
      def add(key, value, expiry = 0, raw = false)
        raise MemCacheError, "Update of readonly cache" if @readonly
        with_server(key) do |server, cache_key|
          value = Marshal.dump value unless raw
          logger.debug { "ADD #{key} to #{server}: #{value ? value.to_s.size : 'nil'}" } if logger
          command = "add #{cache_key} 0 #{expiry} #{value.to_s.size}\r\n#{value}\r\n"

          with_socket_management(server) do |socket|
            socket.write command
            result = socket.gets
            raise_on_error_response! result
            result
          end
        end
      end