# HG changeset patch # User dfraser # Date 1262782809 0 # Node ID 508636ffbf11cd8d8d554bc2b5ce03905c6aec01 # Parent ec76fabc261782aaf1818d38ed98cd2ca1d96f91 Added a constant so we don't have any more confusion about what files are used for levels - see #517 diff --git a/bitten/model.py b/bitten/model.py --- a/bitten/model.py +++ b/bitten/model.py @@ -703,6 +703,7 @@ WARNING = 'W' ERROR = 'E' UNKNOWN = '' + LEVELS_SUFFIX = '.levels' def __init__(self, env, build=None, step=None, generator=None, orderno=None, filename=None): @@ -751,7 +752,7 @@ os.remove(log_file) except Exception, e: self.env.log.warning("Error removing log file %s: %s" % (log_file, e)) - level_file = log_file + '.levels' + level_file = log_file + self.LEVELS_SUFFIX if os.path.exists(level_file): try: self.env.log.debug("Deleting level file: %s" % level_file) @@ -786,7 +787,7 @@ cursor.execute("UPDATE bitten_log SET filename=%s WHERE id=%s", (log_file, id)) if self.messages: log_file_name = self.get_log_file(log_file) - level_file_name = log_file_name + ".levels" + level_file_name = log_file_name + self.LEVELS_SUFFIX codecs.open(log_file_name, "wb", "UTF-8").writelines([to_unicode(msg[1]+"\n") for msg in self.messages]) codecs.open(level_file_name, "wb", "UTF-8").writelines([to_unicode(msg[0]+"\n") for msg in self.messages]) @@ -813,7 +814,7 @@ log_lines = codecs.open(log_filename, "rb", "UTF-8").readlines() else: log_lines = [] - level_filename = log.get_log_file(log.filename + ".levels") + level_filename = log.get_log_file(log.filename + cls.LEVELS_SUFFIX) if os.path.exists(level_filename): log_levels = dict(enumerate(codecs.open(level_filename, "rb", "UTF-8").readlines())) else: diff --git a/bitten/tests/model.py b/bitten/tests/model.py --- a/bitten/tests/model.py +++ b/bitten/tests/model.py @@ -509,7 +509,7 @@ build_log = BuildLog.fetch(self.env, id=build_log.id) self.assertEquals(build_log.filename, "%s.log" % build_log.id) log_file = build_log.get_log_file(build_log.filename) - levels_file = log_file+'.levels' + levels_file = log_file + BuildLog.LEVELS_SUFFIX self.failUnless(os.path.exists(log_file), 'log_file does not exist') self.failUnless(os.path.exists(levels_file), 'levels_file does not exist') diff --git a/bitten/upgrades.py b/bitten/upgrades.py --- a/bitten/upgrades.py +++ b/bitten/upgrades.py @@ -384,7 +384,8 @@ message_cursor.execute("SELECT message, level FROM bitten_log_message WHERE log=%s ORDER BY line", (log_id,)) full_filename = os.path.join(logs_dir, filename) message_file = codecs.open(full_filename, "wb", "UTF-8") - level_file = codecs.open(full_filename+".level", "wb", "UTF-8") + # Note: the original version of this code erroneously wrote to filename + ".level" instead of ".levels", producing unused level files + level_file = codecs.open(full_filename + BuildLog.LEVELS_SUFFIX, "wb", "UTF-8") for message, level in message_cursor.fetchall() or []: message_file.write(to_unicode(message) + "\n") level_file.write(to_unicode(level) + "\n")