[CalendarServer-changes] [10914] CalendarServer/trunk/txdav/common/datastore/sql_schema/upgrades/ oracle-dialect
source_changes at macosforge.org
source_changes at macosforge.org
Wed Mar 13 15:31:08 PDT 2013
Revision: 10914
http://trac.calendarserver.org//changeset/10914
Author: dre at apple.com
Date: 2013-03-13 15:31:08 -0700 (Wed, 13 Mar 2013)
Log Message:
-----------
Fix oracle schema upgrades
Modified Paths:
--------------
CalendarServer/trunk/txdav/common/datastore/sql_schema/upgrades/oracle-dialect/upgrade_from_12_to_13.sql
CalendarServer/trunk/txdav/common/datastore/sql_schema/upgrades/oracle-dialect/upgrade_from_13_to_14.sql
Modified: CalendarServer/trunk/txdav/common/datastore/sql_schema/upgrades/oracle-dialect/upgrade_from_12_to_13.sql
===================================================================
--- CalendarServer/trunk/txdav/common/datastore/sql_schema/upgrades/oracle-dialect/upgrade_from_12_to_13.sql 2013-03-13 22:25:36 UTC (rev 10913)
+++ CalendarServer/trunk/txdav/common/datastore/sql_schema/upgrades/oracle-dialect/upgrade_from_12_to_13.sql 2013-03-13 22:31:08 UTC (rev 10914)
@@ -22,13 +22,24 @@
create sequence ATTACHMENT_ID_SEQ;
+alter table ATTACHMENT
+ drop primary key;
+-- not needed; DROPBOX_ID becomes nullable after dropping primary key above
+-- alter table ATTACHMENT
+-- modify (DROPBOX_ID null);
+
+-- We want ATTACHMENT_ID as a pkey, but can't yet since it needs unique values,
+-- and oracle can't set a default column value from a sequence
alter table ATTACHMENT
- drop primary key ("DROPBOX_ID", "PATH");
+ add ("ATTACHMENT_ID" integer);
+
+-- fill in ATTACHMENT_ID with unique values from the sequence
+update ATTACHMENT set ATTACHMENT_ID = ATTACHMENT_ID_SEQ.nextval;
+
+-- now set ATTACHMENT_ID as primary key, which implies unique and not null
alter table ATTACHMENT
- modify (DROPBOX_ID null);
-alter table ATTACHMENT
- add ("ATTACHMENT_ID" integer primary key);
+ add primary key(ATTACHMENT_ID);
create table ATTACHMENT_CALENDAR_OBJECT (
"ATTACHMENT_ID" integer not null references ATTACHMENT on delete cascade,
Modified: CalendarServer/trunk/txdav/common/datastore/sql_schema/upgrades/oracle-dialect/upgrade_from_13_to_14.sql
===================================================================
--- CalendarServer/trunk/txdav/common/datastore/sql_schema/upgrades/oracle-dialect/upgrade_from_13_to_14.sql 2013-03-13 22:25:36 UTC (rev 10913)
+++ CalendarServer/trunk/txdav/common/datastore/sql_schema/upgrades/oracle-dialect/upgrade_from_13_to_14.sql 2013-03-13 22:31:08 UTC (rev 10914)
@@ -27,7 +27,7 @@
alter table CALENDAR_BIND
drop column SEEN_BY_SHAREE;
alter table CALENDAR_BIND
- modify (ADDRESSBOOK_RESOURCE_NAME not null);
+ modify (CALENDAR_RESOURCE_NAME not null);
alter table ADDRESSBOOK_BIND
drop column SEEN_BY_OWNER;
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20130313/7e13d59d/attachment.html>
More information about the calendarserver-changes
mailing list