diff options
| author | LV-426 <lv-426@taproot.org.il> | 2015-04-13 15:59:49 +0300 |
|---|---|---|
| committer | LV-426 <lv-426@taproot.org.il> | 2015-04-13 15:59:49 +0300 |
| commit | c182078bfd033f90b82a98d9087fb31778ca59dc (patch) | |
| tree | 5400e3c2c0102301700c45bf8233d604b3effcb7 /src/server | |
| parent | 5bf28d7fdff4ecd5b1a0e8a26912e63af936c1cb (diff) | |
rz_kernel: clear cache entries after delete, rename
Diffstat (limited to 'src/server')
| -rw-r--r-- | src/server/rz_kernel.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/server/rz_kernel.py b/src/server/rz_kernel.py index 85e78565..fefcbad4 100644 --- a/src/server/rz_kernel.py +++ b/src/server/rz_kernel.py @@ -284,12 +284,13 @@ class RZ_Kernel(object): op = DBO_rzdoc__delete(rzdoc) self.db_ctl.exec_op(op) + self.cache__rzdoc_name_to_rzdoc.pop(rzdoc.name, None) + for r_assoc in self.rzdoc_reader_assoc_map[rzdoc]: r_assoc.mark__invalid = True # FIXME: # - broadcast delete event - # - clear cache mapping entry def rzdoc__lookup_by_name(self, rzdoc_name, ctx=None): """ @@ -317,8 +318,12 @@ class RZ_Kernel(object): op = DBO_rzdoc__rename(cur_name, new_name) rzdoc = self.db_ctl.exec_op(op) - return rzdoc # may be None + + self.cache__rzdoc_name_to_rzdoc.pop(cur_name, None) + self.cache__rzdoc_name_to_rzdoc.pop(new_name, None) + # FIXME: # - broadcast rename event - # - update cache mapping entry # - notify all rzdoc readers + + return rzdoc # may be None |
