diff --git a/base/models.py b/base/models.py index bb6a5bde44..df6a01bb36 100644 --- a/base/models.py +++ b/base/models.py @@ -157,7 +157,7 @@ class UserStarredFiles(models.Model): email = models.EmailField() org_id = models.IntegerField() - repo_id = models.CharField(max_length=36) + repo_id = models.CharField(max_length=36, db_index=True) path = models.TextField() is_dir = models.BooleanField() diff --git a/utils/__init__.py b/utils/__init__.py index ae2f3c95a2..12271c997c 100644 --- a/utils/__init__.py +++ b/utils/__init__.py @@ -688,7 +688,10 @@ def star_file(email, repo_id, path, is_dir, org_id=-1): repo_id=repo_id, path=path, is_dir=is_dir) - f.save() + try: + f.save() + except IntegrityError, e: + logger.warn(e) def unstar_file(email, repo_id, path): # Should use "get", but here we use "filter" to fix the bug caused by no