http://git-wip-us.apache.org/repos/asf/hive/blob/93b9cdd6/standalone-metastore/metastore-common/src/main/resources/package.jdo
----------------------------------------------------------------------
diff --cc standalone-metastore/metastore-common/src/main/resources/package.jdo
index 0000000,5fb548c..70150da
mode 000000,100644..100644
--- a/standalone-metastore/metastore-common/src/main/resources/package.jdo
+++ b/standalone-metastore/metastore-common/src/main/resources/package.jdo
@@@ -1,0 -1,1420 +1,1426 @@@
+ <?xml version="1.0"?>
+ <!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+ <!DOCTYPE jdo PUBLIC "-//Sun Microsystems, Inc.//DTD Java Data Objects
Metadata 2.0//EN"
+ "http://java.sun.com/dtd/jdo_2_0.dtd">
+ <!--
+ Size Limitations:
+
+ Indexed VARCHAR: 767 bytes (MySQL running on InnoDB Engine
http://bugs.mysql.com/bug.php?id=13315)
+ Non-indexed VARCHAR: 4000 bytes (max length on Oracle 9i/10g/11g)
+
+ -->
+ <jdo>
+ <package name="org.apache.hadoop.hive.metastore.model">
+ <class name="MDatabase" identity-type="datastore" table="DBS"
detachable="true">
+ <datastore-identity>
+ <column name="DB_ID"/>
+ </datastore-identity>
+ <index name="UniqueDatabase" unique="true">
+ <column name="NAME"/>
+ <column name="CTLG_NAME"/>
+ </index>
+ <field name="name">
+ <column name="NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="catalogName">
+ <column name="CTLG_NAME" length="256" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="description">
+ <column name="DESC" length="4000" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ <field name="locationUri">
+ <column name="DB_LOCATION_URI" length="4000" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="parameters" table="DATABASE_PARAMS">
+ <map key-type="java.lang.String" value-type="java.lang.String"/>
+ <join>
+ <column name="DB_ID"/>
+ </join>
+ <key>
+ <column name="PARAM_KEY" length="180" jdbc-type="VARCHAR"/>
+ </key>
+ <value>
+ <column name="PARAM_VALUE" length="4000" jdbc-type="VARCHAR"/>
+ </value>
+ </field>
+ <field name="ownerName">
+ <column name="OWNER_NAME" length="128" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ <field name="ownerType">
+ <column name="OWNER_TYPE" length="10" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ </class>
+
+ <class name="MCatalog" identity-type="datastore" table="CTLGS"
detachable="true">
+ <datastore-identity>
+ <column name="CTLG_ID"/>
+ </datastore-identity>
+ <field name="name">
+ <column name="NAME" length="256" jdbc-type="VARCHAR"/>
+ <index name="UniqueCatalog" unique="true"/>
+ </field>
+ <field name="description">
+ <column name="DESC" length="4000" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ <field name="locationUri">
+ <column name="LOCATION_URI" length="4000" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ </class>
+
+ <class name="MFieldSchema" embedded-only="true" table="TYPE_FIELDS"
detachable="true">
+ <field name="name">
+ <column name="FNAME" length="767" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="type" >
+ <column name="FTYPE" length="32672" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="comment" >
+ <column name="FCOMMENT" length="4000" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ </class>
+
+ <class name="MType" table="TYPES" detachable="true">
+ <field name="name" >
+ <column name="TYPE_NAME" length="128" jdbc-type="VARCHAR"/>
+ <index name="UniqueType" unique="true"/>
+ </field>
+ <field name="type1">
+ <column name="TYPE1" length="767" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="type2">
+ <column name="TYPE2" length="767" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="fields" table="TYPE_FIELDS" >
+ <collection element-type="MFieldSchema"/>
+ <join>
+ <primary-key name="TYPE_FIELDS_PK">
+ <column name="TYPE_NAME"/>
+ <column name="FIELD_NAME"/>
+ </primary-key>
+ <column name="TYPE_NAME"/>
+ </join>
+ <element>
+ <embedded>
+ <field name="name">
+ <column name="FIELD_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="type">
+ <column name="FIELD_TYPE" length="767" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="comment" >
+ <column name="COMMENT" length="256" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ </embedded>
+ </element>
+ </field>
+ </class>
+
+ <class name="MTable" table="TBLS" identity-type="datastore"
detachable="true">
+ <datastore-identity>
+ <column name="TBL_ID"/>
+ </datastore-identity>
+ <index name="UniqueTable" unique="true">
+ <column name="TBL_NAME"/>
+ <column name="DB_ID"/>
+ </index>
+ <field name="tableName">
+ <column name="TBL_NAME" length="256" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="database">
+ <column name="DB_ID"/>
+ </field>
+ <field name="partitionKeys" table="PARTITION_KEYS" >
+ <collection element-type="MFieldSchema"/>
+ <join>
+ <primary-key name="PARTITION_KEY_PK">
+ <column name="TBL_ID"/>
+ <column name="PKEY_NAME"/>
+ </primary-key>
+ <column name="TBL_ID"/>
+ </join>
+ <element>
+ <embedded>
+ <field name="name">
+ <column name="PKEY_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="type">
+ <column name="PKEY_TYPE" length="767" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="comment" >
+ <column name="PKEY_COMMENT" length="4000" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ </embedded>
+ </element>
+ </field>
+ <field name="sd" dependent="true">
+ <column name="SD_ID"/>
+ </field>
+ <field name="owner">
+ <column name="OWNER" length="767" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="ownerType">
+ <column name="OWNER_TYPE" length="10" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ <field name="createTime">
+ <column name="CREATE_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="lastAccessTime">
+ <column name="LAST_ACCESS_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="retention">
+ <column name="RETENTION" jdbc-type="integer"/>
+ </field>
+ <field name="parameters" table="TABLE_PARAMS">
+ <map key-type="java.lang.String" value-type="java.lang.String"/>
+ <join>
+ <column name="TBL_ID"/>
+ </join>
+ <key>
+ <column name="PARAM_KEY" length="256" jdbc-type="VARCHAR"/>
+ </key>
+ <value>
+ <column name="PARAM_VALUE" length="32672" jdbc-type="VARCHAR"/>
+ </value>
+ </field>
+ <field name="viewOriginalText" default-fetch-group="false">
+ <column name="VIEW_ORIGINAL_TEXT" jdbc-type="LONGVARCHAR"/>
+ </field>
+ <field name="viewExpandedText" default-fetch-group="false">
+ <column name="VIEW_EXPANDED_TEXT" jdbc-type="LONGVARCHAR"/>
+ </field>
+ <field name="rewriteEnabled">
+ <column name="IS_REWRITE_ENABLED"/>
+ </field>
+ <field name="tableType">
+ <column name="TBL_TYPE" length="128" jdbc-type="VARCHAR"/>
+ </field>
++ <field name="writeId">
++ <column name="WRITE_ID"/>
++ </field>
+ </class>
+
+ <class name="MCreationMetadata" identity-type="datastore"
table="MV_CREATION_METADATA" detachable="true">
+ <datastore-identity>
+ <column name="MV_CREATION_METADATA_ID"/>
+ </datastore-identity>
+ <field name="catalogName">
+ <column name="CAT_NAME" length="256" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="dbName">
+ <column name="DB_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="tblName">
+ <column name="TBL_NAME" length="256" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="tables" table="MV_TABLES_USED">
+ <collection element-type="MTable"/>
+ <join>
+ <column name="MV_CREATION_METADATA_ID"/>
+ </join>
+ <element column="TBL_ID"/>
+ </field>
+ <field name="txnList">
+ <column name="TXN_LIST" jdbc-type="CLOB" allows-null="true"/>
+ </field>
+ </class>
+
+ <class name="MConstraint" identity-type="application"
table="KEY_CONSTRAINTS" detachable="true" objectid-class="MConstraint$PK">
+ <field name="constraintName" primary-key="true">
+ <column name="CONSTRAINT_NAME"/>
+ </field>
+ <field name="position" primary-key="true">
+ <column name="POSITION"/>
+ </field>
+ <field name="childColumn">
+ <column name="CHILD_CD_ID"/>
+ </field>
+ <field name="childIntegerIndex">
+ <column name="CHILD_INTEGER_IDX"/>
+ </field>
+ <field name="childTable">
+ <column name="CHILD_TBL_ID"/>
+ </field>
+ <field name="parentColumn">
+ <column name="PARENT_CD_ID"/>
+ </field>
+ <field name="parentIntegerIndex">
+ <column name="PARENT_INTEGER_IDX"/>
+ </field>
+ <field name="parentTable">
+ <column name="PARENT_TBL_ID"/>
+ </field>
+ <field name="constraintType">
+ <column name="CONSTRAINT_TYPE"/>
+ </field>
+ <field name="deleteRule">
+ <column name="DELETE_RULE"/>
+ </field>
+ <field name="updateRule">
+ <column name="UPDATE_RULE"/>
+ </field>
+ <field name="enableValidateRely">
+ <column name="ENABLE_VALIDATE_RELY"/>
+ </field>
+ </class>
+
+ <class name="MSerDeInfo" identity-type="datastore" table="SERDES"
detachable="true">
+ <datastore-identity>
+ <column name="SERDE_ID"/>
+ </datastore-identity>
+ <field name="name">
+ <column name="NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="serializationLib">
+ <column name="SLIB" length="4000" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ <field name="parameters" table="SERDE_PARAMS">
+ <map key-type="java.lang.String" value-type="java.lang.String"/>
+ <join>
+ <column name="SERDE_ID"/>
+ </join>
+ <key>
+ <column name="PARAM_KEY" length="256" jdbc-type="VARCHAR"/>
+ </key>
+ <value>
+ <column name="PARAM_VALUE" length="32672" jdbc-type="VARCHAR"/>
+ </value>
+ </field>
+ <field name="description">
+ <column name="DESCRIPTION" length="4000" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ <field name="serializerClass">
+ <column name="SERIALIZER_CLASS" length="4000" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ <field name="deserializerClass">
+ <column name="DESERIALIZER_CLASS" length="4000" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ <field name="serdeType">
+ <column name="SERDE_TYPE" jdbc-type="integer" allows-null="true"/>
+ </field>
+ </class>
+
+ <class name="MOrder" embedded-only="true" table="SORT_ORDER"
detachable="true">
+ <field name="col">
+ <column name="COL_NAME" length="767" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="order">
+ <column name="ORDER" jdbc-type="INTEGER" allows-null="false"/>
+ </field>
+ </class>
+
+ <class name="MColumnDescriptor" identity-type="datastore" table="CDS"
detachable="true">
+ <datastore-identity>
+ <column name="CD_ID"/>
+ </datastore-identity>
+ <field name="cols" table="COLUMNS_V2" >
+ <collection element-type="MFieldSchema"/>
+ <join>
+ <primary-key name="COLUMNS_PK">
+ <column name="COLUMN_NAME"/>
+ </primary-key>
+ <column name="CD_ID"/>
+ </join>
+ <element>
+ <embedded>
+ <field name="name">
+ <column name="COLUMN_NAME" length="767" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="type">
+ <column name="TYPE_NAME" length="32672" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="comment">
+ <column name="COMMENT" length="256" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ </embedded>
+ </element>
+ </field>
+ </class>
+
+ <class name="MStringList" identity-type="datastore"
table="Skewed_STRING_LIST" detachable="true">
+ <datastore-identity>
+ <column name="STRING_LIST_ID"/>
+ </datastore-identity>
+ <field name="internalList" table="Skewed_STRING_LIST_VALUES">
+ <collection element-type="java.lang.String"/>
+ <join>
+ <column name="STRING_LIST_ID"/>
+ </join>
+ <element column="STRING_LIST_VALUE"/>
+ </field>
+ </class>
+
+ <class name="MStorageDescriptor" identity-type="datastore" table="SDS"
detachable="true">
+ <datastore-identity>
+ <column name="SD_ID"/>
+ </datastore-identity>
+ <field name="cd">
+ <column name="CD_ID"/>
+ </field>
+ <field name="location">
+ <column name="LOCATION" length="4000" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="inputFormat">
+ <column name="INPUT_FORMAT" length="4000" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="outputFormat">
+ <column name="OUTPUT_FORMAT" length="4000" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="isCompressed">
+ <column name="IS_COMPRESSED"/>
+ </field>
+ <field name="isStoredAsSubDirectories">
+ <column name="IS_STOREDASSUBDIRECTORIES"/>
+ </field>
+ <field name="numBuckets">
+ <column name="NUM_BUCKETS" jdbc-type="integer"/>
+ </field>
+ <field name="serDeInfo" dependent="true">
+ <column name="SERDE_ID"/>
+ </field>
+ <field name="bucketCols" table="BUCKETING_COLS">
+ <collection element-type="java.lang.String"/>
+ <join>
+ <column name="SD_ID"/>
+ </join>
+ <element column="BUCKET_COL_NAME"/>
+ </field>
+ <field name="sortCols" table="SORT_COLS">
+ <collection element-type="MOrder"/>
+ <join>
+ <column name="SD_ID"/>
+ </join>
+ <element>
+ <embedded>
+ <field name="col">
+ <column name="COLUMN_NAME" length="767" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="order">
+ <column name="ORDER" jdbc-type="INTEGER" allows-null="false"/>
+ </field>
+ </embedded>
+ </element>
+ </field>
+ <field name="parameters" table="SD_PARAMS">
+ <map key-type="java.lang.String" value-type="java.lang.String"/>
+ <join>
+ <column name="SD_ID"/>
+ </join>
+ <key>
+ <column name="PARAM_KEY" length="256" jdbc-type="VARCHAR"/>
+ </key>
+ <value>
+ <column name="PARAM_VALUE" length="32672" jdbc-type="VARCHAR"/>
+ </value>
+ </field>
+ <field name="skewedColNames" table="SKEWED_COL_NAMES">
+ <collection element-type="java.lang.String"/>
+ <join>
+ <column name="SD_ID"/>
+ </join>
+ <element column="SKEWED_COL_NAME"/>
+ </field>
+ <field name="skewedColValues" table="SKEWED_VALUES">
+ <collection element-type="MStringList"/>
+ <join/>
+ </field>
+ <field name="skewedColValueLocationMaps"
table="SKEWED_COL_VALUE_LOC_MAP">
+ <map key-type="MStringList" value-type="java.lang.String"/>
+ <join>
+ <column name="SD_ID"/>
+ </join>
+ <value>
+ <column name="location" length="4000" jdbc-type="VARCHAR"/>
+ </value>
+ </field>
+ </class>
+
+ <class name="MPartition" table="PARTITIONS" identity-type="datastore"
detachable="true">
+ <index name="UniquePartition" unique="true">
+ <column name="PART_NAME"/>
+ <column name="TBL_ID"/>
+ </index>
+ <datastore-identity>
+ <column name="PART_ID"/>
+ </datastore-identity>
+ <field name="partitionName">
+ <column name="PART_NAME" length="767" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="table">
+ <column name="TBL_ID"/>
+ </field>
+ <field name="createTime">
+ <column name="CREATE_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="lastAccessTime">
+ <column name="LAST_ACCESS_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="values" table="PARTITION_KEY_VALS">
+ <collection element-type="java.lang.String"/>
+ <join>
+ <column name="PART_ID"/>
+ </join>
+ <element column="PART_KEY_VAL"/>
+ </field>
+ <field name="sd" dependent="true">
+ <column name="SD_ID"/>
+ </field>
+ <field name="parameters" table="PARTITION_PARAMS">
+ <map key-type="java.lang.String" value-type="java.lang.String"/>
+ <join>
+ <column name="PART_ID"/>
+ </join>
+ <key>
+ <column name="PARAM_KEY" length="256" jdbc-type="VARCHAR"/>
+ </key>
+ <value>
+ <column name="PARAM_VALUE" length="4000" jdbc-type="VARCHAR"/>
+ </value>
+ </field>
++ <field name="writeId">
++ <column name="WRITE_ID"/>
++ </field>
+ </class>
+
+ <class name="MIndex" table="IDXS" identity-type="datastore"
detachable="true">
+ <index name="UniqueINDEX" unique="true">
+ <column name="INDEX_NAME"/>
+ <column name="ORIG_TBL_ID"/>
+ </index>
+
+ <datastore-identity>
+ <column name="INDEX_ID"/>
+ </datastore-identity>
+ <field name="indexName">
+ <column name="INDEX_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="origTable">
+ <column name="ORIG_TBL_ID"/>
+ </field>
+ <field name="indexTable">
+ <column name="INDEX_TBL_ID"/>
+ </field>
+ <field name="indexHandlerClass">
+ <column name="INDEX_HANDLER_CLASS" length="4000" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="deferredRebuild">
+ <column name="DEFERRED_REBUILD"/>
+ </field>
+ <field name="createTime">
+ <column name="CREATE_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="lastAccessTime">
+ <column name="LAST_ACCESS_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="sd" dependent="true">
+ <column name="SD_ID"/>
+ </field>
+ <field name="parameters" table="INDEX_PARAMS">
+ <map key-type="java.lang.String" value-type="java.lang.String"/>
+ <join>
+ <column name="INDEX_ID"/>
+ </join>
+ <key>
+ <column name="PARAM_KEY" length="256" jdbc-type="VARCHAR"/>
+ </key>
+ <value>
+ <column name="PARAM_VALUE" length="4000" jdbc-type="VARCHAR"/>
+ </value>
+ </field>
+ </class>
+
+ <class name="MRole" table="ROLES" identity-type="datastore"
detachable="true">
+
+ <index name="RoleEntityINDEX" unique="true">
+ <column name="ROLE_NAME"/>
+ </index>
+
+ <datastore-identity>
+ <column name="ROLE_ID"/>
+ </datastore-identity>
+
+ <field name="roleName">
+ <column name="ROLE_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="createTime">
+ <column name="CREATE_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="ownerName">
+ <column name="OWNER_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+
+ </class>
+
+ <class name="MRoleMap" table="ROLE_MAP" identity-type="datastore"
detachable="true">
+ <index name="UserRoleMapINDEX" unique="true">
+ <column name="PRINCIPAL_NAME"/>
+ <column name="ROLE_ID"/>
+ <column name="GRANTOR"/>
+ <column name="GRANTOR_TYPE"/>
+ </index>
+
+ <datastore-identity>
+ <column name="ROLE_GRANT_ID"/>
+ </datastore-identity>
+
+ <field name="role">
+ <column name="ROLE_ID" />
+ </field>
+ <field name="principalName">
+ <column name="PRINCIPAL_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="principalType">
+ <column name="PRINCIPAL_TYPE" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="addTime">
+ <column name="ADD_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="grantor">
+ <column name="GRANTOR" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="grantorType">
+ <column name="GRANTOR_TYPE" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="grantOption">
+ <column name="GRANT_OPTION" jdbc-type="SMALLINT"/>
+ </field>
+ </class>
+
+ <class name="MGlobalPrivilege" table="GLOBAL_PRIVS"
identity-type="datastore" detachable="true">
+
+ <index name="GlobalPrivilegeIndex" unique="true">
+ <column name="AUTHORIZER"/>
+ <column name="PRINCIPAL_NAME"/>
+ <column name="PRINCIPAL_TYPE"/>
+ <column name="USER_PRIV"/>
+ <column name="GRANTOR"/>
+ <column name="GRANTOR_TYPE"/>
+ </index>
+
+ <datastore-identity>
+ <column name="USER_GRANT_ID"/>
+ </datastore-identity>
+
+ <field name="principalName">
+ <column name="PRINCIPAL_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="principalType">
+ <column name="PRINCIPAL_TYPE" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="privilege">
+ <column name="USER_PRIV" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="createTime">
+ <column name="CREATE_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="grantor">
+ <column name="GRANTOR" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="grantorType">
+ <column name="GRANTOR_TYPE" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="grantOption">
+ <column name="GRANT_OPTION" jdbc-type="SMALLINT"/>
+ </field>
+ <field name="authorizer">
+ <column name="AUTHORIZER" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ </class>
+
+ <class name="MDBPrivilege" table="DB_PRIVS" identity-type="datastore"
detachable="true">
+
+ <index name="DBPrivilegeIndex" unique="true">
+ <column name="AUTHORIZER"/>
+ <column name="DB_ID"/>
+ <column name="PRINCIPAL_NAME"/>
+ <column name="PRINCIPAL_TYPE"/>
+ <column name="DB_PRIV"/>
+ <column name="GRANTOR"/>
+ <column name="GRANTOR_TYPE"/>
+ </index>
+
+ <datastore-identity>
+ <column name="DB_GRANT_ID"/>
+ </datastore-identity>
+
+ <field name="principalName">
+ <column name="PRINCIPAL_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="principalType">
+ <column name="PRINCIPAL_TYPE" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="database">
+ <column name="DB_ID" />
+ </field>
+ <field name="privilege">
+ <column name="DB_PRIV" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="createTime">
+ <column name="CREATE_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="grantor">
+ <column name="GRANTOR" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="grantorType">
+ <column name="GRANTOR_TYPE" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="grantOption">
+ <column name="GRANT_OPTION" jdbc-type="SMALLINT"/>
+ </field>
+ <field name="authorizer">
+ <column name="AUTHORIZER" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ </class>
+
+ <class name="MTablePrivilege" table="TBL_PRIVS" identity-type="datastore"
detachable="true">
+
+ <index name="TablePrivilegeIndex" unique="false">
+ <column name="AUTHORIZER"/>
+ <column name="TBL_ID"/>
+ <column name="PRINCIPAL_NAME"/>
+ <column name="PRINCIPAL_TYPE"/>
+ <column name="TBL_PRIV"/>
+ <column name="GRANTOR"/>
+ <column name="GRANTOR_TYPE"/>
+ </index>
+
+ <datastore-identity>
+ <column name="TBL_GRANT_ID"/>
+ </datastore-identity>
+
+ <field name="principalName">
+ <column name="PRINCIPAL_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="principalType">
+ <column name="PRINCIPAL_TYPE" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="table">
+ <column name="TBL_ID"/>
+ </field>
+ <field name="privilege">
+ <column name="TBL_PRIV" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="createTime">
+ <column name="CREATE_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="grantor">
+ <column name="GRANTOR" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="grantorType">
+ <column name="GRANTOR_TYPE" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="grantOption">
+ <column name="GRANT_OPTION" jdbc-type="SMALLINT"/>
+ </field>
+ <field name="authorizer">
+ <column name="AUTHORIZER" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ </class>
+
+ <class name="MPartitionPrivilege" table="PART_PRIVS"
identity-type="datastore" detachable="true">
+
+ <index name="PartPrivilegeIndex" unique="false">
+ <column name="AUTHORIZER"/>
+ <column name="PART_ID"/>
+ <column name="PRINCIPAL_NAME"/>
+ <column name="PRINCIPAL_TYPE"/>
+ <column name="PART_PRIV"/>
+ <column name="GRANTOR"/>
+ <column name="GRANTOR_TYPE"/>
+ </index>
+
+ <datastore-identity>
+ <column name="PART_GRANT_ID"/>
+ </datastore-identity>
+
+ <field name="principalName">
+ <column name="PRINCIPAL_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="principalType">
+ <column name="PRINCIPAL_TYPE" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="partition">
+ <column name="PART_ID" />
+ </field>
+ <field name="privilege">
+ <column name="PART_PRIV" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="createTime">
+ <column name="CREATE_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="grantor">
+ <column name="GRANTOR" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="grantorType">
+ <column name="GRANTOR_TYPE" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="grantOption">
+ <column name="GRANT_OPTION" jdbc-type="SMALLINT"/>
+ </field>
+ <field name="authorizer">
+ <column name="AUTHORIZER" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ </class>
+
+ <class name="MTableColumnPrivilege" table="TBL_COL_PRIVS"
identity-type="datastore" detachable="true">
+
+ <index name="TableColumnPrivilegeIndex" unique="false">
+ <column name="AUTHORIZER"/>
+ <column name="TBL_ID"/>
+ <column name="COLUMN_NAME"/>
+ <column name="PRINCIPAL_NAME"/>
+ <column name="PRINCIPAL_TYPE"/>
+ <column name="TBL_COL_PRIV"/>
+ <column name="GRANTOR"/>
+ <column name="GRANTOR_TYPE"/>
+ </index>
+
+ <datastore-identity>
+ <column name="TBL_COLUMN_GRANT_ID"/>
+ </datastore-identity>
+
+ <field name="principalName">
+ <column name="PRINCIPAL_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="principalType">
+ <column name="PRINCIPAL_TYPE" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="table">
+ <column name="TBL_ID" />
+ </field>
+ <field name="columnName">
+ <column name="COLUMN_NAME" length="767" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="privilege">
+ <column name="TBL_COL_PRIV" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="createTime">
+ <column name="CREATE_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="grantor">
+ <column name="GRANTOR" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="grantorType">
+ <column name="GRANTOR_TYPE" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="grantOption">
+ <column name="GRANT_OPTION" jdbc-type="SMALLINT"/>
+ </field>
+ <field name="authorizer">
+ <column name="AUTHORIZER" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ </class>
+
+ <class name="MPartitionColumnPrivilege" table="PART_COL_PRIVS"
identity-type="datastore" detachable="true">
+
+ <index name="PartitionColumnPrivilegeIndex" unique="false">
+ <column name="AUTHORIZER"/>
+ <column name="PART_ID"/>
+ <column name="COLUMN_NAME"/>
+ <column name="PRINCIPAL_NAME"/>
+ <column name="PRINCIPAL_TYPE"/>
+ <column name="PART_COL_PRIV"/>
+ <column name="GRANTOR"/>
+ <column name="GRANTOR_TYPE"/>
+ </index>
+
+ <datastore-identity>
+ <column name="PART_COLUMN_GRANT_ID"/>
+ </datastore-identity>
+
+ <field name="principalName">
+ <column name="PRINCIPAL_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="principalType">
+ <column name="PRINCIPAL_TYPE" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="partition">
+ <column name="PART_ID" />
+ </field>
+ <field name="columnName">
+ <column name="COLUMN_NAME" length="767" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="privilege">
+ <column name="PART_COL_PRIV" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="createTime">
+ <column name="CREATE_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="grantor">
+ <column name="GRANTOR" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="grantorType">
+ <column name="GRANTOR_TYPE" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="grantOption">
+ <column name="GRANT_OPTION" jdbc-type="SMALLINT"/>
+ </field>
+ <field name="authorizer">
+ <column name="AUTHORIZER" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ </class>
+
+ <class name="MPartitionEvent" table="PARTITION_EVENTS"
identity-type="datastore" detachable="true">
+
+ <index name="PartitionEventIndex" unique="false">
+ <column name="PARTITION_NAME"/>
+ </index>
+
+ <datastore-identity>
+ <column name="PART_NAME_ID"/>
+ </datastore-identity>
+
+ <field name="catalogName">
+ <column name="CAT_NAME" length="256" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="dbName">
+ <column name="DB_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="tblName">
+ <column name="TBL_NAME" length="256" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="partName">
+ <column name="PARTITION_NAME" length="767" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="eventType">
+ <column name="EVENT_TYPE" jdbc-type="integer"/>
+ </field>
+ <field name="eventTime">
+ <column name="EVENT_TIME" jdbc-type="BIGINT"/>
+ </field>
+
+ </class>
+
+ <class name="MMasterKey" table="MASTER_KEYS" identity-type="application"
detachable="true">
+
+ <field name="keyId" primary-key="true" value-strategy="native">
+ <column name="KEY_ID" jdbc-type="integer" />
+ </field>
+
+ <field name="masterKey">
+ <column name="MASTER_KEY" length="767" jdbc-type="VARCHAR" />
+ </field>
+
+ </class>
+
+ <class name="MDelegationToken" table="DELEGATION_TOKENS"
identity-type="application" detachable="true">
+
+ <field name="tokenIdentifier" primary-key="true">
+ <column name="TOKEN_IDENT" length="767" jdbc-type="VARCHAR" />
+ </field>
+
+ <field name="tokenStr">
+ <column name="TOKEN" length="767" jdbc-type="VARCHAR" />
+ </field>
+
+ </class>
+
+ <class name="MTableColumnStatistics" table="TAB_COL_STATS"
identity-type="datastore" detachable="true">
+ <datastore-identity>
+ <column name="CS_ID"/>
+ </datastore-identity>
+
+ <field name ="catName">
+ <column name="CAT_NAME" length="256" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name ="dbName">
+ <column name="DB_NAME" length="128" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="tableName">
+ <column name="TABLE_NAME" length="256" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="table">
+ <column name="TBL_ID"/>
+ </field>
+ <field name="colName">
+ <column name="COLUMN_NAME" length="767" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="colType">
+ <column name="COLUMN_TYPE" length="128" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="longLowValue">
+ <column name="LONG_LOW_VALUE" jdbc-type="BIGINT" allows-null="true"/>
+ </field>
+ <field name="longHighValue">
+ <column name="LONG_HIGH_VALUE" jdbc-type="BIGINT" allows-null="true"/>
+ </field>
+ <field name="doubleLowValue">
+ <column name="DOUBLE_LOW_VALUE" jdbc-type="DOUBLE"
allows-null="true"/>
+ </field>
+ <field name="doubleHighValue">
+ <column name="DOUBLE_HIGH_VALUE" jdbc-type="DOUBLE"
allows-null="true"/>
+ </field>
+ <field name="decimalLowValue">
+ <column name="BIG_DECIMAL_LOW_VALUE" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ <field name="decimalHighValue">
+ <column name="BIG_DECIMAL_HIGH_VALUE" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ <field name="numNulls">
+ <column name="NUM_NULLS" jdbc-type="BIGINT" allows-null="false"/>
+ </field>
+ <field name="numDVs">
+ <column name="NUM_DISTINCTS" jdbc-type="BIGINT" allows-null="true"/>
+ </field>
+ <field name="bitVector">
+ <column name="BIT_VECTOR" jdbc-type="BLOB" allows-null="true"/>
+ </field>
+ <field name="avgColLen">
+ <column name="AVG_COL_LEN" jdbc-type="DOUBLE" allows-null="true"/>
+ </field>
+ <field name="maxColLen">
+ <column name="MAX_COL_LEN" jdbc-type="BIGINT" allows-null="true"/>
+ </field>
+ <field name="numTrues">
+ <column name="NUM_TRUES" jdbc-type="BIGINT" allows-null="true"/>
+ </field>
+ <field name="numFalses">
+ <column name="NUM_FALSES" jdbc-type="BIGINT" allows-null="true"/>
+ </field>
+ <field name="lastAnalyzed">
+ <column name="LAST_ANALYZED" jdbc-type="BIGINT" allows-null="false"/>
+ </field>
+ </class>
+
+ <class name="MPartitionColumnStatistics" table="PART_COL_STATS"
identity-type="datastore" detachable="true">
+ <datastore-identity>
+ <column name="CS_ID"/>
+ </datastore-identity>
+
+ <field name ="catName">
+ <column name="CAT_NAME" length="256" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name ="dbName">
+ <column name="DB_NAME" length="128" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="tableName">
+ <column name="TABLE_NAME" length="256" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="partitionName">
+ <column name="PARTITION_NAME" length="767" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="partition">
+ <column name="PART_ID"/>
+ </field>
+ <field name="colName">
+ <column name="COLUMN_NAME" length="767" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="colType">
+ <column name="COLUMN_TYPE" length="128" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="longLowValue">
+ <column name="LONG_LOW_VALUE" jdbc-type="BIGINT" allows-null="true"/>
+ </field>
+ <field name="longHighValue">
+ <column name="LONG_HIGH_VALUE" jdbc-type="BIGINT" allows-null="true"/>
+ </field>
+ <field name="doubleLowValue">
+ <column name="DOUBLE_LOW_VALUE" jdbc-type="DOUBLE"
allows-null="true"/>
+ </field>
+ <field name="doubleHighValue">
+ <column name="DOUBLE_HIGH_VALUE" jdbc-type="DOUBLE"
allows-null="true"/>
+ </field>
+ <field name="decimalLowValue">
+ <column name="BIG_DECIMAL_LOW_VALUE" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ <field name="decimalHighValue">
+ <column name="BIG_DECIMAL_HIGH_VALUE" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ <field name="numNulls">
+ <column name="NUM_NULLS" jdbc-type="BIGINT" allows-null="false"/>
+ </field>
+ <field name="numDVs">
+ <column name="NUM_DISTINCTS" jdbc-type="BIGINT" allows-null="true"/>
+ </field>
+ <field name="bitVector">
+ <column name="BIT_VECTOR" jdbc-type="BLOB" allows-null="true"/>
+ </field>
+ <field name="avgColLen">
+ <column name="AVG_COL_LEN" jdbc-type="DOUBLE" allows-null="true"/>
+ </field>
+ <field name="maxColLen">
+ <column name="MAX_COL_LEN" jdbc-type="BIGINT" allows-null="true"/>
+ </field>
+ <field name="numTrues">
+ <column name="NUM_TRUES" jdbc-type="BIGINT" allows-null="true"/>
+ </field>
+ <field name="numFalses">
+ <column name="NUM_FALSES" jdbc-type="BIGINT" allows-null="true"/>
+ </field>
+ <field name="lastAnalyzed">
+ <column name="LAST_ANALYZED" jdbc-type="BIGINT" allows-null="false"/>
+ </field>
+ </class>
+ <class name="MVersionTable" table="VERSION" identity-type="datastore"
detachable="true">
+ <datastore-identity>
+ <column name="VER_ID"/>
+ </datastore-identity>
+ <field name ="schemaVersion">
+ <column name="SCHEMA_VERSION" length="127" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name ="versionComment">
+ <column name="VERSION_COMMENT" length="255" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ </class>
+
+ <class name="MMetastoreDBProperties" table="METASTORE_DB_PROPERTIES"
identity-type="application" detachable="true">
+ <field name ="propertyKey" primary-key="true">
+ <column name="PROPERTY_KEY" length="255" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name ="propertyValue">
+ <column name="PROPERTY_VALUE" length="1000" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name ="description">
+ <column name="DESCRIPTION" length="1000" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ </class>
+
+ <class name="MResourceUri" embedded-only="true" table="RESOURCE_URI"
detachable="true">
+ <field name="resourceType">
+ <column name="RESOURCE_TYPE" jdbc-type="INTEGER"/>
+ </field>
+ <field name="uri">
+ <column name="RESOURCE_URI" length="4000" jdbc-type="VARCHAR"/>
+ </field>
+ </class>
+
+ <class name="MFunction" table="FUNCS" identity-type="datastore"
detachable="true">
+ <datastore-identity>
+ <column name="FUNC_ID"/>
+ </datastore-identity>
+ <index name="UniqueFunction" unique="true">
+ <column name="FUNC_NAME"/>
+ <column name="DB_ID"/>
+ </index>
+ <field name="functionName">
+ <column name="FUNC_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="database">
+ <column name="DB_ID"/>
+ </field>
+ <field name="functionType">
+ <column name="FUNC_TYPE" jdbc-type="integer"/>
+ </field>
+ <field name="className">
+ <column name="CLASS_NAME" length="4000" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="ownerName">
+ <column name="OWNER_NAME" length="128" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="ownerType">
+ <column name="OWNER_TYPE" length="10" jdbc-type="VARCHAR"/>
+ </field>
+ <field name="createTime">
+ <column name="CREATE_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="resourceUris" table="FUNC_RU">
+ <collection element-type="MResourceUri"/>
+ <join>
+ <column name="FUNC_ID"/>
+ </join>
+ <element>
+ <embedded>
+ <field name="resourceType">
+ <column name="RESOURCE_TYPE" jdbc-type="INTEGER"/>
+ </field>
+ <field name="uri">
+ <column name="RESOURCE_URI" length="4000" jdbc-type="VARCHAR"/>
+ </field>
+ </embedded>
+ </element>
+ </field>
+ </class>
+
+ <class name="MNotificationLog" table="NOTIFICATION_LOG"
identity-type="datastore" detachable="true">
+ <datastore-identity strategy="increment"/>
+ <datastore-identity key-cache-size="1"/>
+ <datastore-identity>
+ <column name="NL_ID"/>
+ </datastore-identity>
+ <field name="eventId">
+ <column name="EVENT_ID" jdbc-type="BIGINT" allows-null="false"/>
+ </field>
+ <field name="eventTime">
+ <column name="EVENT_TIME" jdbc-type="INTEGER" allows-null="false"/>
+ </field>
+ <field name="eventType">
+ <column name="EVENT_TYPE" length="32" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="catalogName">
+ <column name="CAT_NAME" length="256" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ <field name="dbName">
+ <column name="DB_NAME" length="128" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ <field name="tableName">
+ <column name="TBL_NAME" length="256" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ <field name="message">
+ <column name="MESSAGE" jdbc-type="LONGVARCHAR"/>
+ </field>
+ <field name="messageFormat">
+ <column name="MESSAGE_FORMAT" length="16" jdbc-type="VARCHAR"
allows-null="true"/>
+ </field>
+ </class>
+
+ <!-- I tried to use a sequence here but derby didn't handle it well. -->
+ <class name="MNotificationNextId" table="NOTIFICATION_SEQUENCE"
identity-type="datastore" detachable="true">
+ <datastore-identity>
+ <column name="NNI_ID"/>
+ </datastore-identity>
+ <field name="nextEventId">
+ <column name="NEXT_EVENT_ID" jdbc-type="BIGINT" allows-null="false"/>
+ </field>
+ </class>
+
+ <class name="MTxnWriteNotificationLog" table="TXN_WRITE_NOTIFICATION_LOG"
identity-type="datastore" detachable="true">
+ <datastore-identity strategy="increment"/>
+ <datastore-identity key-cache-size="1"/>
+ <datastore-identity>
+ <column name="WNL_ID"/>
+ </datastore-identity>
+ <field name="txnId">
+ <column name="WNL_TXNID" jdbc-type="BIGINT" allows-null="false"/>
+ </field>
+ <field name="writeId">
+ <column name="WNL_WRITEID" jdbc-type="BIGINT" allows-null="false"/>
+ </field>
+ <field name="database">
+ <column name="WNL_DATABASE" length="128" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="table">
+ <column name="WNL_TABLE" length="128" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="partition">
+ <column name="WNL_PARTITION" length="1024" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="tableObject">
+ <column name="WNL_TABLE_OBJ" jdbc-type="LONGVARCHAR"/>
+ </field>
+ <field name="partObject">
+ <column name="WNL_PARTITION_OBJ" jdbc-type="LONGVARCHAR"/>
+ </field>
+ <field name="files">
+ <column name="WNL_FILES" jdbc-type="LONGVARCHAR"/>
+ </field>
+ <field name="eventTime">
+ <column name="WNL_EVENT_TIME" jdbc-type="INTEGER"
allows-null="false"/>
+ </field>
+ </class>
+
+ <class name="MWMResourcePlan" identity-type="datastore"
table="WM_RESOURCEPLAN" detachable="true">
+ <datastore-identity>
+ <column name="RP_ID"/>
+ </datastore-identity>
+ <field name="name">
+ <column name="NAME" length="128" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="queryParallelism">
+ <column name="QUERY_PARALLELISM" jdbc-type="integer"
allows-null="true"/>
+ </field>
+ <field name="status">
+ <column name="STATUS" jdbc-type="string" allows-null="false"/>
+ </field>
+ <field name="defaultPool">
+ <column name="DEFAULT_POOL_ID" jdbc-type="integer"
allows-null="true"/>
+ </field>
+ <index name="UniqueResourcePlan" unique="true">
+ <column name="NAME"/>
+ </index>
+
+ <field name="pools" mapped-by="resourcePlan">
+ <collection element-type="MWMPool"/>
+ </field>
+ <field name="triggers" mapped-by="resourcePlan">
+ <collection element-type="MWMTrigger"/>
+ </field>
+ <field name="mappings" mapped-by="resourcePlan">
+ <collection element-type="MWMMapping"/>
+ </field>
+ </class>
+
+ <class name="MWMPool" identity-type="datastore" table="WM_POOL"
detachable="true">
+ <datastore-identity>
+ <column name="POOL_ID"/>
+ </datastore-identity>
+ <field name="resourcePlan">
+ <column name="RP_ID" jdbc-type="integer" allows-null="false"/>
+ </field>
+ <field name="path">
+ <column name="PATH" length="1024" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="allocFraction">
+ <column name="ALLOC_FRACTION" jdbc-type="double" allows-null="true"/>
+ </field>
+ <field name="queryParallelism">
+ <column name="QUERY_PARALLELISM" jdbc-type="integer"
allows-null="true"/>
+ </field>
+ <field name="schedulingPolicy">
+ <column name="SCHEDULING_POLICY" jdbc-type="string"
allows-null="true"/>
+ </field>
+ <field name="triggers" table="WM_POOL_TO_TRIGGER">
+ <collection element-type="MWMTrigger" />
+ <join>
+ <column name="POOL_ID" />
+ </join>
+ <element>
+ <column name="TRIGGER_ID"/>
+ </element>
+ </field>
+ <index name="UniqueWMPool" unique="true">
+ <column name="RP_ID"/>
+ <column name="PATH"/>
+ </index>
+ </class>
+
+ <class name="MWMTrigger" identity-type="datastore" table="WM_TRIGGER"
detachable="true">
+ <datastore-identity>
+ <column name="TRIGGER_ID"/>
+ </datastore-identity>
+ <field name="resourcePlan">
+ <column name="RP_ID" jdbc-type="integer" allows-null="false"/>
+ </field>
+ <field name="name">
+ <column name="NAME" length="128" jdbc-type="VARCHAR"
allows-null="false"/>
+ </field>
+ <field name="triggerExpression">
+ <column name="TRIGGER_EXPRESSION" jdbc-type="string"
allows-null="true"/>
+ </field>
+ <field name="actionExpression">
+ <column name="ACTION_EXPRESSION" jdbc-type="string"
allows-null="true"/>
+ </field>
+ <field name="isInUnmanaged">
+ <column name="IS_IN_UNMANAGED" allows-null="false"/>
+ </field>
+ <field name="pools" mapped-by="triggers">
+ <collection element-type="MWMPool" />
+ </field>
+ <index name="UniqueWMTrigger" unique="true">
+ <column name="RP_ID"/>
+ <column name="NAME"/>
+ </index>
+ </class>
+
+ <class name="MWMMapping" identity-type="datastore" table="WM_MAPPING"
detachable="true">
+ <datastore-identity>
+ <column name="MAPPING_ID"/>
+ </datastore-identity>
+ <field name="resourcePlan">
+ <column name="RP_ID" jdbc-type="integer" allows-null="false"/>
+ </field>
+ <field name="entityType">
+ <column name="ENTITY_TYPE" jdbc-type="string" length="128" />
+ </field>
+ <field name="entityName">
+ <column name="ENTITY_NAME" jdbc-type="string" length="128" />
+ </field>
+ <field name="pool">
+ <column name="POOL_ID" jdbc-type="integer" allows-null="true"/>
+ </field>
+ <field name="ordering">
+ <column name="ORDERING" jdbc-type="integer" allows-null="true"/>
+ </field>
+ <index name="UniqueWMMapping" unique="true">
+ <column name="RP_ID"/>
+ <column name="ENTITY_TYPE"/>
+ <column name="ENTITY_NAME"/>
+ </index>
+ </class>
+
+ <class name="MISchema" identity-type="datastore" table="I_SCHEMA"
detachable="true">
+ <datastore-identity>
+ <column name="SCHEMA_ID"/>
+ </datastore-identity>
+ <field name="schemaType">
+ <column name="SCHEMA_TYPE" jdbc-type="integer"/>
+ </field>
+ <field name="name">
+ <column name="NAME" jdbc-type="varchar" length="256"/>
+ </field>
+ <field name="db">
+ <column name="DB_ID"/>
+ </field>
+ <field name="compatibility">
+ <column name="COMPATIBILITY" jdbc-type="integer"/>
+ </field>
+ <field name="validationLevel">
+ <column name="VALIDATION_LEVEL" jdbc-type="integer"/>
+ </field>
+ <field name="canEvolve">
+ <column name="CAN_EVOLVE"/>
+ </field>
+ <field name="schemaGroup">
+ <column name="SCHEMA_GROUP" jdbc-type="varchar" length="256"
allows-null="true"/>
+ </field>
+ <field name="description">
+ <column name="DESCRIPTION" jdbc-type="varchar" length="4000"
allows-null="true"/>
+ </field>
+ </class>
+
+ <class name="MSchemaVersion" identity-type="datastore"
table="SCHEMA_VERSION" detachable="true">
+ <datastore-identity>
+ <column name="SCHEMA_VERSION_ID"/>
+ </datastore-identity>
+ <field name="iSchema">
+ <column name="SCHEMA_ID"/>
+ </field>
+ <field name="version">
+ <column name="VERSION" jdbc-type="integer"/>
+ </field>
+ <field name="createdAt">
+ <column name="CREATED_AT" jdbc-type="bigint"/>
+ </field>
+ <field name="cols">
+ <column name="CD_ID"/>
+ </field>
+ <field name="state">
+ <column name="STATE" jdbc-type="integer"/>
+ </field>
+ <field name="description">
+ <column name="DESCRIPTION" jdbc-type="varchar" length="4000"
allows-null="true"/>
+ </field>
+ <field name="schemaText" default-fetch-group="false">
+ <column name="SCHEMA_TEXT" jdbc-type="LONGVARCHAR"/>
+ </field>
+ <field name="fingerprint">
+ <column name="FINGERPRINT" jdbc-type="varchar" length="256"
allows-null="true"/>
+ </field>
+ <field name="name">
+ <column name="SCHEMA_VERSION_NAME" jdbc-type="varchar" length="256"
allows-null="true"/>
+ </field>
+ <field name="serDe">
+ <column name="SERDE_ID"/>
+ </field>
+ </class>
+ <class name="MRuntimeStat" identity-type="datastore"
table="RUNTIME_STATS" detachable="true">
+ <datastore-identity>
+ <column name="RS_ID"/>
+ </datastore-identity>
+ <field name="createTime">
+ <column name="CREATE_TIME" jdbc-type="integer"/>
+ </field>
+ <field name="weight">
+ <column name="WEIGHT" jdbc-type="integer"/>
+ </field>
+ <field name="payload">
+ <column name="PAYLOAD" jdbc-type="BLOB" allows-null="true"/>
+ </field>
+ </class>
+ </package>
+ </jdo>
+