aboutsummaryrefslogtreecommitdiffstats
path: root/install
diff options
context:
space:
mode:
authorredmatrix <redmatrix@redmatrix.me>2015-10-15 18:52:04 -0700
committerredmatrix <redmatrix@redmatrix.me>2015-10-15 18:52:04 -0700
commit93f061f78a8b914a731838058a38354a62d002de (patch)
treea2444956ccadaad1ef5dcda1a98364bbc987d3a9 /install
parent7517c76ae48ddad741fe61c41dd6dcc09421d160 (diff)
downloadvolse-hubzilla-93f061f78a8b914a731838058a38354a62d002de.tar.gz
volse-hubzilla-93f061f78a8b914a731838058a38354a62d002de.tar.bz2
volse-hubzilla-93f061f78a8b914a731838058a38354a62d002de.zip
mail sync/migrate continued; also abstract delivery loop to make it re-usable, change refresh_all to use delivery loop.
Diffstat (limited to 'install')
-rw-r--r--install/schema_mysql.sql2
-rw-r--r--install/schema_postgres.sql2
-rw-r--r--install/update.php19
3 files changed, 22 insertions, 1 deletions
diff --git a/install/schema_mysql.sql b/install/schema_mysql.sql
index 0e626752d..4aaa70825 100644
--- a/install/schema_mysql.sql
+++ b/install/schema_mysql.sql
@@ -731,6 +731,7 @@ CREATE TABLE IF NOT EXISTS `likes` (
CREATE TABLE IF NOT EXISTS `mail` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`convid` int(10) unsigned NOT NULL DEFAULT '0',
+ `conv_guid` char(255) NOT NULL DEFAULT '',
`mail_flags` int(10) unsigned NOT NULL DEFAULT '0',
`from_xchan` char(255) NOT NULL DEFAULT '',
`to_xchan` char(255) NOT NULL DEFAULT '',
@@ -761,6 +762,7 @@ CREATE TABLE IF NOT EXISTS `mail` (
KEY `parent_mid` (`parent_mid`),
KEY `expires` (`expires`),
KEY `convid` (`convid`),
+ KEY `conv_guid` (`conv_guid`),
KEY `mail_deleted` (`mail_deleted`),
KEY `mail_replied` (`mail_replied`),
KEY `mail_isreply` (`mail_isreply`),
diff --git a/install/schema_postgres.sql b/install/schema_postgres.sql
index f378a3e3d..f42f6b297 100644
--- a/install/schema_postgres.sql
+++ b/install/schema_postgres.sql
@@ -728,6 +728,7 @@ create index "likes_target_id" on likes ("target_id");
CREATE TABLE "mail" (
"id" serial NOT NULL,
"convid" bigint NOT NULL DEFAULT '0',
+ "conv_guid" text NOT NULL,
"mail_flags" bigint NOT NULL DEFAULT '0',
"from_xchan" text NOT NULL DEFAULT '',
"to_xchan" text NOT NULL DEFAULT '',
@@ -750,6 +751,7 @@ CREATE TABLE "mail" (
PRIMARY KEY ("id")
);
create index "mail_convid" on mail ("convid");
+create index "mail_conv_guid" on mail ("conv_guid");
create index "mail_created" on mail ("created");
create index "mail_flags" on mail ("mail_flags");
create index "mail_account_id" on mail ("account_id");
diff --git a/install/update.php b/install/update.php
index e120f91d2..dc9377892 100644
--- a/install/update.php
+++ b/install/update.php
@@ -1887,6 +1887,23 @@ function update_r1155() {
function update_r1156() {
- return UPDATE_SUCCESS;
+ $r1 = q("ALTER TABLE mail ADD conv_guid CHAR( 255 ) NOT NULL DEFAULT '' ");
+ $r2 = q("create index conv_guid on mail ( conv_guid ) ");
+
+ $r3 = q("select mail.id, mail.convid, conv.guid from mail left join conv on mail.convid = conv.id where true");
+ if($r3) {
+ foreach($r3 as $rr) {
+ if($rr['convid']) {
+ q("update mail set conv_guid = '%s' where id = %d",
+ dbesc($rr['guid']),
+ intval($rr['id'])
+ );
+ }
+ }
+ }
+
+ if($r1 && $r2)
+ return UPDATE_SUCCESS;
+ return UPDATE_FAILED;
}