You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by la...@apache.org on 2013/07/12 09:53:06 UTC

[13/18] applying 0001-Refactor-throttling-module.patch

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/767082e3/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/mysql.sql
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/mysql.sql b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/mysql.sql
new file mode 100644
index 0000000..5b9b234
--- /dev/null
+++ b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/mysql.sql
@@ -0,0 +1,370 @@
+CREATE TABLE IF NOT EXISTS REG_CLUSTER_LOCK (
+             REG_LOCK_NAME VARCHAR (20),
+             REG_LOCK_STATUS VARCHAR (20),
+             REG_LOCKED_TIME TIMESTAMP,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             PRIMARY KEY (REG_LOCK_NAME)
+)ENGINE INNODB;
+
+CREATE TABLE IF NOT EXISTS REG_LOG (
+             REG_LOG_ID INTEGER AUTO_INCREMENT,
+             REG_PATH VARCHAR (750),
+             REG_USER_ID VARCHAR (31) NOT NULL,
+             REG_LOGGED_TIME TIMESTAMP NOT NULL,
+             REG_ACTION INTEGER NOT NULL,
+             REG_ACTION_DATA VARCHAR (500),
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             PRIMARY KEY (REG_LOG_ID, REG_TENANT_ID)
+)ENGINE INNODB;
+
+-- The REG_PATH_VALUE should be less than 767 bytes, and hence was fixed at 750.
+-- See CARBON-5917.
+
+CREATE TABLE IF NOT EXISTS REG_PATH(
+             REG_PATH_ID INTEGER NOT NULL AUTO_INCREMENT,
+             REG_PATH_VALUE VARCHAR(750) NOT NULL,
+             REG_PATH_PARENT_ID INTEGER,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_REG_PATH PRIMARY KEY(REG_PATH_ID, REG_TENANT_ID)
+)ENGINE INNODB;
+
+CREATE INDEX REG_PATH_IND_BY_PATH_VALUE USING HASH ON REG_PATH(REG_PATH_VALUE, REG_TENANT_ID);
+CREATE INDEX REG_PATH_IND_BY_PATH_PARENT_ID USING HASH ON REG_PATH(REG_PATH_PARENT_ID, REG_TENANT_ID);
+
+CREATE TABLE IF NOT EXISTS REG_CONTENT (
+             REG_CONTENT_ID INTEGER NOT NULL AUTO_INCREMENT,
+             REG_CONTENT_DATA LONGBLOB,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_REG_CONTENT PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
+)ENGINE INNODB;
+
+CREATE TABLE IF NOT EXISTS REG_CONTENT_HISTORY (
+             REG_CONTENT_ID INTEGER NOT NULL,
+             REG_CONTENT_DATA LONGBLOB,
+             REG_DELETED   SMALLINT,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_REG_CONTENT_HISTORY PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
+)ENGINE INNODB;
+
+CREATE TABLE IF NOT EXISTS REG_RESOURCE (
+            REG_PATH_ID         INTEGER NOT NULL,
+            REG_NAME            VARCHAR(256),
+            REG_VERSION         INTEGER NOT NULL AUTO_INCREMENT,
+            REG_MEDIA_TYPE      VARCHAR(500),
+            REG_CREATOR         VARCHAR(31) NOT NULL,
+            REG_CREATED_TIME    TIMESTAMP NOT NULL,
+            REG_LAST_UPDATOR    VARCHAR(31),
+            REG_LAST_UPDATED_TIME    TIMESTAMP NOT NULL,
+            REG_DESCRIPTION     VARCHAR(1000),
+            REG_CONTENT_ID      INTEGER,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_RESOURCE PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
+)ENGINE INNODB;
+
+ALTER TABLE REG_RESOURCE ADD CONSTRAINT REG_RESOURCE_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
+ALTER TABLE REG_RESOURCE ADD CONSTRAINT REG_RESOURCE_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT (REG_CONTENT_ID, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_IND_BY_NAME USING HASH ON REG_RESOURCE(REG_NAME, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_IND_BY_PATH_ID_NAME USING HASH ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
+
+CREATE TABLE IF NOT EXISTS REG_RESOURCE_HISTORY (
+            REG_PATH_ID         INTEGER NOT NULL,
+            REG_NAME            VARCHAR(256),
+            REG_VERSION         INTEGER NOT NULL,
+            REG_MEDIA_TYPE      VARCHAR(500),
+            REG_CREATOR         VARCHAR(31) NOT NULL,
+            REG_CREATED_TIME    TIMESTAMP NOT NULL,
+            REG_LAST_UPDATOR    VARCHAR(31),
+            REG_LAST_UPDATED_TIME    TIMESTAMP NOT NULL,
+            REG_DESCRIPTION     VARCHAR(1000),
+            REG_CONTENT_ID      INTEGER,
+            REG_DELETED         SMALLINT,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_RESOURCE_HISTORY PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
+)ENGINE INNODB;
+
+ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT REG_RESOURCE_HIST_FK_BY_PATHID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
+ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT REG_RESOURCE_HIST_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT_HISTORY (REG_CONTENT_ID, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_NAME USING HASH ON REG_RESOURCE_HISTORY(REG_NAME, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_PATH_ID_NAME USING HASH ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
+
+CREATE TABLE IF NOT EXISTS REG_COMMENT (
+            REG_ID        INTEGER NOT NULL AUTO_INCREMENT,
+            REG_COMMENT_TEXT      VARCHAR(500) NOT NULL,
+            REG_USER_ID           VARCHAR(31) NOT NULL,
+            REG_COMMENTED_TIME    TIMESTAMP NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_COMMENT PRIMARY KEY(REG_ID, REG_TENANT_ID)
+)ENGINE INNODB;
+
+CREATE TABLE IF NOT EXISTS REG_RESOURCE_COMMENT (
+            REG_COMMENT_ID          INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR(256),
+            REG_TENANT_ID INTEGER DEFAULT 0
+)ENGINE INNODB;
+
+ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
+ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_COMMENT_ID FOREIGN KEY (REG_COMMENT_ID, REG_TENANT_ID) REFERENCES REG_COMMENT (REG_ID, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_COMMENT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_VERSION USING HASH ON REG_RESOURCE_COMMENT(REG_VERSION, REG_TENANT_ID);
+
+CREATE TABLE IF NOT EXISTS REG_RATING (
+            REG_ID     INTEGER NOT NULL AUTO_INCREMENT,
+            REG_RATING        INTEGER NOT NULL,
+            REG_USER_ID       VARCHAR(31) NOT NULL,
+            REG_RATED_TIME    TIMESTAMP NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_RATING PRIMARY KEY(REG_ID, REG_TENANT_ID)
+)ENGINE INNODB;
+
+CREATE TABLE IF NOT EXISTS REG_RESOURCE_RATING (
+            REG_RATING_ID           INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR(256),
+            REG_TENANT_ID INTEGER DEFAULT 0
+)ENGINE INNODB;
+
+ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT REG_RESOURCE_RATING_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
+ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT REG_RESOURCE_RATING_FK_BY_RATING_ID FOREIGN KEY (REG_RATING_ID, REG_TENANT_ID) REFERENCES REG_RATING (REG_ID, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_RATING_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_RATING(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_RATING_IND_BY_VERSION USING HASH ON REG_RESOURCE_RATING(REG_VERSION, REG_TENANT_ID);
+
+
+CREATE TABLE IF NOT EXISTS REG_TAG (
+            REG_ID         INTEGER NOT NULL AUTO_INCREMENT,
+            REG_TAG_NAME       VARCHAR(500) NOT NULL,
+            REG_USER_ID        VARCHAR(31) NOT NULL,
+            REG_TAGGED_TIME    TIMESTAMP NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_TAG PRIMARY KEY(REG_ID, REG_TENANT_ID)
+)ENGINE INNODB;
+
+CREATE TABLE IF NOT EXISTS REG_RESOURCE_TAG (
+            REG_TAG_ID              INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR(256),
+            REG_TENANT_ID INTEGER DEFAULT 0
+)ENGINE INNODB;
+
+ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT REG_RESOURCE_TAG_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
+ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT REG_RESOURCE_TAG_FK_BY_TAG_ID FOREIGN KEY (REG_TAG_ID, REG_TENANT_ID) REFERENCES REG_TAG (REG_ID, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_TAG_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_TAG(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_TAG_IND_BY_VERSION USING HASH ON REG_RESOURCE_TAG(REG_VERSION, REG_TENANT_ID);
+
+CREATE TABLE IF NOT EXISTS REG_PROPERTY (
+            REG_ID         INTEGER NOT NULL AUTO_INCREMENT,
+            REG_NAME       VARCHAR(100) NOT NULL,
+            REG_VALUE        VARCHAR(1000),
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_PROPERTY PRIMARY KEY(REG_ID, REG_TENANT_ID)
+)ENGINE INNODB;
+
+CREATE TABLE IF NOT EXISTS REG_RESOURCE_PROPERTY (
+            REG_PROPERTY_ID         INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR(256),
+            REG_TENANT_ID INTEGER DEFAULT 0
+)ENGINE INNODB;
+
+ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
+ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_TAG_ID FOREIGN KEY (REG_PROPERTY_ID, REG_TENANT_ID) REFERENCES REG_PROPERTY (REG_ID, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_PROPERTY(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_VERSION USING HASH ON REG_RESOURCE_PROPERTY(REG_VERSION, REG_TENANT_ID);
+
+-- CREATE TABLE IF NOT EXISTS REG_ASSOCIATIONS (
+-- SRC_PATH_ID     INTEGER,
+-- SRC_RESOURCE_NAME    VARCHAR(256),
+-- SRC_VERSION     INTEGER,
+-- TGT_PATH_ID     INTEGER,
+-- TGT_RESOURCE_NAME    VARCHAR(256),
+-- TGT_VERSION     INTEGER
+-- )ENGINE INNODB;
+-- 
+-- ALTER TABLE REG_ASSOCIATIONS ADD CONSTRAINT REG_ASSOCIATIONS_FK_BY_SRC_PATH_ID FOREIGN KEY (SRC_PATH_ID) REFERENCES REG_PATH (PATH_ID);
+-- ALTER TABLE REG_ASSOCIATIONS ADD CONSTRAINT REG_ASSOCIATIONS_FK_BY_TGT_PATH_ID FOREIGN KEY (TGT_PATH_ID) REFERENCES REG_PATH (PATH_ID);
+-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_SRC_VERSION ON REG_ASSOCIATIONS(SRC_VERSION);
+-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_TGT_VERSION ON REG_ASSOCIATIONS(TGT_VERSION);
+-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_SRC_RESOURCE_NAME ON REG_ASSOCIATIONS(SRC_RESOURCE_NAME);
+-- CREATE INDEX REG_ASSOCIATIONS_IND_BY_TGT_RESOURCE_NAME ON REG_ASSOCIATIONS(TGT_RESOURCE_NAME);
+
+
+
+CREATE TABLE IF NOT EXISTS REG_ASSOCIATION (
+            REG_ASSOCIATION_ID INTEGER AUTO_INCREMENT,
+            REG_SOURCEPATH VARCHAR (750) NOT NULL,
+            REG_TARGETPATH VARCHAR (750) NOT NULL,
+            REG_ASSOCIATION_TYPE VARCHAR (2000) NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            PRIMARY KEY (REG_ASSOCIATION_ID, REG_TENANT_ID)
+)ENGINE INNODB;
+
+CREATE TABLE IF NOT EXISTS REG_SNAPSHOT (
+            REG_SNAPSHOT_ID     INTEGER NOT NULL AUTO_INCREMENT,
+            REG_PATH_ID            INTEGER NOT NULL,
+            REG_RESOURCE_NAME      VARCHAR(255),
+            REG_RESOURCE_VIDS     LONGBLOB NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_SNAPSHOT PRIMARY KEY(REG_SNAPSHOT_ID, REG_TENANT_ID)
+)ENGINE INNODB;
+
+CREATE INDEX REG_SNAPSHOT_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_SNAPSHOT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
+
+ALTER TABLE REG_SNAPSHOT ADD CONSTRAINT REG_SNAPSHOT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
+
+
+-- ################################
+-- USER MANAGER TABLES
+-- ################################
+
+CREATE TABLE UM_TENANT (
+			UM_ID INTEGER NOT NULL AUTO_INCREMENT,
+	    UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
+            UM_EMAIL VARCHAR(255),
+            UM_ACTIVE BOOLEAN DEFAULT FALSE,
+			PRIMARY KEY (UM_ID),
+			UNIQUE(UM_DOMAIN_NAME));
+
+CREATE TABLE UM_USER ( 
+             UM_ID INTEGER NOT NULL AUTO_INCREMENT, 
+             UM_USER_NAME VARCHAR(255) NOT NULL, 
+             UM_USER_PASSWORD VARCHAR(255) NOT NULL,
+             UM_SALT_VALUE VARCHAR(31),
+             UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
+             UM_CHANGED_TIME TIMESTAMP NOT NULL,
+             UM_TENANT_ID INTEGER DEFAULT 0, 
+             PRIMARY KEY (UM_ID, UM_TENANT_ID), 
+             UNIQUE(UM_USER_NAME, UM_TENANT_ID)
+)ENGINE INNODB; 
+
+CREATE TABLE UM_ROLE ( 
+             UM_ID INTEGER NOT NULL AUTO_INCREMENT, 
+             UM_ROLE_NAME VARCHAR(255) NOT NULL,
+             UM_TENANT_ID INTEGER DEFAULT 0,  
+             PRIMARY KEY (UM_ID, UM_TENANT_ID),
+             UNIQUE(UM_ROLE_NAME, UM_TENANT_ID) 
+)ENGINE INNODB;
+
+CREATE TABLE UM_PERMISSION ( 
+             UM_ID INTEGER NOT NULL AUTO_INCREMENT, 
+             UM_RESOURCE_ID VARCHAR(255) NOT NULL, 
+             UM_ACTION VARCHAR(255) NOT NULL, 
+             UM_TENANT_ID INTEGER DEFAULT 0, 
+             PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)ENGINE INNODB; 
+
+CREATE INDEX INDEX_UM_PERMISSION_UM_RESOURCE_ID_UM_ACTION 
+                    ON UM_PERMISSION (UM_RESOURCE_ID, UM_ACTION, UM_TENANT_ID); 
+
+CREATE TABLE UM_ROLE_PERMISSION ( 
+             UM_ID INTEGER NOT NULL AUTO_INCREMENT, 
+             UM_PERMISSION_ID INTEGER NOT NULL, 
+             UM_ROLE_NAME VARCHAR(255) NOT NULL,
+             UM_IS_ALLOWED SMALLINT NOT NULL, 
+             UM_TENANT_ID INTEGER DEFAULT 0, 
+             FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID), 
+             PRIMARY KEY (UM_ID, UM_TENANT_ID) 
+)ENGINE INNODB; 
+
+-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_ROLE_ID) 
+CREATE TABLE UM_USER_PERMISSION ( 
+             UM_ID INTEGER NOT NULL AUTO_INCREMENT, 
+             UM_PERMISSION_ID INTEGER NOT NULL, 
+             UM_USER_NAME VARCHAR(255) NOT NULL,
+             UM_IS_ALLOWED SMALLINT NOT NULL,          
+             UM_TENANT_ID INTEGER DEFAULT 0, 
+             FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID), 
+             PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)ENGINE INNODB;
+
+-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_USER_ID) 
+CREATE TABLE UM_USER_ROLE ( 
+             UM_ID INTEGER NOT NULL AUTO_INCREMENT, 
+             UM_ROLE_ID INTEGER NOT NULL, 
+             UM_USER_ID INTEGER NOT NULL,
+             UM_TENANT_ID INTEGER DEFAULT 0,  
+             UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID), 
+             FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID, UM_TENANT_ID), 
+             FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID), 
+             PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)ENGINE INNODB; 
+
+
+CREATE TABLE UM_USER_ATTRIBUTE ( 
+            UM_ID INTEGER NOT NULL AUTO_INCREMENT, 
+            UM_ATTR_NAME VARCHAR(255) NOT NULL, 
+            UM_ATTR_VALUE VARCHAR(1024), 
+            UM_PROFILE_ID VARCHAR(255), 
+            UM_USER_ID INTEGER, 
+            UM_TENANT_ID INTEGER DEFAULT 0, 
+            FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)ENGINE INNODB; 
+
+
+
+CREATE TABLE UM_DIALECT( 
+            UM_ID INTEGER NOT NULL AUTO_INCREMENT, 
+            UM_DIALECT_URI VARCHAR(255) NOT NULL, 
+            UM_TENANT_ID INTEGER DEFAULT 0, 
+            UNIQUE(UM_DIALECT_URI, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)ENGINE INNODB; 
+
+CREATE TABLE UM_CLAIM( 
+            UM_ID INTEGER NOT NULL AUTO_INCREMENT, 
+            UM_DIALECT_ID INTEGER NOT NULL, 
+            UM_CLAIM_URI VARCHAR(255) NOT NULL, 
+            UM_DISPLAY_TAG VARCHAR(255), 
+            UM_DESCRIPTION VARCHAR(255), 
+            UM_MAPPED_ATTRIBUTE VARCHAR(255), 
+            UM_REG_EX VARCHAR(255), 
+            UM_SUPPORTED SMALLINT, 
+            UM_REQUIRED SMALLINT, 
+            UM_DISPLAY_ORDER INTEGER,
+            UM_TENANT_ID INTEGER DEFAULT 0, 
+            UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_TENANT_ID), 
+            FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)ENGINE INNODB; 
+
+CREATE TABLE UM_PROFILE_CONFIG( 
+            UM_ID INTEGER NOT NULL AUTO_INCREMENT, 
+            UM_DIALECT_ID INTEGER NOT NULL, 
+            UM_PROFILE_NAME VARCHAR(255), 
+            UM_TENANT_ID INTEGER DEFAULT 0, 
+            FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)ENGINE INNODB; 
+    
+CREATE TABLE UM_CLAIM_BEHAVIOR( 
+            UM_ID INTEGER NOT NULL AUTO_INCREMENT, 
+            UM_PROFILE_ID INTEGER, 
+            UM_CLAIM_ID INTEGER, 
+            UM_BEHAVIOUR SMALLINT, 
+            UM_TENANT_ID INTEGER DEFAULT 0, 
+            FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID, UM_TENANT_ID), 
+            FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)ENGINE INNODB; 
+
+CREATE TABLE UM_HYBRID_ROLE(
+            UM_ID INTEGER NOT NULL AUTO_INCREMENT,
+            UM_ROLE_NAME VARCHAR(255),
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)ENGINE INNODB;
+
+CREATE TABLE UM_HYBRID_USER_ROLE(
+            UM_ID INTEGER NOT NULL AUTO_INCREMENT,
+            UM_USER_NAME VARCHAR(255),
+            UM_ROLE_ID INTEGER NOT NULL,
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
+            FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID, UM_TENANT_ID),
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)ENGINE INNODB;
+

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/767082e3/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/oracle.sql
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/oracle.sql b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/oracle.sql
new file mode 100644
index 0000000..e7cc68f
--- /dev/null
+++ b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/oracle.sql
@@ -0,0 +1,644 @@
+CREATE TABLE REG_CLUSTER_LOCK (
+             REG_LOCK_NAME VARCHAR2(20),
+             REG_LOCK_STATUS VARCHAR2(20),
+             REG_LOCKED_TIME TIMESTAMP,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_REG_CLUSTER_LOCK PRIMARY KEY (REG_LOCK_NAME))
+/
+CREATE TABLE REG_LOG (
+             REG_LOG_ID INTEGER,
+             REG_PATH VARCHAR2(2000),
+             REG_USER_ID VARCHAR2(31) NOT NULL,
+             REG_LOGGED_TIME TIMESTAMP  NOT NULL,
+             REG_ACTION INTEGER NOT NULL,
+             REG_ACTION_DATA VARCHAR2(500),
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_REG_LOG PRIMARY KEY (REG_LOG_ID, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_LOG_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER REG_LOG_TRIGGER
+                    BEFORE INSERT
+                    ON REG_LOG
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_LOG_SEQUENCE.nextval INTO :NEW.REG_LOG_ID FROM dual;
+           		   END;
+/	         
+
+CREATE TABLE REG_PATH(
+             REG_PATH_ID INTEGER NULL,
+	         REG_PATH_VALUE VARCHAR2(2000) NOT NULL,
+             REG_PATH_PARENT_ID INTEGER,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_PATH PRIMARY KEY(REG_PATH_ID, REG_TENANT_ID))
+/
+CREATE INDEX REG_PATH_IND_BY_PATH_VALUE ON REG_PATH(REG_PATH_VALUE, REG_TENANT_ID)
+/
+CREATE INDEX REG_PATH_IND_BY_PARENT_ID ON REG_PATH(REG_PATH_PARENT_ID, REG_TENANT_ID)
+/
+CREATE SEQUENCE REG_PATH_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER REG_PATH_TRIGGER
+                    BEFORE INSERT
+                    ON REG_PATH
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_PATH_SEQUENCE.nextval INTO :NEW.REG_PATH_ID FROM dual;
+ 			   END;
+/                   
+
+CREATE TABLE REG_CONTENT (
+             REG_CONTENT_ID INTEGER,
+             REG_CONTENT_DATA BLOB,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_REG_CONTENT PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_CONTENT_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER REG_CONTENT_TRIGGER
+                    BEFORE INSERT
+                    ON REG_CONTENT
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_CONTENT_SEQUENCE.nextval INTO :NEW.REG_CONTENT_ID FROM dual;
+ 			   END;
+/                   
+
+CREATE TABLE REG_CONTENT_HISTORY (
+             REG_CONTENT_ID INTEGER NOT NULL,
+             REG_CONTENT_DATA BLOB,
+             REG_DELETED   SMALLINT,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_REG_CONTENT_HISTORY PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID))
+/
+CREATE TABLE REG_RESOURCE (
+            REG_PATH_ID         INTEGER NOT NULL,
+            REG_NAME            VARCHAR2(256),
+            REG_VERSION         INTEGER,
+            REG_MEDIA_TYPE      VARCHAR2(500),
+            REG_CREATOR         VARCHAR2(31) NOT NULL,
+            REG_CREATED_TIME    TIMESTAMP NOT NULL,
+            REG_LAST_UPDATOR    VARCHAR2(31),
+            REG_LAST_UPDATED_TIME    TIMESTAMP NOT NULL,
+            REG_DESCRIPTION     VARCHAR2(1000),
+            REG_CONTENT_ID      INTEGER,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT FK_REG_RES_PATH FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),         
+            CONSTRAINT PK_REG_RESOURCE PRIMARY KEY(REG_VERSION, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_RESOURCE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER REG_RESOURCE_TRIGGER
+                    BEFORE INSERT
+                    ON REG_RESOURCE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_RESOURCE_SEQUENCE.nextval INTO :NEW.REG_VERSION FROM dual;
+ 			   END;
+/                   
+
+CREATE INDEX REG_RESOURCE_IND_BY_NAME ON REG_RESOURCE(REG_NAME, REG_TENANT_ID)
+/
+CREATE INDEX REG_RESOURCE_IND_BY_PATH_ID ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID)
+/
+CREATE TABLE REG_RESOURCE_HISTORY (
+            REG_PATH_ID         INTEGER NOT NULL,
+            REG_NAME            VARCHAR2(256),
+            REG_VERSION         INTEGER NOT NULL,
+            REG_MEDIA_TYPE      VARCHAR2(500),
+            REG_CREATOR         VARCHAR2(31) NOT NULL,
+            REG_CREATED_TIME    TIMESTAMP NOT NULL,
+            REG_LAST_UPDATOR    VARCHAR2(31),
+            REG_LAST_UPDATED_TIME    TIMESTAMP NOT NULL,
+            REG_DESCRIPTION     VARCHAR2(1000),
+            REG_CONTENT_ID      INTEGER,
+            REG_DELETED         SMALLINT,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
+            FOREIGN KEY (REG_CONTENT_ID,REG_TENANT_ID) REFERENCES REG_CONTENT_HISTORY (REG_CONTENT_ID,REG_TENANT_ID),            
+            CONSTRAINT PK_REG_RESOURCE_HISTORY PRIMARY KEY(REG_VERSION, REG_TENANT_ID))
+/
+CREATE INDEX REG_RES_HIST_IND_BY_NAME ON REG_RESOURCE_HISTORY(REG_NAME, REG_TENANT_ID)
+/
+CREATE INDEX REG_RES_HIST_IND_BY_PATH_ID ON REG_RESOURCE_HISTORY(REG_PATH_ID, REG_NAME, REG_TENANT_ID)
+/
+CREATE TABLE REG_COMMENT (
+            REG_ID        INTEGER,
+            REG_COMMENT_TEXT      VARCHAR2(500) NOT NULL,
+            REG_USER_ID           VARCHAR2(31) NOT NULL,
+            REG_COMMENTED_TIME    TIMESTAMP NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_COMMENT PRIMARY KEY(REG_ID, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_COMMENT_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER REG_COMMENT_TRIGGER
+                    BEFORE INSERT
+                    ON REG_COMMENT
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_COMMENT_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
+ 			   END;
+/                   
+
+CREATE TABLE REG_RESOURCE_COMMENT (
+            REG_COMMENT_ID          INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR2(256),
+            FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
+            FOREIGN KEY (REG_COMMENT_ID,REG_TENANT_ID) REFERENCES REG_COMMENT (REG_ID,REG_TENANT_ID),            
+            REG_TENANT_ID INTEGER DEFAULT 0) 
+/
+CREATE INDEX REG_RES_COMM_BY_PATH_ID ON REG_RESOURCE_COMMENT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
+/
+CREATE INDEX REG_RES_COMM_BY_VERSION ON REG_RESOURCE_COMMENT(REG_VERSION, REG_TENANT_ID)
+/
+CREATE TABLE REG_RATING (
+            REG_ID     INTEGER,
+            REG_RATING        INTEGER NOT NULL,
+            REG_USER_ID       VARCHAR2(31) NOT NULL,
+            REG_RATED_TIME    TIMESTAMP NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_RATING PRIMARY KEY(REG_ID, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_RATING_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER REG_RATING_TRIGGER
+                    BEFORE INSERT
+                    ON REG_RATING
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_RATING_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
+                     END;
+/
+				
+CREATE TABLE REG_RESOURCE_RATING (
+            REG_RATING_ID           INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR2(256),
+            FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
+            FOREIGN KEY (REG_RATING_ID,REG_TENANT_ID) REFERENCES REG_RATING (REG_ID,REG_TENANT_ID),           
+            REG_TENANT_ID INTEGER DEFAULT 0)
+/
+CREATE INDEX REG_RATING_IND_BY_PATH_ID ON REG_RESOURCE_RATING(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
+/
+CREATE INDEX REG_RATING_IND_BY_VERSION ON REG_RESOURCE_RATING(REG_VERSION, REG_TENANT_ID)
+/
+CREATE TABLE REG_TAG (
+            REG_ID         INTEGER,
+            REG_TAG_NAME       VARCHAR2(500) NOT NULL,
+            REG_USER_ID        VARCHAR2(31) NOT NULL,
+            REG_TAGGED_TIME    TIMESTAMP NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_TAG PRIMARY KEY(REG_ID, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_TAG_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER REG_TAG_TRIGGER
+                    BEFORE INSERT
+                    ON REG_TAG
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_TAG_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
+                     END;
+/  
+			
+
+CREATE TABLE REG_RESOURCE_TAG (
+            REG_TAG_ID              INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR2(256),
+            FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
+            FOREIGN KEY (REG_TAG_ID,REG_TENANT_ID) REFERENCES REG_TAG (REG_ID,REG_TENANT_ID),            
+            REG_TENANT_ID INTEGER DEFAULT 0)
+/
+CREATE INDEX REG_TAG_IND_BY_PATH_ID ON REG_RESOURCE_TAG(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
+/
+CREATE INDEX REG_TAG_IND_BY_VERSION ON REG_RESOURCE_TAG(REG_VERSION, REG_TENANT_ID)
+/
+CREATE TABLE REG_PROPERTY (
+            REG_ID         INTEGER,
+            REG_NAME       VARCHAR2(100) NOT NULL,
+            REG_VALUE        VARCHAR2(1000),
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_PROPERTY PRIMARY KEY(REG_ID, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_PROPERTY_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER REG_PROPERTY_TRIGGER
+                    BEFORE INSERT
+                    ON REG_PROPERTY
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_PROPERTY_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
+ 			   END;
+/                   
+
+CREATE TABLE REG_RESOURCE_PROPERTY (
+            REG_PROPERTY_ID         INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR2(256),
+            FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
+            FOREIGN KEY (REG_PROPERTY_ID,REG_TENANT_ID) REFERENCES REG_PROPERTY (REG_ID,REG_TENANT_ID),           
+            REG_TENANT_ID INTEGER DEFAULT 0)
+/
+CREATE INDEX REG_RESC_PROP_BY_VERN_PROPID ON REG_RESOURCE_PROPERTY(REG_PROPERTY_ID,REG_VERSION, REG_TENANT_ID)
+/
+CREATE INDEX REG_RESC_PROP_BY_VERN_PATHNAME ON REG_RESOURCE_PROPERTY(REG_PROPERTY_ID,REG_PATH_ID,REG_RESOURCE_NAME, REG_TENANT_ID)
+/
+CREATE TABLE REG_ASSOCIATION (
+            REG_ASSOCIATION_ID INTEGER,
+            REG_SOURCEPATH VARCHAR2 (2000) NOT NULL,
+            REG_TARGETPATH VARCHAR2 (2000) NOT NULL,
+            REG_ASSOCIATION_TYPE VARCHAR2 (2000) NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_ASSOCIATION PRIMARY KEY (REG_ASSOCIATION_ID, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_ASSOCIATION_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER REG_ASSOCIATION_TRIGGER
+                    BEFORE INSERT
+                    ON REG_ASSOCIATION
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_ASSOCIATION_SEQUENCE.nextval INTO :NEW.REG_ASSOCIATION_ID FROM dual;
+ 			   END;
+/                   
+
+CREATE TABLE REG_SNAPSHOT (
+            REG_SNAPSHOT_ID     INTEGER,
+            REG_PATH_ID            INTEGER NOT NULL,
+            REG_RESOURCE_NAME      VARCHAR2(256),
+            REG_RESOURCE_VIDS     BLOB NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
+            CONSTRAINT PK_REG_SNAPSHOT PRIMARY KEY(REG_SNAPSHOT_ID, REG_TENANT_ID))
+/
+CREATE INDEX REG_SNAPSHOT_PATH_ID ON REG_SNAPSHOT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
+/
+CREATE SEQUENCE REG_SNAPSHOT_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER REG_SNAPSHOT_TRIGGER
+                    BEFORE INSERT
+                    ON REG_SNAPSHOT
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_SNAPSHOT_SEQUENCE.nextval INTO :NEW.REG_SNAPSHOT_ID FROM dual;
+                     END;
+/
+/
+CREATE TABLE UM_TENANT (
+                    UM_ID INTEGER,
+                    UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
+                    UM_EMAIL VARCHAR(255),
+                    UM_ACTIVE NUMBER(1) DEFAULT 0,
+                    PRIMARY KEY (UM_ID),
+                    UNIQUE(UM_DOMAIN_NAME))
+/
+CREATE SEQUENCE UM_TENANT_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER UM_TENANT_TRIGGER
+		            BEFORE INSERT
+                    ON UM_TENANT
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                     SELECT UM_TENANT_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+                    END;
+/
+CREATE TABLE UM_USER (
+                    UM_ID INTEGER,
+                    UM_USER_NAME VARCHAR2(255) NOT NULL,
+                    UM_USER_PASSWORD VARCHAR2(255) NOT NULL,
+                    UM_SALT_VALUE VARCHAR(31),
+                    UM_REQUIRE_CHANGE NUMBER(1) DEFAULT 0,
+                    UM_CHANGED_TIME TIMESTAMP NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID),
+                    UNIQUE(UM_USER_NAME, UM_TENANT_ID))
+/
+CREATE SEQUENCE UM_USER_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER UM_USER_TRIGGER
+		            BEFORE INSERT
+                    ON UM_USER
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                     SELECT UM_USER_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+                    END;
+/
+		
+CREATE TABLE UM_USER_ATTRIBUTE (
+                    UM_ID INTEGER,
+                    UM_ATTR_NAME VARCHAR2(255) NOT NULL,
+                    UM_ATTR_VALUE VARCHAR2(255),
+                    UM_PROFILE_ID VARCHAR(255),
+                    UM_USER_ID INTEGER,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID))
+/
+CREATE SEQUENCE UM_USER_ATTRIBUTE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER UM_USER_ATTRIBUTE_TRIGGER
+                    BEFORE INSERT
+                    ON UM_USER_ATTRIBUTE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_USER_ATTRIBUTE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+ 			  END;
+/                   
+
+CREATE TABLE UM_ROLE (
+                    UM_ID INTEGER,
+                    UM_ROLE_NAME VARCHAR2(255) NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID),
+                    UNIQUE(UM_ROLE_NAME, UM_TENANT_ID))
+/
+CREATE SEQUENCE UM_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER UM_ROLE_TRIGGER
+                    BEFORE INSERT
+                    ON UM_ROLE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                     SELECT UM_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+ 			  END;
+/             
+
+CREATE TABLE UM_PERMISSION (
+                    UM_ID INTEGER,
+                    UM_RESOURCE_ID VARCHAR2(255) NOT NULL,
+                    UM_ACTION VARCHAR2(255) NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID))
+/
+CREATE SEQUENCE UM_PERMISSION_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER UM_PERMISSION_TRIGGER
+                    BEFORE INSERT
+                    ON UM_PERMISSION
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                     SELECT UM_PERMISSION_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+                    END;
+/   
+
+CREATE TABLE UM_ROLE_PERMISSION (
+		            UM_ID INTEGER,
+                    UM_PERMISSION_ID INTEGER NOT NULL,
+                    UM_ROLE_NAME VARCHAR(255) NOT NULL,
+                    UM_IS_ALLOWED SMALLINT NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    UNIQUE (UM_PERMISSION_ID, UM_ROLE_NAME, UM_TENANT_ID),
+                    FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE  CASCADE,
+                    --FOREIGN KEY (UM_ROLE_ID) REFERENCES UM_ROLE(UM_ID) ON DELETE CASCADE,                    
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID))
+/
+CREATE SEQUENCE UM_ROLE_PERMISSION_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER UM_ROLE_PERMISSION_TRIGGER
+		            BEFORE INSERT
+                    ON UM_ROLE_PERMISSION
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_ROLE_PERMISSION_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+ 			  END;
+/                   
+
+CREATE TABLE UM_USER_PERMISSION (
+		            UM_ID INTEGER,
+		            UM_PERMISSION_ID INTEGER NOT NULL,
+                    UM_USER_NAME VARCHAR(255) NOT NULL,
+                    UM_IS_ALLOWED SMALLINT NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    UNIQUE (UM_PERMISSION_ID, UM_USER_NAME, UM_TENANT_ID),
+                    FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
+                    --FOREIGN KEY (UM_USER_ID) REFERENCES UM_USER(UM_ID) ON DELETE CASCADE,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID))
+/
+CREATE SEQUENCE UM_USER_PERMISSION_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER UM_USER_PERMISSION_TRIGGER
+		            BEFORE INSERT
+		            ON UM_USER_PERMISSION
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_USER_PERMISSION_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+ 			  END;
+/                   
+
+CREATE TABLE UM_USER_ROLE (
+		            UM_ID INTEGER,
+                    UM_ROLE_ID INTEGER NOT NULL,
+                    UM_USER_ID INTEGER NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID),
+                    FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
+                    FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID))
+/
+CREATE SEQUENCE UM_USER_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER UM_USER_ROLE_TRIGGER
+                    BEFORE INSERT
+                    ON UM_USER_ROLE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+ 	                   SELECT UM_USER_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+                    END;
+/
+
+CREATE TABLE HYBRID_ROLE (
+                    UM_ID INTEGER,
+                    UM_ROLE_ID VARCHAR(255) NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID),
+                    UNIQUE(UM_ROLE_ID, UM_TENANT_ID))
+/
+CREATE SEQUENCE HYBRID_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER HYBRID_ROLE_TRIGGER
+                    BEFORE INSERT
+                    ON HYBRID_ROLE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT HYBRID_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+                    END;
+/  
+			
+CREATE TABLE HYBRID_USER_ROLE (
+                    UM_ID INTEGER,
+                    UM_USER_ID VARCHAR(255),
+                    UM_ROLE_ID VARCHAR(255) NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID))
+/
+CREATE SEQUENCE HYBRID_USER_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER HYBRID_USER_ROLE_TRIGGER
+                    BEFORE INSERT
+                    ON HYBRID_USER_ROLE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT HYBRID_USER_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+			  END;
+/                    
+
+CREATE TABLE UM_DIALECT(
+            UM_ID INTEGER, 
+            UM_DIALECT_URI VARCHAR(255) NOT NULL,
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            UNIQUE(UM_DIALECT_URI, UM_TENANT_ID),
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)
+/
+CREATE SEQUENCE UM_DIALECT_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER UM_DIALECT_TRIGGER
+                    BEFORE INSERT
+                    ON UM_DIALECT
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_DIALECT_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+  			  END;
+/                  
+
+CREATE TABLE UM_CLAIM(
+            UM_ID INTEGER, 
+            UM_DIALECT_ID INTEGER NOT NULL, 
+            UM_CLAIM_URI VARCHAR(255) NOT NULL, 
+            UM_DISPLAY_TAG VARCHAR(255), 
+            UM_DESCRIPTION VARCHAR(255), 
+            UM_MAPPED_ATTRIBUTE VARCHAR(255), 
+            UM_REG_EX VARCHAR(255), 
+            UM_SUPPORTED SMALLINT, 
+            UM_REQUIRED SMALLINT, 
+            UM_DISPLAY_ORDER INTEGER,
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_TENANT_ID),
+            FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)
+/
+CREATE SEQUENCE UM_CLAIM_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER UM_CLAIM_TRIGGER
+                    BEFORE INSERT
+                    ON UM_CLAIM
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+	                SELECT UM_CLAIM_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+      		  END;
+/              
+
+CREATE TABLE UM_PROFILE_CONFIG(
+            UM_ID INTEGER, 
+            UM_DIALECT_ID INTEGER, 
+            UM_PROFILE_NAME VARCHAR(255), 
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)
+/
+CREATE SEQUENCE UM_PROFILE_CONFIG_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER UM_PROFILE_CONFIG_TRIGGER
+                    BEFORE INSERT
+                    ON UM_PROFILE_CONFIG
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_PROFILE_CONFIG_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+                    END;
+/
+    
+CREATE TABLE UM_CLAIM_BEHAVIOR(
+            UM_ID INTEGER, 
+            UM_PROFILE_ID INTEGER, 
+            UM_CLAIM_ID INTEGER, 
+            UM_BEHAVIOUR SMALLINT,
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID, UM_TENANT_ID), 
+            FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)
+/
+CREATE SEQUENCE UM_CLAIM_BEHAVIOR_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER UM_CLAIM_BEHAVIOR_TRIGGER
+                    BEFORE INSERT
+                    ON UM_CLAIM_BEHAVIOR
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_CLAIM_BEHAVIOR_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+ 			  END;
+/                   
+
+CREATE TABLE UM_HYBRID_ROLE(
+            UM_ID INTEGER NOT NULL,
+            UM_ROLE_NAME VARCHAR(255),
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)
+/
+CREATE SEQUENCE UM_HYBRID_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER UM_HYBRID_ROLE_TRIGGER
+                    BEFORE INSERT
+                    ON UM_HYBRID_ROLE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_HYBRID_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+              END;
+/
+CREATE TABLE UM_HYBRID_USER_ROLE(
+            UM_ID INTEGER NOT NULL,
+            UM_USER_NAME VARCHAR(255),
+            UM_ROLE_ID INTEGER NOT NULL,
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
+            FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID, UM_TENANT_ID),
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)
+/
+CREATE SEQUENCE UM_HYBRID_USER_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 NOCACHE
+/
+CREATE OR REPLACE TRIGGER UM_HYBRID_USER_ROLE_TRIGGER
+                    BEFORE INSERT
+                    ON UM_HYBRID_USER_ROLE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_HYBRID_USER_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+              END;
+/

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/767082e3/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/oracle_rac.sql
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/oracle_rac.sql b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/oracle_rac.sql
new file mode 100644
index 0000000..4bdffd1
--- /dev/null
+++ b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/oracle_rac.sql
@@ -0,0 +1,644 @@
+CREATE TABLE REG_CLUSTER_LOCK (
+             REG_LOCK_NAME VARCHAR2(20),
+             REG_LOCK_STATUS VARCHAR2(20),
+             REG_LOCKED_TIME TIMESTAMP,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_REG_CLUSTER_LOCK PRIMARY KEY (REG_LOCK_NAME))
+/
+CREATE TABLE REG_LOG (
+             REG_LOG_ID INTEGER,
+             REG_PATH VARCHAR2(2000),
+             REG_USER_ID VARCHAR2(31) NOT NULL,
+             REG_LOGGED_TIME TIMESTAMP  NOT NULL,
+             REG_ACTION INTEGER NOT NULL,
+             REG_ACTION_DATA VARCHAR2(500),
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_REG_LOG PRIMARY KEY (REG_LOG_ID, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_LOG_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER REG_LOG_TRIGGER
+                    BEFORE INSERT
+                    ON REG_LOG
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_LOG_SEQUENCE.nextval INTO :NEW.REG_LOG_ID FROM dual;
+           		   END;
+/	         
+
+CREATE TABLE REG_PATH(
+             REG_PATH_ID INTEGER NULL,
+	         REG_PATH_VALUE VARCHAR2(2000) NOT NULL,
+             REG_PATH_PARENT_ID INTEGER,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_PATH PRIMARY KEY(REG_PATH_ID, REG_TENANT_ID))
+/
+CREATE INDEX REG_PATH_IND_BY_PATH_VALUE ON REG_PATH(REG_PATH_VALUE, REG_TENANT_ID)
+/
+CREATE INDEX REG_PATH_IND_BY_PARENT_ID ON REG_PATH(REG_PATH_PARENT_ID, REG_TENANT_ID)
+/
+CREATE SEQUENCE REG_PATH_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER REG_PATH_TRIGGER
+                    BEFORE INSERT
+                    ON REG_PATH
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_PATH_SEQUENCE.nextval INTO :NEW.REG_PATH_ID FROM dual;
+ 			   END;
+/                   
+
+CREATE TABLE REG_CONTENT (
+             REG_CONTENT_ID INTEGER,
+             REG_CONTENT_DATA BLOB,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_REG_CONTENT PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_CONTENT_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER REG_CONTENT_TRIGGER
+                    BEFORE INSERT
+                    ON REG_CONTENT
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_CONTENT_SEQUENCE.nextval INTO :NEW.REG_CONTENT_ID FROM dual;
+ 			   END;
+/                   
+
+CREATE TABLE REG_CONTENT_HISTORY (
+             REG_CONTENT_ID INTEGER NOT NULL,
+             REG_CONTENT_DATA BLOB,
+             REG_DELETED   SMALLINT,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_REG_CONTENT_HISTORY PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID))
+/
+CREATE TABLE REG_RESOURCE (
+            REG_PATH_ID         INTEGER NOT NULL,
+            REG_NAME            VARCHAR2(256),
+            REG_VERSION         INTEGER,
+            REG_MEDIA_TYPE      VARCHAR2(500),
+            REG_CREATOR         VARCHAR2(31) NOT NULL,
+            REG_CREATED_TIME    TIMESTAMP NOT NULL,
+            REG_LAST_UPDATOR    VARCHAR2(31),
+            REG_LAST_UPDATED_TIME    TIMESTAMP NOT NULL,
+            REG_DESCRIPTION     VARCHAR2(1000),
+            REG_CONTENT_ID      INTEGER,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),          
+            CONSTRAINT PK_REG_RESOURCE PRIMARY KEY(REG_VERSION, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_RESOURCE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER REG_RESOURCE_TRIGGER
+                    BEFORE INSERT
+                    ON REG_RESOURCE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_RESOURCE_SEQUENCE.nextval INTO :NEW.REG_VERSION FROM dual;
+ 			   END;
+/                   
+
+CREATE INDEX REG_RESOURCE_IND_BY_NAME ON REG_RESOURCE(REG_NAME, REG_TENANT_ID)
+/
+CREATE INDEX REG_RESOURCE_IND_BY_PATH_ID ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID)
+/
+CREATE TABLE REG_RESOURCE_HISTORY (
+            REG_PATH_ID         INTEGER NOT NULL,
+            REG_NAME            VARCHAR2(256),
+            REG_VERSION         INTEGER NOT NULL,
+            REG_MEDIA_TYPE      VARCHAR2(500),
+            REG_CREATOR         VARCHAR2(31) NOT NULL,
+            REG_CREATED_TIME    TIMESTAMP NOT NULL,
+            REG_LAST_UPDATOR    VARCHAR2(31),
+            REG_LAST_UPDATED_TIME    TIMESTAMP NOT NULL,
+            REG_DESCRIPTION     VARCHAR2(1000),
+            REG_CONTENT_ID      INTEGER,
+            REG_DELETED         SMALLINT,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
+            FOREIGN KEY (REG_CONTENT_ID,REG_TENANT_ID) REFERENCES REG_CONTENT_HISTORY (REG_CONTENT_ID,REG_TENANT_ID),            
+            CONSTRAINT PK_REG_RESOURCE_HISTORY PRIMARY KEY(REG_VERSION, REG_TENANT_ID))
+/
+CREATE INDEX REG_RES_HIST_IND_BY_NAME ON REG_RESOURCE_HISTORY(REG_NAME, REG_TENANT_ID)
+/
+CREATE INDEX REG_RES_HIST_IND_BY_PATH_ID ON REG_RESOURCE_HISTORY(REG_PATH_ID, REG_NAME, REG_TENANT_ID)
+/
+CREATE TABLE REG_COMMENT (
+            REG_ID        INTEGER,
+            REG_COMMENT_TEXT      VARCHAR2(500) NOT NULL,
+            REG_USER_ID           VARCHAR2(31) NOT NULL,
+            REG_COMMENTED_TIME    TIMESTAMP NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_COMMENT PRIMARY KEY(REG_ID, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_COMMENT_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER REG_COMMENT_TRIGGER
+                    BEFORE INSERT
+                    ON REG_COMMENT
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_COMMENT_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
+ 			   END;
+/                   
+
+CREATE TABLE REG_RESOURCE_COMMENT (
+            REG_COMMENT_ID          INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR2(256),
+            FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
+            FOREIGN KEY (REG_COMMENT_ID,REG_TENANT_ID) REFERENCES REG_COMMENT (REG_ID,REG_TENANT_ID),            
+            REG_TENANT_ID INTEGER DEFAULT 0) 
+/
+CREATE INDEX REG_RES_COMM_BY_PATH_ID ON REG_RESOURCE_COMMENT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
+/
+CREATE INDEX REG_RES_COMM_BY_VERSION ON REG_RESOURCE_COMMENT(REG_VERSION, REG_TENANT_ID)
+/
+CREATE TABLE REG_RATING (
+            REG_ID     INTEGER,
+            REG_RATING        INTEGER NOT NULL,
+            REG_USER_ID       VARCHAR2(31) NOT NULL,
+            REG_RATED_TIME    TIMESTAMP NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_RATING PRIMARY KEY(REG_ID, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_RATING_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER REG_RATING_TRIGGER
+                    BEFORE INSERT
+                    ON REG_RATING
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_RATING_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
+                     END;
+/
+				
+CREATE TABLE REG_RESOURCE_RATING (
+            REG_RATING_ID           INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR2(256),
+            FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
+            FOREIGN KEY (REG_RATING_ID,REG_TENANT_ID) REFERENCES REG_RATING (REG_ID,REG_TENANT_ID),           
+            REG_TENANT_ID INTEGER DEFAULT 0)
+/
+CREATE INDEX REG_RATING_IND_BY_PATH_ID ON REG_RESOURCE_RATING(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
+/
+CREATE INDEX REG_RATING_IND_BY_VERSION ON REG_RESOURCE_RATING(REG_VERSION, REG_TENANT_ID)
+/
+CREATE TABLE REG_TAG (
+            REG_ID         INTEGER,
+            REG_TAG_NAME       VARCHAR2(500) NOT NULL,
+            REG_USER_ID        VARCHAR2(31) NOT NULL,
+            REG_TAGGED_TIME    TIMESTAMP NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_TAG PRIMARY KEY(REG_ID, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_TAG_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER REG_TAG_TRIGGER
+                    BEFORE INSERT
+                    ON REG_TAG
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_TAG_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
+                     END;
+/  
+			
+
+CREATE TABLE REG_RESOURCE_TAG (
+            REG_TAG_ID              INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR2(256),
+            FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
+            FOREIGN KEY (REG_TAG_ID,REG_TENANT_ID) REFERENCES REG_TAG (REG_ID,REG_TENANT_ID),            
+            REG_TENANT_ID INTEGER DEFAULT 0)
+/
+CREATE INDEX REG_TAG_IND_BY_PATH_ID ON REG_RESOURCE_TAG(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
+/
+CREATE INDEX REG_TAG_IND_BY_VERSION ON REG_RESOURCE_TAG(REG_VERSION, REG_TENANT_ID)
+/
+CREATE TABLE REG_PROPERTY (
+            REG_ID         INTEGER,
+            REG_NAME       VARCHAR2(100) NOT NULL,
+            REG_VALUE        VARCHAR2(1000),
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_PROPERTY PRIMARY KEY(REG_ID, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_PROPERTY_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER REG_PROPERTY_TRIGGER
+                    BEFORE INSERT
+                    ON REG_PROPERTY
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_PROPERTY_SEQUENCE.nextval INTO :NEW.REG_ID FROM dual;
+ 			   END;
+/                   
+
+CREATE TABLE REG_RESOURCE_PROPERTY (
+            REG_PROPERTY_ID         INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR2(256),
+            FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
+            FOREIGN KEY (REG_PROPERTY_ID,REG_TENANT_ID) REFERENCES REG_PROPERTY (REG_ID,REG_TENANT_ID),           
+            REG_TENANT_ID INTEGER DEFAULT 0)
+/
+CREATE INDEX REG_RESC_PROP_BY_VERN_PROPID ON REG_RESOURCE_PROPERTY(REG_PROPERTY_ID,REG_VERSION, REG_TENANT_ID)
+/
+CREATE INDEX REG_RESC_PROP_BY_VERN_PATHNAME ON REG_RESOURCE_PROPERTY(REG_PROPERTY_ID,REG_PATH_ID,REG_RESOURCE_NAME, REG_TENANT_ID)
+/
+CREATE TABLE REG_ASSOCIATION (
+            REG_ASSOCIATION_ID INTEGER,
+            REG_SOURCEPATH VARCHAR2 (2000) NOT NULL,
+            REG_TARGETPATH VARCHAR2 (2000) NOT NULL,
+            REG_ASSOCIATION_TYPE VARCHAR2 (2000) NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_ASSOCIATION PRIMARY KEY (REG_ASSOCIATION_ID, REG_TENANT_ID))
+/
+CREATE SEQUENCE REG_ASSOCIATION_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER REG_ASSOCIATION_TRIGGER
+                    BEFORE INSERT
+                    ON REG_ASSOCIATION
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_ASSOCIATION_SEQUENCE.nextval INTO :NEW.REG_ASSOCIATION_ID FROM dual;
+ 			   END;
+/                   
+
+CREATE TABLE REG_SNAPSHOT (
+            REG_SNAPSHOT_ID     INTEGER,
+            REG_PATH_ID            INTEGER NOT NULL,
+            REG_RESOURCE_NAME      VARCHAR2(256),
+            REG_RESOURCE_VIDS     BLOB NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            FOREIGN KEY (REG_PATH_ID,REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID,REG_TENANT_ID),
+            CONSTRAINT PK_REG_SNAPSHOT PRIMARY KEY(REG_SNAPSHOT_ID, REG_TENANT_ID))
+/
+CREATE INDEX REG_SNAPSHOT_PATH_ID ON REG_SNAPSHOT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID)
+/
+CREATE SEQUENCE REG_SNAPSHOT_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER REG_SNAPSHOT_TRIGGER
+                    BEFORE INSERT
+                    ON REG_SNAPSHOT
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                     BEGIN
+                       SELECT REG_SNAPSHOT_SEQUENCE.nextval INTO :NEW.REG_SNAPSHOT_ID FROM dual;
+                     END;
+/
+/
+CREATE TABLE UM_TENANT (
+                    UM_ID INTEGER,
+                    UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
+                    UM_EMAIL VARCHAR(255),
+                    UM_ACTIVE NUMBER(1) DEFAULT 0,
+                    PRIMARY KEY (UM_ID),
+                    UNIQUE(UM_DOMAIN_NAME))
+/
+CREATE SEQUENCE UM_TENANT_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER UM_TENANT_TRIGGER
+		            BEFORE INSERT
+                    ON UM_TENANT
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                     SELECT UM_TENANT_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+                    END;
+/
+CREATE TABLE UM_USER (
+                    UM_ID INTEGER,
+                    UM_USER_NAME VARCHAR2(255) NOT NULL,
+                    UM_USER_PASSWORD VARCHAR2(255) NOT NULL,
+                    UM_SALT_VALUE VARCHAR(31),
+                    UM_REQUIRE_CHANGE NUMBER(1) DEFAULT 0,
+                    UM_CHANGED_TIME TIMESTAMP NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID),
+                    UNIQUE(UM_USER_NAME, UM_TENANT_ID))
+/
+CREATE SEQUENCE UM_USER_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER UM_USER_TRIGGER
+		            BEFORE INSERT
+                    ON UM_USER
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                     SELECT UM_USER_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+                    END;
+/
+		
+CREATE TABLE UM_USER_ATTRIBUTE (
+                    UM_ID INTEGER,
+                    UM_ATTR_NAME VARCHAR2(255) NOT NULL,
+                    UM_ATTR_VALUE VARCHAR2(255),
+                    UM_PROFILE_ID VARCHAR(255),
+                    UM_USER_ID INTEGER,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID))
+/
+CREATE SEQUENCE UM_USER_ATTRIBUTE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER UM_USER_ATTRIBUTE_TRIGGER
+                    BEFORE INSERT
+                    ON UM_USER_ATTRIBUTE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_USER_ATTRIBUTE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+ 			  END;
+/                   
+
+CREATE TABLE UM_ROLE (
+                    UM_ID INTEGER,
+                    UM_ROLE_NAME VARCHAR2(255) NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID),
+                    UNIQUE(UM_ROLE_NAME, UM_TENANT_ID))
+/
+CREATE SEQUENCE UM_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER UM_ROLE_TRIGGER
+                    BEFORE INSERT
+                    ON UM_ROLE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                     SELECT UM_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+ 			  END;
+/             
+
+CREATE TABLE UM_PERMISSION (
+                    UM_ID INTEGER,
+                    UM_RESOURCE_ID VARCHAR2(255) NOT NULL,
+                    UM_ACTION VARCHAR2(255) NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID))
+/
+CREATE SEQUENCE UM_PERMISSION_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER UM_PERMISSION_TRIGGER
+                    BEFORE INSERT
+                    ON UM_PERMISSION
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                     SELECT UM_PERMISSION_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+                    END;
+/   
+
+CREATE TABLE UM_ROLE_PERMISSION (
+		            UM_ID INTEGER,
+                    UM_PERMISSION_ID INTEGER NOT NULL,
+                    UM_ROLE_NAME VARCHAR(255) NOT NULL,
+                    UM_IS_ALLOWED SMALLINT NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    UNIQUE (UM_PERMISSION_ID, UM_ROLE_NAME, UM_TENANT_ID),
+                    FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE  CASCADE,
+                    --FOREIGN KEY (UM_ROLE_ID) REFERENCES UM_ROLE(UM_ID) ON DELETE CASCADE,                    
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID))
+/
+CREATE SEQUENCE UM_ROLE_PERMISSION_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER UM_ROLE_PERMISSION_TRIGGER
+		            BEFORE INSERT
+                    ON UM_ROLE_PERMISSION
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_ROLE_PERMISSION_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+ 			  END;
+/                   
+
+CREATE TABLE UM_USER_PERMISSION (
+		            UM_ID INTEGER,
+		            UM_PERMISSION_ID INTEGER NOT NULL,
+                    UM_USER_NAME VARCHAR(255) NOT NULL,
+                    UM_IS_ALLOWED SMALLINT NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    UNIQUE (UM_PERMISSION_ID, UM_USER_NAME, UM_TENANT_ID),
+                    FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
+                    --FOREIGN KEY (UM_USER_ID) REFERENCES UM_USER(UM_ID) ON DELETE CASCADE,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID))
+/
+CREATE SEQUENCE UM_USER_PERMISSION_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER UM_USER_PERMISSION_TRIGGER
+		            BEFORE INSERT
+		            ON UM_USER_PERMISSION
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_USER_PERMISSION_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+ 			  END;
+/                   
+
+CREATE TABLE UM_USER_ROLE (
+		            UM_ID INTEGER,
+                    UM_ROLE_ID INTEGER NOT NULL,
+                    UM_USER_ID INTEGER NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID),
+                    FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
+                    FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID))
+/
+CREATE SEQUENCE UM_USER_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER UM_USER_ROLE_TRIGGER
+                    BEFORE INSERT
+                    ON UM_USER_ROLE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+ 	                   SELECT UM_USER_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+                    END;
+/
+
+CREATE TABLE HYBRID_ROLE (
+                    UM_ID INTEGER,
+                    UM_ROLE_ID VARCHAR(255) NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID),
+                    UNIQUE(UM_ROLE_ID, UM_TENANT_ID))
+/
+CREATE SEQUENCE HYBRID_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER HYBRID_ROLE_TRIGGER
+                    BEFORE INSERT
+                    ON HYBRID_ROLE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT HYBRID_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+                    END;
+/  
+			
+CREATE TABLE HYBRID_USER_ROLE (
+                    UM_ID INTEGER,
+                    UM_USER_ID VARCHAR(255),
+                    UM_ROLE_ID VARCHAR(255) NOT NULL,
+                    UM_TENANT_ID INTEGER DEFAULT 0,
+                    PRIMARY KEY (UM_ID, UM_TENANT_ID))
+/
+CREATE SEQUENCE HYBRID_USER_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER HYBRID_USER_ROLE_TRIGGER
+                    BEFORE INSERT
+                    ON HYBRID_USER_ROLE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT HYBRID_USER_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+			  END;
+/                    
+
+CREATE TABLE UM_DIALECT(
+            UM_ID INTEGER, 
+            UM_DIALECT_URI VARCHAR(255) NOT NULL,
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            UNIQUE(UM_DIALECT_URI, UM_TENANT_ID),
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)
+/
+CREATE SEQUENCE UM_DIALECT_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER UM_DIALECT_TRIGGER
+                    BEFORE INSERT
+                    ON UM_DIALECT
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_DIALECT_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+  			  END;
+/                  
+
+CREATE TABLE UM_CLAIM(
+            UM_ID INTEGER, 
+            UM_DIALECT_ID INTEGER NOT NULL, 
+            UM_CLAIM_URI VARCHAR(255) NOT NULL, 
+            UM_DISPLAY_TAG VARCHAR(255), 
+            UM_DESCRIPTION VARCHAR(255), 
+            UM_MAPPED_ATTRIBUTE VARCHAR(255), 
+            UM_REG_EX VARCHAR(255), 
+            UM_SUPPORTED SMALLINT, 
+            UM_REQUIRED SMALLINT, 
+            UM_DISPLAY_ORDER INTEGER,
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_TENANT_ID),
+            FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)
+/
+CREATE SEQUENCE UM_CLAIM_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER UM_CLAIM_TRIGGER
+                    BEFORE INSERT
+                    ON UM_CLAIM
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+	                SELECT UM_CLAIM_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+      		  END;
+/              
+
+CREATE TABLE UM_PROFILE_CONFIG(
+            UM_ID INTEGER, 
+            UM_DIALECT_ID INTEGER, 
+            UM_PROFILE_NAME VARCHAR(255), 
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)
+/
+CREATE SEQUENCE UM_PROFILE_CONFIG_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER UM_PROFILE_CONFIG_TRIGGER
+                    BEFORE INSERT
+                    ON UM_PROFILE_CONFIG
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_PROFILE_CONFIG_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+                    END;
+/
+    
+CREATE TABLE UM_CLAIM_BEHAVIOR(
+            UM_ID INTEGER, 
+            UM_PROFILE_ID INTEGER, 
+            UM_CLAIM_ID INTEGER, 
+            UM_BEHAVIOUR SMALLINT,
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID, UM_TENANT_ID), 
+            FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)
+/
+CREATE SEQUENCE UM_CLAIM_BEHAVIOR_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER UM_CLAIM_BEHAVIOR_TRIGGER
+                    BEFORE INSERT
+                    ON UM_CLAIM_BEHAVIOR
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_CLAIM_BEHAVIOR_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+ 			  END;
+/                   
+
+CREATE TABLE UM_HYBRID_ROLE(
+            UM_ID INTEGER NOT NULL,
+            UM_ROLE_NAME VARCHAR(255),
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)
+/
+CREATE SEQUENCE UM_HYBRID_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER UM_HYBRID_ROLE_TRIGGER
+                    BEFORE INSERT
+                    ON UM_HYBRID_ROLE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_HYBRID_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+              END;
+/
+CREATE TABLE UM_HYBRID_USER_ROLE(
+            UM_ID INTEGER NOT NULL,
+            UM_USER_NAME VARCHAR(255),
+            UM_ROLE_ID INTEGER NOT NULL,
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
+            FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID, UM_TENANT_ID),
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+)
+/
+CREATE SEQUENCE UM_HYBRID_USER_ROLE_SEQUENCE START WITH 1 INCREMENT BY 1 CACHE 20 ORDER
+/
+CREATE OR REPLACE TRIGGER UM_HYBRID_USER_ROLE_TRIGGER
+                    BEFORE INSERT
+                    ON UM_HYBRID_USER_ROLE
+                    REFERENCING NEW AS NEW
+                    FOR EACH ROW
+                    BEGIN
+                    SELECT UM_HYBRID_USER_ROLE_SEQUENCE.nextval INTO :NEW.UM_ID FROM dual;
+              END;
+/