From 499a2e99e8c09757dcceed0e4bdbeccc53de3a55 Mon Sep 17 00:00:00 2001
From: Branson Stephens <stephenb@uwm.edu>
Date: Mon, 6 May 2013 16:07:22 -0500
Subject: [PATCH] calculating next log number N by taking the max of N's
 already in the database.

---
 gracedb/models.py | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/gracedb/models.py b/gracedb/models.py
index 99c1ec7e6..8d4469273 100644
--- a/gracedb/models.py
+++ b/gracedb/models.py
@@ -7,7 +7,7 @@ import datetime
 import thread
 import string
 import os
-
+import logging
 
 # XXX ER2.utils.  utils is in project directory.  ugh.
 from utils import posixToGpsTime
@@ -200,6 +200,7 @@ class EventLog(models.Model):
     issuer = models.ForeignKey(User)
     filename = models.CharField(max_length=100, default="")
     comment = models.TextField(null=False)
+    #XXX Does this need to be indexed for better performance?
     N = models.IntegerField(null=False)
 
     def fileurl(self):
@@ -219,7 +220,7 @@ class EventLog(models.Model):
         while (not success and attempts < 5):
             attempts = attempts + 1
             if self.event.eventlog_set.count():
-                self.N = event.eventlog_set.order_by('-N')[0].N + 1
+                self.N = int(self.event.eventlog_set.aggregate(models.Max('N'))['N__max']) + 1
             else:
                 self.N = 1
             try:
-- 
GitLab