diff options
author | Peter Portante <peter.portante@redhat.com> | 2012-10-29 20:43:02 -0400 |
---|---|---|
committer | Peter Portante <peter.portante@redhat.com> | 2013-04-29 16:35:56 -0400 |
commit | 861de449e34608fa06eff417b64a035a715e3bee (patch) | |
tree | 66ac9d4001235279857374c3f50c132bea349177 | |
parent | 62373131c8766c9a56bf5ca5be434b90a3b28119 (diff) |
object-storage: only update metadata that changes
See BZ 868120 (https://bugzilla.redhat.com/show_bug.cgi?id=868120)
Change-Id: Ia7f5562cff32eee30c5ca18652d5d9a5a2b18bf4
BUG: 868120
Signed-off-by: Peter Portante <peter.portante@redhat.com>
Reviewed-on: http://review.gluster.org/4173
Reviewed-by: Pete Zaitcev <zaitcev@redhat.com>
Reviewed-by: Mohammed Junaid <junaid@redhat.com>
Tested-by: Kaleb KEITHLEY <kkeithle@redhat.com>
-rw-r--r-- | swift/1.4.8/plugins/DiskDir.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/swift/1.4.8/plugins/DiskDir.py b/swift/1.4.8/plugins/DiskDir.py index e0d5eb7..a9e39fd 100644 --- a/swift/1.4.8/plugins/DiskDir.py +++ b/swift/1.4.8/plugins/DiskDir.py @@ -411,8 +411,13 @@ class DiskDir(DiskCommon): self.unlink() def update_metadata(self, metadata): - self.metadata.update(metadata) - write_metadata(self.datadir, self.metadata) + assert self.metadata, "Valid container/account metadata should have been created by now" + if metadata: + new_metadata = self.metadata.copy() + new_metadata.update(metadata) + if new_metadata != self.metadata: + write_metadata(self.datadir, new_metadata) + self.metadata = new_metadata class DiskAccount(DiskDir): |