annot-server/models.py
changeset 78 37bb8e326446
parent 43 e27c3c1c57f1
--- a/annot-server/models.py	Tue Oct 28 15:31:55 2014 +0100
+++ b/annot-server/models.py	Tue Oct 28 18:11:16 2014 +0100
@@ -23,15 +23,11 @@
     id = Column(Integer, primary_key=True, nullable=False)
     uuid = Column(UUID, unique=True, nullable=False)
     created = Column(DateTime, nullable=False, server_default=text("(now() at time zone 'utc')") )
-    ts = Column(DateTime(timezone=True), nullable=False)
-    event_code = Column(String(255), ForeignKey('event.code'), nullable=False)
-    channel = Column(String(255), nullable=False)
+    ts = Column(DateTime(timezone=True), nullable=False, index=True)
+    event_code = Column(String(255), ForeignKey('event.code'), nullable=False, index=True)
+    channel = Column(String(255), nullable=False, index=True)
     content = Column(JSON)
 
-Index('idx_annotation_event', Annotation.event_code)
-Index('idx_annotation_channel', Annotation.channel)
-Index('idx_annotation_ts', Annotation.ts)
-
 
 def insert_annot_async(params, conn):
 
@@ -56,32 +52,26 @@
     __tablename__ = 'event'
 
     id = Column(Integer, primary_key=True, nullable=False)
-    code = Column(String(255), unique=True, nullable=False)
+    code = Column(String(255), unique=True, nullable=False, index=True)
     label = Column(String(2048), nullable=False)
     description = Column(Text(), nullable=True)
-    start_date = Column(DateTime(), nullable=True)
-    active = Column(Boolean(), nullable=False, default=True, server_default='1')
+    start_date = Column(DateTime(), nullable=True, index=True)
+    active = Column(Boolean(), nullable=False, default=True, server_default='1', index=True)
 
     sessions = relationship("EventSession", order_by="EventSession.order", backref="event")
 
     def __unicode__(self):
         return self.code
 
-Index('idx_event_code', Event.code)
-Index('idx_event_active', Event.active)
-Index('idx_event_start_date', Event.start_date)
-
 class EventSession(Base):
     __tablename__ = 'event_session'
 
     id = Column(Integer, primary_key=True, nullable=False)
+    uuid = Column(UUID, unique=True, nullable=False, default=uuid.uuid4)
+    label = Column(String(2048), nullable=True)
     event_id = Column(Integer, ForeignKey(Event.id), nullable=False)
     project_id = Column(String(2048), nullable=True)
-    order = Column(Integer, nullable=False, default=0)
-    start_ts = Column(DateTime(timezone=True), nullable=True)
+    order = Column(Integer, nullable=False, default=0, index=True)
+    start_ts = Column(DateTime(timezone=True), nullable=True, index=True)
     duration = Column(Integer, nullable=True)
     categories_json = Column(JSON, nullable=True)
-
-
-Index('idx_event_session_order', EventSession.order)
-Index('idx_event_session_start_ts', EventSession.start_ts)