]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - db/statusnet.sql
Merge branch '0.9.x' of git@gitorious.org:statusnet/mainline into 0.9.x
[quix0rs-gnu-social.git] / db / statusnet.sql
index dfcddb643c8b8004d1043c73053329c69c45852a..732aded5a59c96022cc97eae23bd84a93bb40e8c 100644 (file)
@@ -1,6 +1,7 @@
 /* local and remote users have profiles */
 
 create table profile (
 /* local and remote users have profiles */
 
 create table profile (
+
     id integer auto_increment primary key comment 'unique identifier',
     nickname varchar(64) not null comment 'nickname or username',
     fullname varchar(255) comment 'display name',
     id integer auto_increment primary key comment 'unique identifier',
     nickname varchar(64) not null comment 'nickname or username',
     fullname varchar(255) comment 'display name',
@@ -8,6 +9,11 @@ create table profile (
     homepage varchar(255) comment 'identifying URL',
     bio text comment 'descriptive biography',
     location varchar(255) comment 'physical location',
     homepage varchar(255) comment 'identifying URL',
     bio text comment 'descriptive biography',
     location varchar(255) comment 'physical location',
+    lat decimal(10,7) comment 'latitude',
+    lon decimal(10,7) comment 'longitude',
+    location_id integer comment 'location id if possible',
+    location_ns integer comment 'namespace for location',
+
     created datetime not null comment 'date this record was created',
     modified timestamp comment 'date this record was modified',
 
     created datetime not null comment 'date this record was created',
     modified timestamp comment 'date this record was modified',
 
@@ -101,8 +107,8 @@ create table subscription (
     modified timestamp comment 'date this record was modified',
 
     constraint primary key (subscriber, subscribed),
     modified timestamp comment 'date this record was modified',
 
     constraint primary key (subscriber, subscribed),
-    index subscription_subscriber_idx (subscriber),
-    index subscription_subscribed_idx (subscribed),
+    index subscription_subscriber_idx (subscriber, created),
+    index subscription_subscribed_idx (subscribed, created),
     index subscription_token_idx (token)
 ) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
 
     index subscription_token_idx (token)
 ) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
 
@@ -119,8 +125,12 @@ create table notice (
     is_local tinyint default 0 comment 'notice was generated by a user',
     source varchar(32) comment 'source of comment, like "web", "im", or "clientname"',
     conversation integer comment 'id of root notice in this conversation' references notice (id),
     is_local tinyint default 0 comment 'notice was generated by a user',
     source varchar(32) comment 'source of comment, like "web", "im", or "clientname"',
     conversation integer comment 'id of root notice in this conversation' references notice (id),
+    lat decimal(10,7) comment 'latitude',
+    lon decimal(10,7) comment 'longitude',
+    location_id integer comment 'location id if possible',
+    location_ns integer comment 'namespace for location',
 
 
-    index notice_profile_id_idx (profile_id),
+    index notice_profile_id_idx (profile_id,created,id),
     index notice_conversation_idx (conversation),
     index notice_created_idx (created),
     index notice_replyto_idx (reply_to),
     index notice_conversation_idx (conversation),
     index notice_created_idx (created),
     index notice_replyto_idx (reply_to),
@@ -155,7 +165,7 @@ create table fave (
 
     constraint primary key (notice_id, user_id),
     index fave_notice_id_idx (notice_id),
 
     constraint primary key (notice_id, user_id),
     index fave_notice_id_idx (notice_id),
-    index fave_user_id_idx (user_id),
+    index fave_user_id_idx (user_id,modified),
     index fave_modified_idx (modified)
 
 ) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
     index fave_modified_idx (modified)
 
 ) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
@@ -556,3 +566,22 @@ create table user_role (
     constraint primary key (user_id, role)
 
 ) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
     constraint primary key (user_id, role)
 
 ) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
+
+create table location_namespace (
+
+    id integer primary key comment 'identity for this namespace',
+    description varchar(255) comment 'description of the namespace',
+    created datetime not null comment 'date the record was created',
+    modified timestamp comment 'date this record was modified'
+
+) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
+
+create table login_token (
+    user_id integer not null comment 'user owning this token' references user (id),
+    token char(32) not null comment 'token useable for logging in',
+    created datetime not null comment 'date this record was created',
+    modified timestamp comment 'date this record was modified',
+
+    constraint primary key (user_id)
+) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
+