Fabian Deutsch has uploaded a new change for review. Change subject: fs: Don't use ovirtfunctions for persistence ......................................................................
fs: Don't use ovirtfunctions for persistence Previously the legacy ovirtfunctions module was used for the peristence of files, on el7 this lead to problems. Now the legacy module is not used anymore to prevent failing persistence. Change-Id: I19931fb98a113dba609ce484ec2f5031fd1f6936 Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1152873 Signed-off-by: Fabian Deutsch <[email protected]> --- M src/ovirt/node/utils/fs/__init__.py 1 file changed, 19 insertions(+), 4 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-node refs/changes/46/34946/1 diff --git a/src/ovirt/node/utils/fs/__init__.py b/src/ovirt/node/utils/fs/__init__.py index fcfa40b..d03a1b3 100644 --- a/src/ovirt/node/utils/fs/__init__.py +++ b/src/ovirt/node/utils/fs/__init__.py @@ -29,6 +29,7 @@ import os import StringIO import re +import hashlib from . import mount @@ -422,7 +423,8 @@ elif os.path.isfile(abspath): self._persist_file(abspath) except Exception: - self._logger.error('Failed to persist "%s"', path) + self._logger.error('Failed to persist "%s"', path, + exc_info=True) return -1 restorecon(abspath) @@ -444,11 +446,24 @@ def _persist_file(self, abspath): """Persist file and bind mount it back to its current location """ - from ovirtnode import ovirtfunctions + + def cksum(filename): + try: + m = hashlib.md5() + except: + m = hashlib.sha1() + + with open(filename) as f: + data = f.read(4096) + while data: + m.update(data) + data = f.read(4096) + return m.hexdigest() + persisted_path = self._config_path(abspath) if os.path.exists(persisted_path): - current_checksum = ovirtfunctions.cksum(abspath) - stored_checksum = ovirtfunctions.cksum(persisted_path) + current_checksum = cksum(abspath) + stored_checksum = cksum(persisted_path) if stored_checksum == current_checksum: self._logger.warn('File "%s" had already been persisted', abspath) -- To view, visit http://gerrit.ovirt.org/34946 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I19931fb98a113dba609ce484ec2f5031fd1f6936 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-node Gerrit-Branch: master Gerrit-Owner: Fabian Deutsch <[email protected]> _______________________________________________ node-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/node-patches
