diff --git a/rhodecode/controllers/files.py b/rhodecode/controllers/files.py
--- a/rhodecode/controllers/files.py
+++ b/rhodecode/controllers/files.py
@@ -447,7 +447,8 @@ class FilesController(BaseRepoController
                 yield data
 
         response.content_disposition = str('attachment; filename=%s-%s%s' \
-                                           % (repo_name, revision[:12], ext))
+                                           % (safe_str(repo_name),
+                                              safe_str(revision), ext))
         response.content_type = str(content_type)
         return get_chunked_archive(archive)
 
diff --git a/rhodecode/model/db.py b/rhodecode/model/db.py
--- a/rhodecode/model/db.py
+++ b/rhodecode/model/db.py
@@ -1734,7 +1734,7 @@ class CacheInvalidation(Base, BaseModel)
             for inv_obj in inv_objs:
                 inv_obj.cache_active = False
                 log.debug('marking %s key for invalidation based on key=%s,repo_name=%s'
-                  % (inv_obj, key, repo_name))
+                  % (inv_obj, key, safe_str(repo_name)))
                 invalidated_keys.append(inv_obj.cache_key)
                 Session().add(inv_obj)
             Session().commit()