'Updates the entry in the cache
Args:
sequence
key
value (dict): The value to update the cache with.
full (bool): Whether the given value is the full dict, or just a
partial subset there of. If not full then any existing entries
for the key will be updated.
known_absent (set): Set of keys that we know don\'t exist in the full
dict.'

def update(self, sequence, key, value, full=False, known_absent=None):

    self.check_thread()
    if (self.sequence == sequence):
        if (known_absent is None):
            known_absent = set()
        if full:
            self._insert(key, value, known_absent)
        else:
            self._update_or_insert(key, value, known_absent)
