summaryrefslogtreecommitdiff
path: root/SQL
diff options
context:
space:
mode:
authoralecpl <alec@alec.pl>2011-09-18 09:02:35 +0000
committeralecpl <alec@alec.pl>2011-09-18 09:02:35 +0000
commit609d3923d7dc674263ddea990387dbf5488fabc6 (patch)
tree8d7be69aa280e7d5848a23d2215fb85688514d4e /SQL
parent30f50556c130e272d9eb6ddcd11ea70a18a4e711 (diff)
- Cache synchronization using QRESYNC/CONDSTORE
- Fixed message ID updates in cache - Changed message flags handling + some fixes (e.g. fixed messages listing after delete)
Diffstat (limited to 'SQL')
-rw-r--r--SQL/mssql.initial.sql15
-rw-r--r--SQL/mssql.upgrade.sql16
-rw-r--r--SQL/mysql.initial.sql8
-rw-r--r--SQL/mysql.update.sql7
-rw-r--r--SQL/postgres.initial.sql8
-rw-r--r--SQL/postgres.update.sql7
-rw-r--r--SQL/sqlite.initial.sql8
-rw-r--r--SQL/sqlite.update.sql7
8 files changed, 15 insertions, 61 deletions
diff --git a/SQL/mssql.initial.sql b/SQL/mssql.initial.sql
index eb5f20bcc..b3bb1c8b8 100644
--- a/SQL/mssql.initial.sql
+++ b/SQL/mssql.initial.sql
@@ -11,6 +11,7 @@ CREATE TABLE [dbo].[cache_index] (
[user_id] [int] NOT NULL ,
[mailbox] [varchar] (128) COLLATE Latin1_General_CI_AI NOT NULL ,
[changed] [datetime] NOT NULL ,
+ [valid] [char] (1) COLLATE Latin1_General_CI_AI NOT NULL ,
[data] [text] COLLATE Latin1_General_CI_AI NOT NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
@@ -29,12 +30,7 @@ CREATE TABLE [dbo].[cache_messages] (
[uid] [int] NOT NULL ,
[changed] [datetime] NOT NULL ,
[data] [text] COLLATE Latin1_General_CI_AI NOT NULL
- [seen] [char](1) NOT NULL ,
- [deleted] [char](1) NOT NULL ,
- [answered] [char](1) NOT NULL ,
- [forwarded] [char](1) NOT NULL ,
- [flagged] [char](1) NOT NULL ,
- [mdnsent] [char](1) NOT NULL ,
+ [flags] [int](1) NOT NULL ,
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
@@ -229,12 +225,7 @@ GO
ALTER TABLE [dbo].[cache_messages] ADD
CONSTRAINT [DF_cache_messages_changed] DEFAULT (getdate()) FOR [changed]
- CONSTRAINT [DF_cache_messages_seen] DEFAULT (0) FOR [seen],
- CONSTRAINT [DF_cache_messages_deleted] DEFAULT (0) FOR [deleted],
- CONSTRAINT [DF_cache_messages_answered] DEFAULT (0) FOR [answered],
- CONSTRAINT [DF_cache_messages_forwarded] DEFAULT (0) FOR [forwarded],
- CONSTRAINT [DF_cache_messages_flagged] DEFAULT (0) FOR [flagged],
- CONSTRAINT [DF_cache_messages_mdnsent] DEFAULT (0) FOR [mdnsent],
+ CONSTRAINT [DF_cache_messages_flags] DEFAULT (0) FOR [flags],
GO
CREATE INDEX [IX_cache_messages_user_id] ON [dbo].[cache_messages]([user_id]) ON [PRIMARY]
diff --git a/SQL/mssql.upgrade.sql b/SQL/mssql.upgrade.sql
index 29440f950..3def890bd 100644
--- a/SQL/mssql.upgrade.sql
+++ b/SQL/mssql.upgrade.sql
@@ -175,12 +175,7 @@ CREATE TABLE [dbo].[cache_messages] (
[uid] [int] NOT NULL ,
[changed] [datetime] NOT NULL ,
[data] [text] COLLATE Latin1_General_CI_AI NOT NULL
- [seen] [char](1) NOT NULL ,
- [deleted] [char](1) NOT NULL ,
- [answered] [char](1) NOT NULL ,
- [forwarded] [char](1) NOT NULL ,
- [flagged] [char](1) NOT NULL ,
- [mdnsent] [char](1) NOT NULL ,
+ [flags] [int] NOT NULL ,
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
@@ -220,13 +215,8 @@ CREATE INDEX [IX_cache_thread_user_id] ON [dbo].[cache_thread]([user_id]) ON [P
GO
ALTER TABLE [dbo].[cache_messages] ADD
- CONSTRAINT [DF_cache_messages_changed] DEFAULT (getdate()) FOR [changed]
- CONSTRAINT [DF_cache_messages_seen] DEFAULT (0) FOR [seen],
- CONSTRAINT [DF_cache_messages_deleted] DEFAULT (0) FOR [deleted],
- CONSTRAINT [DF_cache_messages_answered] DEFAULT (0) FOR [answered],
- CONSTRAINT [DF_cache_messages_forwarded] DEFAULT (0) FOR [forwarded],
- CONSTRAINT [DF_cache_messages_flagged] DEFAULT (0) FOR [flagged],
- CONSTRAINT [DF_cache_messages_mdnsent] DEFAULT (0) FOR [mdnsent],
+ CONSTRAINT [DF_cache_messages_changed] DEFAULT (getdate()) FOR [changed],
+ CONSTRAINT [DF_cache_messages_flags] DEFAULT (0) FOR [flags]
GO
CREATE INDEX [IX_cache_messages_user_id] ON [dbo].[cache_messages]([user_id]) ON [PRIMARY]
diff --git a/SQL/mysql.initial.sql b/SQL/mysql.initial.sql
index 32b3991e0..28a90f531 100644
--- a/SQL/mysql.initial.sql
+++ b/SQL/mysql.initial.sql
@@ -55,6 +55,7 @@ CREATE TABLE `cache_index` (
`user_id` int(10) UNSIGNED NOT NULL DEFAULT '0',
`mailbox` varchar(255) BINARY NOT NULL,
`changed` datetime NOT NULL DEFAULT '1000-01-01 00:00:00',
+ `valid` tinyint(1) NOT NULL DEFAULT '0',
`data` longtext NOT NULL,
CONSTRAINT `user_id_fk_cache_index` FOREIGN KEY (`user_id`)
REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE,
@@ -85,12 +86,7 @@ CREATE TABLE `cache_messages` (
`uid` int(11) UNSIGNED NOT NULL DEFAULT '0',
`changed` datetime NOT NULL DEFAULT '1000-01-01 00:00:00',
`data` longtext NOT NULL,
- `seen` tinyint(1) NOT NULL DEFAULT '0',
- `deleted` tinyint(1) NOT NULL DEFAULT '0',
- `answered` tinyint(1) NOT NULL DEFAULT '0',
- `forwarded` tinyint(1) NOT NULL DEFAULT '0',
- `flagged` tinyint(1) NOT NULL DEFAULT '0',
- `mdnsent` tinyint(1) NOT NULL DEFAULT '0',
+ `flags` int(11) NOT NULL DEFAULT '0',
CONSTRAINT `user_id_fk_cache_messages` FOREIGN KEY (`user_id`)
REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE,
INDEX `changed_index` (`changed`),
diff --git a/SQL/mysql.update.sql b/SQL/mysql.update.sql
index fee18d640..7e8f98f03 100644
--- a/SQL/mysql.update.sql
+++ b/SQL/mysql.update.sql
@@ -201,12 +201,7 @@ CREATE TABLE `cache_messages` (
`uid` int(11) UNSIGNED NOT NULL DEFAULT '0',
`changed` datetime NOT NULL DEFAULT '1000-01-01 00:00:00',
`data` longtext NOT NULL,
- `seen` tinyint(1) NOT NULL DEFAULT '0',
- `deleted` tinyint(1) NOT NULL DEFAULT '0',
- `answered` tinyint(1) NOT NULL DEFAULT '0',
- `forwarded` tinyint(1) NOT NULL DEFAULT '0',
- `flagged` tinyint(1) NOT NULL DEFAULT '0',
- `mdnsent` tinyint(1) NOT NULL DEFAULT '0',
+ `flags` int(11) NOT NULL DEFAULT '0',
CONSTRAINT `user_id_fk_cache_messages` FOREIGN KEY (`user_id`)
REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE,
INDEX `changed_index` (`changed`),
diff --git a/SQL/postgres.initial.sql b/SQL/postgres.initial.sql
index a1864c6c9..06ecad4eb 100644
--- a/SQL/postgres.initial.sql
+++ b/SQL/postgres.initial.sql
@@ -197,6 +197,7 @@ CREATE TABLE cache_index (
REFERENCES users (user_id) ON DELETE CASCADE ON UPDATE CASCADE,
mailbox varchar(255) NOT NULL,
changed timestamp with time zone DEFAULT now() NOT NULL,
+ valid smallint NOT NULL DEFAULT 0,
data text NOT NULL,
PRIMARY KEY (user_id, mailbox)
);
@@ -231,12 +232,7 @@ CREATE TABLE cache_messages (
uid integer NOT NULL,
changed timestamp with time zone DEFAULT now() NOT NULL,
data text NOT NULL,
- seen smallint NOT NULL DEFAULT 0,
- deleted smallint NOT NULL DEFAULT 0,
- answered smallint NOT NULL DEFAULT 0,
- forwarded smallint NOT NULL DEFAULT 0,
- flagged smallint NOT NULL DEFAULT 0,
- mdnsent smallint NOT NULL DEFAULT 0,
+ flags integer NOT NULL DEFAULT 0,
PRIMARY KEY (user_id, mailbox, uid)
);
diff --git a/SQL/postgres.update.sql b/SQL/postgres.update.sql
index 4bd0400c9..741495fbe 100644
--- a/SQL/postgres.update.sql
+++ b/SQL/postgres.update.sql
@@ -159,12 +159,7 @@ CREATE TABLE cache_messages (
uid integer NOT NULL,
changed timestamp with time zone DEFAULT now() NOT NULL,
data text NOT NULL,
- seen smallint NOT NULL DEFAULT 0,
- deleted smallint NOT NULL DEFAULT 0,
- answered smallint NOT NULL DEFAULT 0,
- forwarded smallint NOT NULL DEFAULT 0,
- flagged smallint NOT NULL DEFAULT 0,
- mdnsent smallint NOT NULL DEFAULT 0,
+ flags integer NOT NULL DEFAULT 0,
PRIMARY KEY (user_id, mailbox, uid)
);
diff --git a/SQL/sqlite.initial.sql b/SQL/sqlite.initial.sql
index 7ec82015d..80c82a1a1 100644
--- a/SQL/sqlite.initial.sql
+++ b/SQL/sqlite.initial.sql
@@ -159,6 +159,7 @@ CREATE TABLE cache_index (
user_id integer NOT NULL,
mailbox varchar(255) NOT NULL,
changed datetime NOT NULL default '0000-00-00 00:00:00',
+ valid smallint NOT NULL DEFAULT '0',
data text NOT NULL,
PRIMARY KEY (user_id, mailbox)
);
@@ -193,12 +194,7 @@ CREATE TABLE cache_messages (
uid integer NOT NULL,
changed datetime NOT NULL default '0000-00-00 00:00:00',
data text NOT NULL,
- seen smallint NOT NULL DEFAULT '0',
- deleted smallint NOT NULL DEFAULT '0',
- answered smallint NOT NULL DEFAULT '0',
- forwarded smallint NOT NULL DEFAULT '0',
- flagged smallint NOT NULL DEFAULT '0',
- mdnsent smallint NOT NULL DEFAULT '0',
+ flags integer NOT NULL DEFAULT '0',
PRIMARY KEY (user_id, mailbox, uid)
);
diff --git a/SQL/sqlite.update.sql b/SQL/sqlite.update.sql
index 378072c03..6f009754e 100644
--- a/SQL/sqlite.update.sql
+++ b/SQL/sqlite.update.sql
@@ -276,12 +276,7 @@ CREATE TABLE cache_messages (
uid integer NOT NULL,
changed datetime NOT NULL default '0000-00-00 00:00:00',
data text NOT NULL,
- seen smallint NOT NULL DEFAULT '0',
- deleted smallint NOT NULL DEFAULT '0',
- answered smallint NOT NULL DEFAULT '0',
- forwarded smallint NOT NULL DEFAULT '0',
- flagged smallint NOT NULL DEFAULT '0',
- mdnsent smallint NOT NULL DEFAULT '0',
+ flags integer NOT NULL DEFAULT '0',
PRIMARY KEY (user_id, mailbox, uid)
);