summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMikhail Shcherbinin <mu5h3r@30L.io>2018-08-09 16:50:53 +0300
committerOmer Katz <omer.drow@gmail.com>2018-08-09 16:50:53 +0300
commit0c740a7b58fe8c4d8b5ac503f5ed4551c19b51fc (patch)
tree4ddd7dc3494bf230b76725d14fd945537bead1c6
parente2a59094c2e698b790342dedd1a7db642bd34665 (diff)
downloadkombu-0c740a7b58fe8c4d8b5ac503f5ed4551c19b51fc.tar.gz
Index in sqlalchemy transport for quick sorting (#850)
-rw-r--r--kombu/transport/sqlalchemy/models.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/kombu/transport/sqlalchemy/models.py b/kombu/transport/sqlalchemy/models.py
index 5fd56c0c..78d2645a 100644
--- a/kombu/transport/sqlalchemy/models.py
+++ b/kombu/transport/sqlalchemy/models.py
@@ -4,7 +4,7 @@ from __future__ import absolute_import, unicode_literals
import datetime
from sqlalchemy import (Column, Integer, String, Text, DateTime,
- Sequence, Boolean, ForeignKey, SmallInteger)
+ Sequence, Boolean, ForeignKey, SmallInteger, Index)
from sqlalchemy.ext.declarative import declarative_base, declared_attr
from sqlalchemy.orm import relation
from sqlalchemy.schema import MetaData
@@ -37,7 +37,10 @@ class Queue(object):
class Message(object):
"""The message class."""
- __table_args__ = {'sqlite_autoincrement': True, 'mysql_engine': 'InnoDB'}
+ __table_args__ = (
+ Index('ix_kombu_message_timestamp_id', 'timestamp', 'id'),
+ {'sqlite_autoincrement': True, 'mysql_engine': 'InnoDB'}
+ )
id = Column(Integer, Sequence('message_id_sequence'),
primary_key=True, autoincrement=True)