summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrion Vibber <brion@pobox.com>2010-12-17 12:47:50 -0800
committerBrion Vibber <brion@pobox.com>2010-12-17 12:49:02 -0800
commit53dd2583fcf5d026f682b0966e87dbdd35fc19a8 (patch)
tree3a4c45fce7c543893e24684eff98a5f2dbaef6c9
parent5de86f0ccc0208c2fc1a3924e4142bcac9679893 (diff)
Switch public timeline to new sorting; new index notice_created_id_is_local_idx
http://status.net/wiki/Sorting_changes
-rw-r--r--db/096to097.sql3
-rw-r--r--db/statusnet.sql6
2 files changed, 9 insertions, 0 deletions
diff --git a/db/096to097.sql b/db/096to097.sql
new file mode 100644
index 000000000..53f4e97c9
--- /dev/null
+++ b/db/096to097.sql
@@ -0,0 +1,3 @@
+-- Add indexes for sorting changes in 0.9.7
+-- Allows sorting public timeline by timestamp efficiently
+alter table notice add index notice_created_id_is_local_idx (created,id,is_local);
diff --git a/db/statusnet.sql b/db/statusnet.sql
index ac48e6253..b372305d0 100644
--- a/db/statusnet.sql
+++ b/db/statusnet.sql
@@ -131,7 +131,13 @@ create table notice (
location_ns integer comment 'namespace for location',
repeat_of integer comment 'notice this is a repeat of' references notice (id),
+ -- For public timeline...
+ index notice_created_id_is_local_idx (created,id,is_local),
+
+ -- For profile timelines...
index notice_profile_id_idx (profile_id,created,id),
+
+ -- Are these enough?
index notice_conversation_idx (conversation),
index notice_created_idx (created),
index notice_replyto_idx (reply_to),