teiid SVN: r3057 - in trunk/test-integration/common/src/test: resources/TestODBCSchema and 1 other directories.
by teiid-commits@lists.jboss.org
Author: rareddy
Date: 2011-04-04 15:26:16 -0400 (Mon, 04 Apr 2011)
New Revision: 3057
Modified:
trunk/test-integration/common/src/test/java/org/teiid/jdbc/TestVDBMerge.java
trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_ATTRIBUTE.expected
trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_CLASS.expected
trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_INDEX.expected
trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_NAMESPACE.expected
trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_PROC.expected
trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_TYPE.expected
trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testColumns.expected
trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testDataTypes.expected
trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testKeyColumns.expected
trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testKeys.expected
trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testProcedureParams.expected
trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testProcedures.expected
trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testSchemas.expected
trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testTables.expected
Log:
TEIID-1515: bring the changes forward from 7.1.1
Modified: trunk/test-integration/common/src/test/java/org/teiid/jdbc/TestVDBMerge.java
===================================================================
--- trunk/test-integration/common/src/test/java/org/teiid/jdbc/TestVDBMerge.java 2011-04-04 17:47:23 UTC (rev 3056)
+++ trunk/test-integration/common/src/test/java/org/teiid/jdbc/TestVDBMerge.java 2011-04-04 19:26:16 UTC (rev 3057)
@@ -19,11 +19,11 @@
String[] expected = {
"VDBName[string] SchemaName[string] Name[string] Type[string] NameInSource[string] IsPhysical[boolean] SupportsUpdates[boolean] UID[string] Cardinality[integer] Description[string] IsSystem[boolean] IsMaterialized[boolean] OID[integer]",
- "PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS Table PARTS true true mmuuid:f6276601-73fe-1edc-a81c-ecf397b10590 16 null false false 0",
- "PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA Table SHIP_VIA true true mmuuid:0f4e9b80-73ff-1edc-a81c-ecf397b10590 4 null false false 1",
- "PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS Table STATUS true true mmuuid:1f297200-73ff-1edc-a81c-ecf397b10590 3 null false false 2",
- "PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS Table SUPPLIER_PARTS true true mmuuid:3deafb00-73ff-1edc-a81c-ecf397b10590 227 null false false 3",
- "PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER Table SUPPLIER true true mmuuid:2c371ec0-73ff-1edc-a81c-ecf397b10590 16 null false false 4"
+ "PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS Table PARTS true true mmuuid:f6276601-73fe-1edc-a81c-ecf397b10590 16 null false false 1",
+ "PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA Table SHIP_VIA true true mmuuid:0f4e9b80-73ff-1edc-a81c-ecf397b10590 4 null false false 2",
+ "PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS Table STATUS true true mmuuid:1f297200-73ff-1edc-a81c-ecf397b10590 3 null false false 3",
+ "PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS Table SUPPLIER_PARTS true true mmuuid:3deafb00-73ff-1edc-a81c-ecf397b10590 227 null false false 4",
+ "PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER Table SUPPLIER true true mmuuid:2c371ec0-73ff-1edc-a81c-ecf397b10590 16 null false false 5"
};
executeTest("select * from tables where schemaname ='PartsSupplier'", expected); //$NON-NLS-1$
@@ -32,14 +32,14 @@
};
String[] expectedAfter = {
"VDBName[string] SchemaName[string] Name[string] Type[string] NameInSource[string] IsPhysical[boolean] SupportsUpdates[boolean] UID[string] Cardinality[integer] Description[string] IsSystem[boolean] IsMaterialized[boolean] OID[integer]",
- "PartsSupplier BQT1 HugeA Table null true false mmuuid:7c66fc80-33d2-1dfa-9931-e83d04ce10a0 500000 null false false 5",
- "PartsSupplier BQT1 HugeB Table null true false mmuuid:b0369400-33f8-1dfa-9931-e83d04ce10a0 500000 null false false 6",
- "PartsSupplier BQT1 LargeA Table null true false mmuuid:3976a800-33b2-1dfa-9931-e83d04ce10a0 10000 null false false 7",
- "PartsSupplier BQT1 LargeB Table null true false mmuuid:5fb40600-33c3-1dfa-9931-e83d04ce10a0 10000 null false false 8",
- "PartsSupplier BQT1 MediumA Table null true false mmuuid:61074980-338d-1dfa-9931-e83d04ce10a0 1000 null false false 9",
- "PartsSupplier BQT1 MediumB Table null true false mmuuid:e24bd1c0-33a4-1dfa-9931-e83d04ce10a0 1000 null false false 10",
- "PartsSupplier BQT1 SmallA Table null true false mmuuid:0968424f-e6a0-1df9-ac06-b890ff96f710 50 null false false 11",
- "PartsSupplier BQT1 SmallB Table null true false mmuuid:06fb8980-3377-1dfa-9931-e83d04ce10a0 50 null false false 12"
+ "PartsSupplier BQT1 HugeA Table null true false mmuuid:7c66fc80-33d2-1dfa-9931-e83d04ce10a0 500000 null false false 6",
+ "PartsSupplier BQT1 HugeB Table null true false mmuuid:b0369400-33f8-1dfa-9931-e83d04ce10a0 500000 null false false 7",
+ "PartsSupplier BQT1 LargeA Table null true false mmuuid:3976a800-33b2-1dfa-9931-e83d04ce10a0 10000 null false false 8",
+ "PartsSupplier BQT1 LargeB Table null true false mmuuid:5fb40600-33c3-1dfa-9931-e83d04ce10a0 10000 null false false 9",
+ "PartsSupplier BQT1 MediumA Table null true false mmuuid:61074980-338d-1dfa-9931-e83d04ce10a0 1000 null false false 10",
+ "PartsSupplier BQT1 MediumB Table null true false mmuuid:e24bd1c0-33a4-1dfa-9931-e83d04ce10a0 1000 null false false 11",
+ "PartsSupplier BQT1 SmallA Table null true false mmuuid:0968424f-e6a0-1df9-ac06-b890ff96f710 50 null false false 12",
+ "PartsSupplier BQT1 SmallB Table null true false mmuuid:06fb8980-3377-1dfa-9931-e83d04ce10a0 50 null false false 13"
};
executeTest("select * from tables where schemaname='BQT1'", expectedBefore); //$NON-NLS-1$
@@ -94,14 +94,14 @@
String[] expectedAfter = {
"VDBName[string] SchemaName[string] Name[string] Type[string] NameInSource[string] IsPhysical[boolean] SupportsUpdates[boolean] UID[string] Cardinality[integer] Description[string] IsSystem[boolean] IsMaterialized[boolean] OID[integer]",
- "empty BQT1 HugeA Table null true false mmuuid:7c66fc80-33d2-1dfa-9931-e83d04ce10a0 500000 null false false 0",
- "empty BQT1 HugeB Table null true false mmuuid:b0369400-33f8-1dfa-9931-e83d04ce10a0 500000 null false false 1",
- "empty BQT1 LargeA Table null true false mmuuid:3976a800-33b2-1dfa-9931-e83d04ce10a0 10000 null false false 2",
- "empty BQT1 LargeB Table null true false mmuuid:5fb40600-33c3-1dfa-9931-e83d04ce10a0 10000 null false false 3",
- "empty BQT1 MediumA Table null true false mmuuid:61074980-338d-1dfa-9931-e83d04ce10a0 1000 null false false 4",
- "empty BQT1 MediumB Table null true false mmuuid:e24bd1c0-33a4-1dfa-9931-e83d04ce10a0 1000 null false false 5",
- "empty BQT1 SmallA Table null true false mmuuid:0968424f-e6a0-1df9-ac06-b890ff96f710 50 null false false 6",
- "empty BQT1 SmallB Table null true false mmuuid:06fb8980-3377-1dfa-9931-e83d04ce10a0 50 null false false 7"
+ "empty BQT1 HugeA Table null true false mmuuid:7c66fc80-33d2-1dfa-9931-e83d04ce10a0 500000 null false false 1",
+ "empty BQT1 HugeB Table null true false mmuuid:b0369400-33f8-1dfa-9931-e83d04ce10a0 500000 null false false 2",
+ "empty BQT1 LargeA Table null true false mmuuid:3976a800-33b2-1dfa-9931-e83d04ce10a0 10000 null false false 3",
+ "empty BQT1 LargeB Table null true false mmuuid:5fb40600-33c3-1dfa-9931-e83d04ce10a0 10000 null false false 4",
+ "empty BQT1 MediumA Table null true false mmuuid:61074980-338d-1dfa-9931-e83d04ce10a0 1000 null false false 5",
+ "empty BQT1 MediumB Table null true false mmuuid:e24bd1c0-33a4-1dfa-9931-e83d04ce10a0 1000 null false false 6",
+ "empty BQT1 SmallA Table null true false mmuuid:0968424f-e6a0-1df9-ac06-b890ff96f710 50 null false false 7",
+ "empty BQT1 SmallB Table null true false mmuuid:06fb8980-3377-1dfa-9931-e83d04ce10a0 50 null false false 8"
};
this.internalConnection = server.createConnection("jdbc:teiid:empty");
Modified: trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_ATTRIBUTE.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_ATTRIBUTE.expected 2011-04-04 17:47:23 UTC (rev 3056)
+++ trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_ATTRIBUTE.expected 2011-04-04 19:26:16 UTC (rev 3057)
@@ -1,247 +1,247 @@
integer integer string integer short short integer boolean boolean boolean
oid attrelid attname atttypid attlen attnum atttypmod attnotnull attisdropped atthasdef
-0 0 PART_ID 1043 -1 1 4 true false false
-1 0 PART_NAME 1043 -1 2 255 false false false
-2 0 PART_COLOR 1043 -1 3 30 false false false
-3 0 PART_WEIGHT 1043 -1 4 255 false false false
-4 1 SHIPPER_ID 21 2 1 0 true false false
-5 1 SHIPPER_NAME 1043 -1 2 30 false false false
-6 2 STATUS_ID 21 2 1 0 true false false
-7 2 STATUS_NAME 1043 -1 2 30 false false false
-8 3 SUPPLIER_ID 1043 -1 1 10 true false false
-9 3 PART_ID 1043 -1 2 4 true false false
-10 3 QUANTITY 21 2 3 0 false false false
-11 3 SHIPPER_ID 21 2 4 0 false false false
-12 4 SUPPLIER_ID 1043 -1 1 10 true false false
-13 4 SUPPLIER_NAME 1043 -1 2 30 false false false
-14 4 SUPPLIER_STATUS 21 2 3 0 false false false
-15 4 SUPPLIER_CITY 1043 -1 4 30 false false false
-16 4 SUPPLIER_STATE 1043 -1 5 2 false false false
-17 5 VDBName 1043 -1 1 255 true false false
-18 5 SchemaName 1043 -1 2 255 true false false
-19 5 Name 1043 -1 3 255 true false false
-20 5 TargetSchemaName 1043 -1 4 255 false false false
-21 5 TargetName 1043 -1 5 4000 false false false
-22 5 Valid 16 1 6 0 false false false
-23 5 LoadState 1043 -1 7 255 false false false
-24 5 Updated 1114 8 8 0 false false false
-25 5 Cardinality 23 4 9 10 false false false
-26 6 resourcePath 1043 -1 1 255 false false false
-27 6 contents 14939 -1 2 0 false false false
-28 7 VDBName 1043 -1 1 255 true false false
-29 7 SchemaName 1043 -1 2 255 false false false
-30 7 TableName 1043 -1 3 255 true false false
-31 7 Name 1043 -1 4 255 true false false
-32 7 Position 23 4 5 10 true false false
-33 7 NameInSource 1043 -1 6 255 false false false
-34 7 DataType 1043 -1 7 100 true false false
-35 7 Scale 23 4 8 10 true false false
-36 7 Length 23 4 9 10 true false false
-37 7 IsLengthFixed 16 1 10 1 true false false
-38 7 SupportsSelect 16 1 11 1 true false false
-39 7 SupportsUpdates 16 1 12 1 true false false
-40 7 IsCaseSensitive 16 1 13 1 true false false
-41 7 IsSigned 16 1 14 1 true false false
-42 7 IsCurrency 16 1 15 1 true false false
-43 7 IsAutoIncremented 16 1 16 1 true false false
-44 7 NullType 1043 -1 17 20 true false false
-45 7 MinRange 1043 -1 18 50 false false false
-46 7 MaxRange 1043 -1 19 50 false false false
-47 7 SearchType 1043 -1 20 20 true false false
-48 7 Format 1043 -1 21 255 false false false
-49 7 DefaultValue 1043 -1 22 255 false false false
-50 7 JavaClass 1043 -1 23 500 true false false
-51 7 Precision 23 4 24 10 true false false
-52 7 CharOctetLength 23 4 25 10 false false false
-53 7 Radix 23 4 26 10 true false false
-54 7 UID 1043 -1 27 50 true false false
-55 7 Description 1043 -1 28 255 false false false
-56 7 OID 23 4 29 10 true false false
-57 8 Name 1043 -1 1 100 true false false
-58 8 IsStandard 16 1 2 1 false false false
-59 8 IsPhysical 16 1 3 1 false false false
-60 8 TypeName 1043 -1 4 100 true false false
-61 8 JavaClass 1043 -1 5 500 true false false
-62 8 Scale 23 4 6 10 false false false
-63 8 TypeLength 23 4 7 10 true false false
-64 8 NullType 1043 -1 8 20 true false false
-65 8 IsSigned 16 1 9 1 true false false
-66 8 IsAutoIncremented 16 1 10 1 true false false
-67 8 IsCaseSensitive 16 1 11 1 true false false
-68 8 Precision 23 4 12 10 true false false
-69 8 Radix 23 4 13 10 false false false
-70 8 SearchType 1043 -1 14 20 true false false
-71 8 UID 1043 -1 15 50 true false false
-72 8 RuntimeType 1043 -1 16 64 false false false
-73 8 BaseType 1043 -1 17 64 false false false
-74 8 Description 1043 -1 18 255 false false false
-75 8 OID 23 4 19 10 true false false
-76 9 VDBName 1043 -1 1 255 true false false
-77 9 SchemaName 1043 -1 2 255 false false false
-78 9 TableName 1043 -1 3 2048 true false false
-79 9 Name 1043 -1 4 255 true false false
-80 9 KeyName 1043 -1 5 255 false false false
-81 9 KeyType 1043 -1 6 20 true false false
-82 9 RefKeyUID 1043 -1 7 50 false false false
-83 9 UID 1043 -1 8 50 true false false
-84 9 Position 23 4 9 10 false false false
-85 9 OID 23 4 10 10 true false false
-86 10 VDBName 1043 -1 1 255 true false false
-87 10 SchemaName 1043 -1 2 255 false false false
-88 10 TableName 1043 -1 3 2048 true false false
-89 10 Name 1043 -1 4 255 true false false
-90 10 Description 1043 -1 5 255 false false false
-91 10 NameInSource 1043 -1 6 255 false false false
-92 10 Type 1043 -1 7 20 true false false
-93 10 IsIndexed 16 1 8 1 true false false
-94 10 RefKeyUID 1043 -1 9 50 false false false
-95 10 UID 1043 -1 10 50 true false false
-96 10 OID 23 4 11 10 true false false
-97 11 VDBName 1043 -1 1 255 true false false
-98 11 SchemaName 1043 -1 2 255 false false false
-99 11 ProcedureName 1043 -1 3 255 true false false
-100 11 Name 1043 -1 4 255 true false false
-101 11 DataType 1043 -1 5 25 true false false
-102 11 Position 23 4 6 10 true false false
-103 11 Type 1043 -1 7 100 true false false
-104 11 Optional 16 1 8 1 true false false
-105 11 Precision 23 4 9 10 true false false
-106 11 TypeLength 23 4 10 10 true false false
-107 11 Scale 23 4 11 10 true false false
-108 11 Radix 23 4 12 10 true false false
-109 11 NullType 1043 -1 13 10 true false false
-110 11 UID 1043 -1 14 50 false false false
-111 11 Description 1043 -1 15 255 false false false
-112 11 OID 23 4 16 10 true false false
-113 12 VDBName 1043 -1 1 255 true false false
-114 12 SchemaName 1043 -1 2 255 false false false
-115 12 Name 1043 -1 3 255 true false false
-116 12 NameInSource 1043 -1 4 255 false false false
-117 12 ReturnsResults 16 1 5 1 true false false
-118 12 UID 1043 -1 6 50 true false false
-119 12 Description 1043 -1 7 255 false false false
-120 12 OID 23 4 8 10 true false false
-121 13 Name 1043 -1 1 255 true false false
-122 13 Value 1043 -1 2 255 true false false
-123 13 UID 1043 -1 3 50 true false false
-124 13 OID 23 4 4 10 true false false
-125 14 PKTABLE_CAT 1043 -1 1 255 false false false
-126 14 PKTABLE_SCHEM 1043 -1 2 255 false false false
-127 14 PKTABLE_NAME 1043 -1 3 255 false false false
-128 14 PKCOLUMN_NAME 1043 -1 4 255 false false false
-129 14 FKTABLE_CAT 1043 -1 5 255 false false false
-130 14 FKTABLE_SCHEM 1043 -1 6 255 false false false
-131 14 FKTABLE_NAME 1043 -1 7 255 false false false
-132 14 FKCOLUMN_NAME 1043 -1 8 255 false false false
-133 14 KEY_SEQ 21 2 9 5 false false false
-134 14 UPDATE_RULE 23 4 10 10 false false false
-135 14 DELETE_RULE 23 4 11 10 false false false
-136 14 FK_NAME 1043 -1 12 255 false false false
-137 14 PK_NAME 1043 -1 13 255 false false false
-138 14 DEFERRABILITY 23 4 14 10 false false false
-139 15 VDBName 1043 -1 1 255 false false false
-140 15 Name 1043 -1 2 255 false false false
-141 15 IsPhysical 16 1 3 1 true false false
-142 15 UID 1043 -1 4 50 true false false
-143 15 Description 1043 -1 5 255 false false false
-144 15 PrimaryMetamodelURI 1043 -1 6 255 true false false
-145 15 OID 23 4 7 10 true false false
-146 16 VDBName 1043 -1 1 255 false false false
-147 16 SchemaName 1043 -1 2 255 false false false
-148 16 Name 1043 -1 3 255 true false false
-149 16 Type 1043 -1 4 20 true false false
-150 16 NameInSource 1043 -1 5 255 false false false
-151 16 IsPhysical 16 1 6 1 true false false
-152 16 SupportsUpdates 16 1 7 1 true false false
-153 16 UID 1043 -1 8 50 true false false
-154 16 Cardinality 23 4 9 10 true false false
-155 16 Description 1043 -1 10 255 false false false
-156 16 IsSystem 16 1 11 1 false false false
-157 16 IsMaterialized 16 1 12 0 true false false
-158 16 OID 23 4 13 10 true false false
-159 17 Name 1043 -1 1 255 true false false
-160 17 Version 1043 -1 2 50 true false false
-161 18 oid 23 4 1 0 false false false
-162 18 nspname 1043 -1 2 0 false false false
-163 19 oid 23 4 1 0 false false false
-164 19 relname 1043 -1 2 0 false false false
-165 19 relnamespace 23 4 3 0 false false false
-166 19 relkind 1042 1 4 0 false false false
-167 19 relam 23 4 5 0 false false false
-168 19 reltuples 700 4 6 0 false false false
-169 19 relpages 23 4 7 0 false false false
-170 19 relhasrules 16 1 8 0 false false false
-171 19 relhasoids 1043 -1 9 0 false false false
-172 20 oid 23 4 1 0 false false false
-173 20 attrelid 23 4 2 0 false false false
-174 20 attname 1043 -1 3 0 false false false
-175 20 atttypid 23 4 4 0 false false false
-176 20 attlen 21 2 5 0 false false false
-177 20 attnum 21 2 6 0 false false false
-178 20 atttypmod 23 4 7 0 false false false
-179 20 attnotnull 16 1 8 0 false false false
-180 20 attisdropped 16 1 9 0 false false false
-181 20 atthasdef 16 1 10 0 false false false
-182 21 oid 23 4 1 0 false false false
-183 21 typname 1043 -1 2 0 false false false
-184 21 typnamespace 23 4 3 0 false false false
-185 21 typlen 21 2 4 0 false false false
-186 21 typtype 1042 1 5 0 false false false
-187 21 typbasetype 23 4 6 0 false false false
-188 21 typtypmod 23 4 7 0 false false false
-189 21 typrelid 23 4 8 0 false false false
-190 22 oid 23 4 1 0 false false false
-191 22 indexrelid 23 4 2 0 false false false
-192 22 indrelid 23 4 3 0 false false false
-193 22 indisclustered 16 1 4 0 false false false
-194 22 indisunique 16 1 5 0 false false false
-195 22 indisprimary 16 1 6 0 false false false
-196 22 indexprs 1043 -1 7 0 false false false
-197 22 indkey 1043 -1 8 0 false false false
-198 23 oid 23 4 1 0 false false false
-199 23 amname 1043 -1 2 0 false false false
-200 24 oid 23 4 1 0 false false false
-201 24 proname 1043 -1 2 0 false false false
-202 24 proretset 16 1 3 0 false false false
-203 24 prorettype 23 4 4 0 false false false
-204 24 pronargs 21 2 5 0 false false false
-205 24 proargtypes <null> <null> 6 0 false false false
-206 24 proargnames <null> <null> 7 0 false false false
-207 24 proargmodes <null> <null> 8 0 false false false
-208 24 proallargtypes <null> <null> 9 0 false false false
-209 24 pronamespace 23 4 10 0 false false false
-210 25 oid 23 4 1 0 false false false
-211 25 tgconstrrelid 23 4 2 0 false false false
-212 25 tgfoid 23 4 3 0 false false false
-213 25 tgargs 23 4 4 0 false false false
-214 25 tgnargs 23 4 5 0 false false false
-215 25 tgdeferrable 16 1 6 0 false false false
-216 25 tginitdeferred 16 1 7 0 false false false
-217 25 tgconstrname 1043 -1 8 0 false false false
-218 25 tgrelid 23 4 9 0 false false false
-219 26 adrelid 23 4 1 0 false false false
-220 26 adnum 23 4 2 0 false false false
-221 26 adbin 1043 -1 3 0 false false false
-222 26 adsrc 1043 -1 4 0 false false false
-223 27 oid 23 4 1 0 false false false
-224 27 datname 1043 -1 2 0 false false false
-225 27 encoding 23 4 3 0 false false false
-226 27 datlastsysoid 23 4 4 0 false false false
-227 27 datallowconn 1042 1 5 0 false false false
-228 27 datconfig <null> <null> 6 0 false false false
-229 27 datacl <null> <null> 7 0 false false false
-230 27 datdba 23 4 8 0 false false false
-231 27 dattablespace 23 4 9 0 false false false
-232 28 oid 23 4 1 0 false false false
-233 28 usename 1043 -1 2 0 false false false
-234 28 usecreatedb 16 1 3 0 false false false
-235 28 usesuper 16 1 4 0 false false false
-236 29 attrelid 23 4 1 0 false false false
-237 29 attnum 21 2 2 0 false false false
-238 29 attname 1043 -1 3 0 false false false
-239 29 relname 1043 -1 4 0 false false false
-240 29 nspname 1043 -1 5 0 false false false
-241 29 autoinc 16 1 6 0 false false false
+1 1 PART_ID 1043 -1 1 4 true false false
+2 1 PART_NAME 1043 -1 2 255 false false false
+3 1 PART_COLOR 1043 -1 3 30 false false false
+4 1 PART_WEIGHT 1043 -1 4 255 false false false
+5 2 SHIPPER_ID 21 2 1 0 true false false
+6 2 SHIPPER_NAME 1043 -1 2 30 false false false
+7 3 STATUS_ID 21 2 1 0 true false false
+8 3 STATUS_NAME 1043 -1 2 30 false false false
+9 4 SUPPLIER_ID 1043 -1 1 10 true false false
+10 4 PART_ID 1043 -1 2 4 true false false
+11 4 QUANTITY 21 2 3 0 false false false
+12 4 SHIPPER_ID 21 2 4 0 false false false
+13 5 SUPPLIER_ID 1043 -1 1 10 true false false
+14 5 SUPPLIER_NAME 1043 -1 2 30 false false false
+15 5 SUPPLIER_STATUS 21 2 3 0 false false false
+16 5 SUPPLIER_CITY 1043 -1 4 30 false false false
+17 5 SUPPLIER_STATE 1043 -1 5 2 false false false
+18 6 VDBName 1043 -1 1 255 true false false
+19 6 SchemaName 1043 -1 2 255 true false false
+20 6 Name 1043 -1 3 255 true false false
+21 6 TargetSchemaName 1043 -1 4 255 false false false
+22 6 TargetName 1043 -1 5 4000 false false false
+23 6 Valid 16 1 6 0 false false false
+24 6 LoadState 1043 -1 7 255 false false false
+25 6 Updated 1114 8 8 0 false false false
+26 6 Cardinality 23 4 9 10 false false false
+27 7 resourcePath 1043 -1 1 255 false false false
+28 7 contents 14939 -1 2 0 false false false
+29 8 VDBName 1043 -1 1 255 true false false
+30 8 SchemaName 1043 -1 2 255 false false false
+31 8 TableName 1043 -1 3 255 true false false
+32 8 Name 1043 -1 4 255 true false false
+33 8 Position 23 4 5 10 true false false
+34 8 NameInSource 1043 -1 6 255 false false false
+35 8 DataType 1043 -1 7 100 true false false
+36 8 Scale 23 4 8 10 true false false
+37 8 Length 23 4 9 10 true false false
+38 8 IsLengthFixed 16 1 10 1 true false false
+39 8 SupportsSelect 16 1 11 1 true false false
+40 8 SupportsUpdates 16 1 12 1 true false false
+41 8 IsCaseSensitive 16 1 13 1 true false false
+42 8 IsSigned 16 1 14 1 true false false
+43 8 IsCurrency 16 1 15 1 true false false
+44 8 IsAutoIncremented 16 1 16 1 true false false
+45 8 NullType 1043 -1 17 20 true false false
+46 8 MinRange 1043 -1 18 50 false false false
+47 8 MaxRange 1043 -1 19 50 false false false
+48 8 SearchType 1043 -1 20 20 true false false
+49 8 Format 1043 -1 21 255 false false false
+50 8 DefaultValue 1043 -1 22 255 false false false
+51 8 JavaClass 1043 -1 23 500 true false false
+52 8 Precision 23 4 24 10 true false false
+53 8 CharOctetLength 23 4 25 10 false false false
+54 8 Radix 23 4 26 10 true false false
+55 8 UID 1043 -1 27 50 true false false
+56 8 Description 1043 -1 28 255 false false false
+57 8 OID 23 4 29 10 true false false
+58 9 Name 1043 -1 1 100 true false false
+59 9 IsStandard 16 1 2 1 false false false
+60 9 IsPhysical 16 1 3 1 false false false
+61 9 TypeName 1043 -1 4 100 true false false
+62 9 JavaClass 1043 -1 5 500 true false false
+63 9 Scale 23 4 6 10 false false false
+64 9 TypeLength 23 4 7 10 true false false
+65 9 NullType 1043 -1 8 20 true false false
+66 9 IsSigned 16 1 9 1 true false false
+67 9 IsAutoIncremented 16 1 10 1 true false false
+68 9 IsCaseSensitive 16 1 11 1 true false false
+69 9 Precision 23 4 12 10 true false false
+70 9 Radix 23 4 13 10 false false false
+71 9 SearchType 1043 -1 14 20 true false false
+72 9 UID 1043 -1 15 50 true false false
+73 9 RuntimeType 1043 -1 16 64 false false false
+74 9 BaseType 1043 -1 17 64 false false false
+75 9 Description 1043 -1 18 255 false false false
+76 9 OID 23 4 19 10 true false false
+77 10 VDBName 1043 -1 1 255 true false false
+78 10 SchemaName 1043 -1 2 255 false false false
+79 10 TableName 1043 -1 3 2048 true false false
+80 10 Name 1043 -1 4 255 true false false
+81 10 KeyName 1043 -1 5 255 false false false
+82 10 KeyType 1043 -1 6 20 true false false
+83 10 RefKeyUID 1043 -1 7 50 false false false
+84 10 UID 1043 -1 8 50 true false false
+85 10 Position 23 4 9 10 false false false
+86 10 OID 23 4 10 10 true false false
+87 11 VDBName 1043 -1 1 255 true false false
+88 11 SchemaName 1043 -1 2 255 false false false
+89 11 TableName 1043 -1 3 2048 true false false
+90 11 Name 1043 -1 4 255 true false false
+91 11 Description 1043 -1 5 255 false false false
+92 11 NameInSource 1043 -1 6 255 false false false
+93 11 Type 1043 -1 7 20 true false false
+94 11 IsIndexed 16 1 8 1 true false false
+95 11 RefKeyUID 1043 -1 9 50 false false false
+96 11 UID 1043 -1 10 50 true false false
+97 11 OID 23 4 11 10 true false false
+98 12 VDBName 1043 -1 1 255 true false false
+99 12 SchemaName 1043 -1 2 255 false false false
+100 12 ProcedureName 1043 -1 3 255 true false false
+101 12 Name 1043 -1 4 255 true false false
+102 12 DataType 1043 -1 5 25 true false false
+103 12 Position 23 4 6 10 true false false
+104 12 Type 1043 -1 7 100 true false false
+105 12 Optional 16 1 8 1 true false false
+106 12 Precision 23 4 9 10 true false false
+107 12 TypeLength 23 4 10 10 true false false
+108 12 Scale 23 4 11 10 true false false
+109 12 Radix 23 4 12 10 true false false
+110 12 NullType 1043 -1 13 10 true false false
+111 12 UID 1043 -1 14 50 false false false
+112 12 Description 1043 -1 15 255 false false false
+113 12 OID 23 4 16 10 true false false
+114 13 VDBName 1043 -1 1 255 true false false
+115 13 SchemaName 1043 -1 2 255 false false false
+116 13 Name 1043 -1 3 255 true false false
+117 13 NameInSource 1043 -1 4 255 false false false
+118 13 ReturnsResults 16 1 5 1 true false false
+119 13 UID 1043 -1 6 50 true false false
+120 13 Description 1043 -1 7 255 false false false
+121 13 OID 23 4 8 10 true false false
+122 14 Name 1043 -1 1 255 true false false
+123 14 Value 1043 -1 2 255 true false false
+124 14 UID 1043 -1 3 50 true false false
+125 14 OID 23 4 4 10 true false false
+126 15 PKTABLE_CAT 1043 -1 1 255 false false false
+127 15 PKTABLE_SCHEM 1043 -1 2 255 false false false
+128 15 PKTABLE_NAME 1043 -1 3 255 false false false
+129 15 PKCOLUMN_NAME 1043 -1 4 255 false false false
+130 15 FKTABLE_CAT 1043 -1 5 255 false false false
+131 15 FKTABLE_SCHEM 1043 -1 6 255 false false false
+132 15 FKTABLE_NAME 1043 -1 7 255 false false false
+133 15 FKCOLUMN_NAME 1043 -1 8 255 false false false
+134 15 KEY_SEQ 21 2 9 5 false false false
+135 15 UPDATE_RULE 23 4 10 10 false false false
+136 15 DELETE_RULE 23 4 11 10 false false false
+137 15 FK_NAME 1043 -1 12 255 false false false
+138 15 PK_NAME 1043 -1 13 255 false false false
+139 15 DEFERRABILITY 23 4 14 10 false false false
+140 16 VDBName 1043 -1 1 255 false false false
+141 16 Name 1043 -1 2 255 false false false
+142 16 IsPhysical 16 1 3 1 true false false
+143 16 UID 1043 -1 4 50 true false false
+144 16 Description 1043 -1 5 255 false false false
+145 16 PrimaryMetamodelURI 1043 -1 6 255 true false false
+146 16 OID 23 4 7 10 true false false
+147 17 VDBName 1043 -1 1 255 false false false
+148 17 SchemaName 1043 -1 2 255 false false false
+149 17 Name 1043 -1 3 255 true false false
+150 17 Type 1043 -1 4 20 true false false
+151 17 NameInSource 1043 -1 5 255 false false false
+152 17 IsPhysical 16 1 6 1 true false false
+153 17 SupportsUpdates 16 1 7 1 true false false
+154 17 UID 1043 -1 8 50 true false false
+155 17 Cardinality 23 4 9 10 true false false
+156 17 Description 1043 -1 10 255 false false false
+157 17 IsSystem 16 1 11 1 false false false
+158 17 IsMaterialized 16 1 12 0 true false false
+159 17 OID 23 4 13 10 true false false
+160 18 Name 1043 -1 1 255 true false false
+161 18 Version 1043 -1 2 50 true false false
+162 19 oid 23 4 1 0 false false false
+163 19 nspname 1043 -1 2 0 false false false
+164 20 oid 23 4 1 0 false false false
+165 20 relname 1043 -1 2 0 false false false
+166 20 relnamespace 23 4 3 0 false false false
+167 20 relkind 1042 1 4 0 false false false
+168 20 relam 23 4 5 0 false false false
+169 20 reltuples 700 4 6 0 false false false
+170 20 relpages 23 4 7 0 false false false
+171 20 relhasrules 16 1 8 0 false false false
+172 20 relhasoids 1043 -1 9 0 false false false
+173 21 oid 23 4 1 0 false false false
+174 21 attrelid 23 4 2 0 false false false
+175 21 attname 1043 -1 3 0 false false false
+176 21 atttypid 23 4 4 0 false false false
+177 21 attlen 21 2 5 0 false false false
+178 21 attnum 21 2 6 0 false false false
+179 21 atttypmod 23 4 7 0 false false false
+180 21 attnotnull 16 1 8 0 false false false
+181 21 attisdropped 16 1 9 0 false false false
+182 21 atthasdef 16 1 10 0 false false false
+183 22 oid 23 4 1 0 false false false
+184 22 typname 1043 -1 2 0 false false false
+185 22 typnamespace 23 4 3 0 false false false
+186 22 typlen 21 2 4 0 false false false
+187 22 typtype 1042 1 5 0 false false false
+188 22 typbasetype 23 4 6 0 false false false
+189 22 typtypmod 23 4 7 0 false false false
+190 22 typrelid 23 4 8 0 false false false
+191 23 oid 23 4 1 0 false false false
+192 23 indexrelid 23 4 2 0 false false false
+193 23 indrelid 23 4 3 0 false false false
+194 23 indisclustered 16 1 4 0 false false false
+195 23 indisunique 16 1 5 0 false false false
+196 23 indisprimary 16 1 6 0 false false false
+197 23 indexprs 1043 -1 7 0 false false false
+198 23 indkey 1043 -1 8 0 false false false
+199 24 oid 23 4 1 0 false false false
+200 24 amname 1043 -1 2 0 false false false
+201 25 oid 23 4 1 0 false false false
+202 25 proname 1043 -1 2 0 false false false
+203 25 proretset 16 1 3 0 false false false
+204 25 prorettype 23 4 4 0 false false false
+205 25 pronargs 21 2 5 0 false false false
+206 25 proargtypes <null> <null> 6 0 false false false
+207 25 proargnames <null> <null> 7 0 false false false
+208 25 proargmodes <null> <null> 8 0 false false false
+209 25 proallargtypes <null> <null> 9 0 false false false
+210 25 pronamespace 23 4 10 0 false false false
+211 26 oid 23 4 1 0 false false false
+212 26 tgconstrrelid 23 4 2 0 false false false
+213 26 tgfoid 23 4 3 0 false false false
+214 26 tgargs 23 4 4 0 false false false
+215 26 tgnargs 23 4 5 0 false false false
+216 26 tgdeferrable 16 1 6 0 false false false
+217 26 tginitdeferred 16 1 7 0 false false false
+218 26 tgconstrname 1043 -1 8 0 false false false
+219 26 tgrelid 23 4 9 0 false false false
+220 27 adrelid 23 4 1 0 false false false
+221 27 adnum 23 4 2 0 false false false
+222 27 adbin 1043 -1 3 0 false false false
+223 27 adsrc 1043 -1 4 0 false false false
+224 28 oid 23 4 1 0 false false false
+225 28 datname 1043 -1 2 0 false false false
+226 28 encoding 23 4 3 0 false false false
+227 28 datlastsysoid 23 4 4 0 false false false
+228 28 datallowconn 1042 1 5 0 false false false
+229 28 datconfig <null> <null> 6 0 false false false
+230 28 datacl <null> <null> 7 0 false false false
+231 28 datdba 23 4 8 0 false false false
+232 28 dattablespace 23 4 9 0 false false false
+233 29 oid 23 4 1 0 false false false
+234 29 usename 1043 -1 2 0 false false false
+235 29 usecreatedb 16 1 3 0 false false false
+236 29 usesuper 16 1 4 0 false false false
+237 30 attrelid 23 4 1 0 false false false
+238 30 attnum 21 2 2 0 false false false
+239 30 attname 1043 -1 3 0 false false false
+240 30 relname 1043 -1 4 0 false false false
+241 30 nspname 1043 -1 5 0 false false false
+242 30 autoinc 16 1 6 0 false false false
Row Count : 242
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
oid 4 PartsSupplier java.lang.Integer oid integer pg_catalog pg_attribute 11 10 0 false false false false 2 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_CLASS.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_CLASS.expected 2011-04-04 17:47:23 UTC (rev 3056)
+++ trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_CLASS.expected 2011-04-04 19:26:16 UTC (rev 3057)
@@ -1,35 +1,35 @@
integer string integer char integer float integer boolean string
oid relname relnamespace relkind relam reltuples relpages relhasrules relhasoids
-0 PARTSSUPPLIER.PARTS 0 r 0 0.0 0 false false
-1 PARTSSUPPLIER.SHIP_VIA 0 r 0 0.0 0 false false
-2 PARTSSUPPLIER.STATUS 0 r 0 0.0 0 false false
-3 PARTSSUPPLIER.SUPPLIER_PARTS 0 r 0 0.0 0 false false
-4 PARTSSUPPLIER.SUPPLIER 0 r 0 0.0 0 false false
-5 MatViews 1 r 0 0.0 0 false false
-6 VDBResources 1 r 0 0.0 0 false false
-7 Columns 2 r 0 0.0 0 false false
-8 DataTypes 2 r 0 0.0 0 false false
-9 KeyColumns 2 r 0 0.0 0 false false
-10 Keys 2 r 0 0.0 0 false false
-11 ProcedureParams 2 r 0 0.0 0 false false
-12 Procedures 2 r 0 0.0 0 false false
-13 Properties 2 r 0 0.0 0 false false
-14 ReferenceKeyColumns 2 r 0 0.0 0 false false
-15 Schemas 2 r 0 0.0 0 false false
-16 Tables 2 r 0 0.0 0 false false
-17 VirtualDatabases 2 r 0 0.0 0 false false
-18 pg_namespace 3 v 0 0.0 0 false false
-19 pg_class 3 v 0 0.0 0 false false
-20 pg_attribute 3 v 0 0.0 0 false false
-21 pg_type 3 v 0 0.0 0 false false
-22 pg_index 3 v 0 0.0 0 false false
-23 pg_am 3 v 0 0.0 0 false false
-24 pg_proc 3 v 0 0.0 0 false false
-25 pg_trigger 3 v 0 0.0 0 false false
-26 pg_attrdef 3 v 0 0.0 0 false false
-27 pg_database 3 v 0 0.0 0 false false
-28 pg_user 3 v 0 0.0 0 false false
-29 matpg_relatt 3 v 0 0.0 0 false false
+1 PARTSSUPPLIER.PARTS 1 r 0 0.0 0 false false
+2 PARTSSUPPLIER.SHIP_VIA 1 r 0 0.0 0 false false
+3 PARTSSUPPLIER.STATUS 1 r 0 0.0 0 false false
+4 PARTSSUPPLIER.SUPPLIER_PARTS 1 r 0 0.0 0 false false
+5 PARTSSUPPLIER.SUPPLIER 1 r 0 0.0 0 false false
+6 MatViews 2 r 0 0.0 0 false false
+7 VDBResources 2 r 0 0.0 0 false false
+8 Columns 3 r 0 0.0 0 false false
+9 DataTypes 3 r 0 0.0 0 false false
+10 KeyColumns 3 r 0 0.0 0 false false
+11 Keys 3 r 0 0.0 0 false false
+12 ProcedureParams 3 r 0 0.0 0 false false
+13 Procedures 3 r 0 0.0 0 false false
+14 Properties 3 r 0 0.0 0 false false
+15 ReferenceKeyColumns 3 r 0 0.0 0 false false
+16 Schemas 3 r 0 0.0 0 false false
+17 Tables 3 r 0 0.0 0 false false
+18 VirtualDatabases 3 r 0 0.0 0 false false
+19 pg_namespace 4 v 0 0.0 0 false false
+20 pg_class 4 v 0 0.0 0 false false
+21 pg_attribute 4 v 0 0.0 0 false false
+22 pg_type 4 v 0 0.0 0 false false
+23 pg_index 4 v 0 0.0 0 false false
+24 pg_am 4 v 0 0.0 0 false false
+25 pg_proc 4 v 0 0.0 0 false false
+26 pg_trigger 4 v 0 0.0 0 false false
+27 pg_attrdef 4 v 0 0.0 0 false false
+28 pg_database 4 v 0 0.0 0 false false
+29 pg_user 4 v 0 0.0 0 false false
+30 matpg_relatt 4 v 0 0.0 0 false false
Row Count : 30
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
oid 4 PartsSupplier java.lang.Integer oid integer pg_catalog pg_class 11 10 0 false false false false 2 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_INDEX.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_INDEX.expected 2011-04-04 17:47:23 UTC (rev 3056)
+++ trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_INDEX.expected 2011-04-04 19:26:16 UTC (rev 3057)
@@ -1,23 +1,23 @@
integer integer integer boolean boolean boolean string string
oid indexrelid indrelid indisclustered indisunique indisprimary indexprs indkey
-0 0 0 false false true 0
1 1 1 false false true 0
2 2 2 false false true 0
3 3 3 false false true 0
-4 4 3 false false true 0
-5 5 3 false false false 0
-6 6 3 false false false 0
-7 7 4 false false true 0
-8 8 4 false false false 0
-9 9 19 false false true 0
+4 4 4 false false true 0
+5 5 4 false false true 0
+6 6 4 false false false 0
+7 7 4 false false false 0
+8 8 5 false false true 0
+9 9 5 false false false 0
10 10 20 false false true 0
-11 11 22 false false true 0
-12 12 24 false false true 0
-13 13 29 false false true 0
-14 14 29 false false true 0
-15 15 29 false false true 0
-16 16 29 false false false 0
-17 17 29 false false false 0
+11 11 21 false false true 0
+12 12 23 false false true 0
+13 13 25 false false true 0
+14 14 30 false false true 0
+15 15 30 false false true 0
+16 16 30 false false true 0
+17 17 30 false false false 0
+18 18 30 false false false 0
Row Count : 18
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
oid 4 PartsSupplier java.lang.Integer oid integer pg_catalog pg_index 11 10 0 false false false false 2 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_NAMESPACE.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_NAMESPACE.expected 2011-04-04 17:47:23 UTC (rev 3056)
+++ trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_NAMESPACE.expected 2011-04-04 19:26:16 UTC (rev 3057)
@@ -1,9 +1,9 @@
integer string
oid nspname
-0 PartsSupplier
-1 SYSADMIN
-2 SYS
-3 pg_catalog
+1 PartsSupplier
+2 SYSADMIN
+3 SYS
+4 pg_catalog
Row Count : 4
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
oid 4 PartsSupplier java.lang.Integer oid integer pg_catalog pg_namespace 11 10 0 false false false false 2 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_PROC.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_PROC.expected 2011-04-04 17:47:23 UTC (rev 3056)
+++ trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_PROC.expected 2011-04-04 19:26:16 UTC (rev 3057)
@@ -1,8 +1,8 @@
integer string boolean integer short object object object object integer
oid proname proretset prorettype pronargs proargtypes proargnames proargmodes proallargtypes pronamespace
-0 refreshMatViewRow false <null> 3 <null> <null> <null> <null> 1
-1 refreshMatView false <null> 3 <null> <null> <null> <null> 1
-2 getXMLSchemas false <null> 2 <null> <null> <null> <null> 2
+1 refreshMatViewRow false <null> 3 <null> <null> <null> <null> 2
+2 refreshMatView false <null> 3 <null> <null> <null> <null> 2
+3 getXMLSchemas false <null> 2 <null> <null> <null> <null> 3
Row Count : 3
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
oid 4 PartsSupplier java.lang.Integer oid integer pg_catalog pg_proc 11 10 0 false false false false 2 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_TYPE.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_TYPE.expected 2011-04-04 17:47:23 UTC (rev 3056)
+++ trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_TYPE.expected 2011-04-04 19:26:16 UTC (rev 3057)
@@ -1,21 +1,21 @@
integer string integer short char integer integer integer
oid typname typnamespace typlen typtype typbasetype typtypmod typrelid
-16 boolean 2 1 b 0 -1 0
-20 long 2 8 b 0 -1 0
-21 short 2 2 b 0 -1 0
-23 integer 2 4 b 0 -1 0
-25 text 2 -1 b 0 -1 0
-26 oid 2 4 b 0 -1 0
-142 xml 2 -1 b 0 -1 0
-700 float 2 4 b 0 -1 0
-701 double 2 8 b 0 -1 0
-1042 char 2 1 b 0 -1 0
-1043 string 2 -1 b 0 -1 0
-1082 date 2 4 b 0 -1 0
-1083 datetime 2 8 b 0 -1 0
-1114 timestamp 2 8 b 0 -1 0
-1700 decimal 2 -1 b 0 -1 0
-14939 lo 2 -1 b 0 -1 0
+16 boolean 3 1 b 0 -1 0
+20 long 3 8 b 0 -1 0
+21 short 3 2 b 0 -1 0
+23 integer 3 4 b 0 -1 0
+25 text 3 -1 b 0 -1 0
+26 oid 3 4 b 0 -1 0
+142 xml 3 -1 b 0 -1 0
+700 float 3 4 b 0 -1 0
+701 double 3 8 b 0 -1 0
+1042 char 3 1 b 0 -1 0
+1043 string 3 -1 b 0 -1 0
+1082 date 3 4 b 0 -1 0
+1083 datetime 3 8 b 0 -1 0
+1114 timestamp 3 8 b 0 -1 0
+1700 decimal 3 -1 b 0 -1 0
+14939 lo 3 -1 b 0 -1 0
Row Count : 16
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
oid 4 PartsSupplier java.lang.Integer oid integer pg_catalog pg_type 11 10 0 false false false false 2 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testColumns.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testColumns.expected 2011-04-04 17:47:23 UTC (rev 3056)
+++ trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testColumns.expected 2011-04-04 19:26:16 UTC (rev 3057)
@@ -1,247 +1,247 @@
string string string string integer string string integer integer boolean boolean boolean boolean boolean boolean boolean string string string string string string string integer integer integer string !
string integer
VDBName SchemaName TableName Name Position NameInSource DataType Scale Length IsLengthFixed SupportsSelect SupportsUpdates IsCaseSensitive IsSigned IsCurrency IsAutoIncremented NullType MinRange MaxRange SearchType Format DefaultValue JavaClass Precision CharOctetLength Radix UID !
Description OID
-PartsSupplier SYS DataTypes BaseType 17 <null> string 0 64 true true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 64 64 10 mmuuid:03beb57c-968b-4821-a6ae-cb1154cfadee !
<null> 73
-PartsSupplier SYSADMIN MatViews Cardinality 9 <null> integer 0 10 false true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:abe699b0-b6bc-4413-9172-0a21ca9664d2 !
<null> 25
-PartsSupplier SYS Tables Cardinality 9 <null> integer 0 10 false true false true true false false No Nulls <null> <null> All Except Like <null> <null> java.lang.Integer 10 10 10 mmuuid:24cdad3a-e8f7-4376-bb32-79f8bc8eeed2 !
<null> 154
-PartsSupplier SYS Columns CharOctetLength 25 <null> integer 0 10 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:de5def94-2804-4c91-91ed-26d630ce8afe !
<null> 52
-PartsSupplier SYS ReferenceKeyColumns DEFERRABILITY 14 <null> integer 0 10 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:88380f55-2cbd-4325-b9a3-9dcaa88a690e !
<null> 138
-PartsSupplier SYS ReferenceKeyColumns DELETE_RULE 11 <null> integer 0 10 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:9207f4df-a5ce-43bd-b3b2-fee57e459849 !
<null> 135
-PartsSupplier SYS Columns DataType 7 <null> string 0 100 true true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 100 100 10 mmuuid:9a8dc0d5-e65c-4032-a066-187f8d2e73ea !
<null> 34
-PartsSupplier SYS ProcedureParams DataType 5 <null> string 0 25 true true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 25 25 10 mmuuid:207a09af-65b8-405f-b1cb-537bc8632fa4 !
<null> 101
-PartsSupplier SYS Columns DefaultValue 22 <null> string 0 255 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:7e853988-356b-4c7c-83d4-a9f015bff279 !
<null> 49
-PartsSupplier SYS Columns Description 28 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:74d73b53-b723-419e-9fea-de56408409ee !
<null> 55
-PartsSupplier SYS DataTypes Description 18 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:b7d95ef6-63a3-441c-8de5-c98e2e577ea3 !
<null> 74
-PartsSupplier SYS Keys Description 5 <null> string 0 255 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:175e21b2-24c3-4677-a253-6d7cdb513a9a !
<null> 90
-PartsSupplier SYS ProcedureParams Description 15 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:05ac4703-5c2c-4410-93b7-19b39d90c803 !
<null> 111
-PartsSupplier SYS Procedures Description 7 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 225 255 10 mmuuid:fa0b5db7-acb1-4975-8410-d5d27df46040 !
<null> 119
-PartsSupplier SYS Schemas Description 5 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:1cb99300-a527-4a26-b4e6-08ebd92a781d !
<null> 143
-PartsSupplier SYS Tables Description 10 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:51605e41-5cb0-40ca-8c4a-4eca52780afc !
<null> 155
-PartsSupplier SYS ReferenceKeyColumns FKCOLUMN_NAME 8 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:f4b2b32c-e411-45e6-a236-fec4718f0874 !
<null> 132
-PartsSupplier SYS ReferenceKeyColumns FKTABLE_CAT 5 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 1 255 10 mmuuid:a0095da3-1258-44dc-bab9-33eacf886a28 !
<null> 129
-PartsSupplier SYS ReferenceKeyColumns FKTABLE_NAME 7 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:53284aaa-4c07-4930-8a0e-5e2aaa2da5cb !
<null> 131
-PartsSupplier SYS ReferenceKeyColumns FKTABLE_SCHEM 6 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:93a35adf-b6b1-4d9c-bdef-d336a84f478e !
<null> 130
-PartsSupplier SYS ReferenceKeyColumns FK_NAME 12 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:a9ca7516-6898-419d-b1ad-7d174d946d07 !
<null> 136
-PartsSupplier SYS Columns Format 21 <null> string 0 255 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:172b133e-5bf1-4020-953c-de4446b1e64a !
<null> 48
-PartsSupplier SYS Columns IsAutoIncremented 16 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:0d41e284-f274-4fd1-8576-7696f4b758d0 !
<null> 43
-PartsSupplier SYS DataTypes IsAutoIncremented 10 <null> boolean 0 1 true true false true true false false No Nulls <null> <null> Searchable <null> ('0') java.lang.Boolean 1 1 10 mmuuid:2a1568e2-776a-474b-981f-040a6ad63361 !
<null> 66
-PartsSupplier SYS Columns IsCaseSensitive 13 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:21ee166a-b462-41a1-b88d-dc79f63d6e17 !
<null> 40
-PartsSupplier SYS DataTypes IsCaseSensitive 11 <null> boolean 0 1 true true false true false false false No Nulls <null> <null> Searchable <null> ('0') java.lang.Boolean 1 1 10 mmuuid:1468aaf2-6481-4d10-9554-44d0363fe571 !
<null> 67
-PartsSupplier SYS Columns IsCurrency 15 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:b28a2963-36e0-4b4a-a8f8-a2c06f2b440a !
<null> 42
-PartsSupplier SYS Keys IsIndexed 8 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:ea96cb7c-2dcf-453c-b83a-1aaa921d8f92 !
<null> 93
-PartsSupplier SYS Columns IsLengthFixed 10 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:571aa4ce-3254-4a2b-aa48-1cb23a0c47ed !
<null> 37
-PartsSupplier SYS Tables IsMaterialized 12 <null> boolean 0 0 false true true false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 10 mmuuid:89265cba-ab85-48c2-960a-a5a9594ba6d0 !
<null> 157
-PartsSupplier SYS DataTypes IsPhysical 3 <null> boolean 0 1 true true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:983714a2-bd0b-4fad-b4e8-dfb7832e9c4b !
<null> 59
-PartsSupplier SYS Schemas IsPhysical 3 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:bab257d7-cced-4605-9b40-8ca6c078aca7 !
<null> 141
-PartsSupplier SYS Tables IsPhysical 6 <null> boolean 0 1 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:e27712f6-a0a6-452e-848d-9de77691e939 !
<null> 151
-PartsSupplier SYS Columns IsSigned 14 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:36be2afa-8ebc-4af8-acc5-a887cf2b5a86 !
<null> 41
-PartsSupplier SYS DataTypes IsSigned 9 <null> boolean 0 1 true true false true false false false No Nulls <null> <null> Searchable <null> ('0') java.lang.Boolean 1 1 10 mmuuid:235cea48-b2b9-41d5-b296-8ab9c649b6e7 !
<null> 65
-PartsSupplier SYS DataTypes IsStandard 2 <null> boolean 0 1 true true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:02f27c5d-af55-4677-b91b-8690793671b2 !
<null> 58
-PartsSupplier SYS Tables IsSystem 11 <null> boolean 0 1 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:9fa7987c-7dc8-4102-9cc0-5658d5b46382 !
<null> 156
-PartsSupplier SYS Columns JavaClass 23 <null> string 0 500 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 500 500 10 mmuuid:6b8d5df5-7bd2-425c-8b2b-e427e026ef66 !
<null> 50
-PartsSupplier SYS DataTypes JavaClass 5 <null> string 0 500 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 500 500 10 mmuuid:4c68ef90-8042-44ab-896a-bb3890a8fe04 !
<null> 61
-PartsSupplier SYS ReferenceKeyColumns KEY_SEQ 9 <null> short 0 5 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Short 5 5 10 mmuuid:4884ac83-84ed-4b67-9f1a-bd79c0199269 !
<null> 133
-PartsSupplier SYS KeyColumns KeyName 5 <null> string 0 255 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:da4bef58-83f4-4b88-8bb0-2dc8990be539 !
<null> 80
-PartsSupplier SYS KeyColumns KeyType 6 <null> string 0 20 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 20 20 10 mmuuid:df9e15e6-ab77-486d-bfe0-0adc378aa99d !
<null> 81
-PartsSupplier SYS Columns Length 9 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:b36ea0f6-cbff-4049-bc9c-8ec9928be048 !
<null> 36
-PartsSupplier SYSADMIN MatViews LoadState 7 <null> string 0 255 false true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:c67365c3-f252-40f4-aae6-8971d3b1b153 !
<null> 23
-PartsSupplier SYS Columns MaxRange 19 <null> string 0 50 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:0b0df4a5-7de5-4315-94f7-22c84958302e !
<null> 46
-PartsSupplier SYS Columns MinRange 18 <null> string 0 50 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:dba0f97d-fab5-45f6-a1eb-3459ab3fcc74 !
<null> 45
-PartsSupplier SYSADMIN MatViews Name 3 <null> string 0 255 false true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:0f56d35c-e450-4b4f-86b0-bdb4f1015c57 !
<null> 19
-PartsSupplier SYS Columns Name 4 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:d1f44a6d-3e39-4251-b873-1280c2b035b3 !
<null> 31
-PartsSupplier SYS DataTypes Name 1 <null> string 0 100 true true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 100 100 10 mmuuid:17f7de33-e6f0-4b9c-b55e-a87f6b7bb9b3 !
<null> 57
-PartsSupplier SYS KeyColumns Name 4 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:08bda0c7-5f66-4fed-8285-d74b63eeb0e2 !
<null> 79
-PartsSupplier SYS Keys Name 4 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:149de302-2107-45ca-839d-fc0dd1e7d7f4 !
<null> 89
-PartsSupplier SYS ProcedureParams Name 4 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:2bf20c6f-5a95-436d-8f30-a24d164e77a4 !
<null> 100
-PartsSupplier SYS Procedures Name 3 <null> string 0 255 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:bd17e98a-c40a-43b1-93ac-88d62937c051 !
<null> 115
-PartsSupplier SYS Properties Name 1 <null> string 0 255 true true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:ba007c56-04b6-4981-ab89-3fdd33ff0de8 !
<null> 121
-PartsSupplier SYS Schemas Name 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:654112f8-bb4c-4453-9e4d-f3a96fba61ec !
<null> 140
-PartsSupplier SYS Tables Name 3 <null> string 0 255 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:ef487cc2-1214-439c-af6e-da431df00d2c !
<null> 148
-PartsSupplier SYS VirtualDatabases Name 1 <null> string 0 255 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:42fa1249-8b24-4aae-a252-0a347db6ec30 !
<null> 159
-PartsSupplier SYS Columns NameInSource 6 <null> string 0 255 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:fac72c6e-41dc-4a1b-8af3-f0796690d9cc !
<null> 33
-PartsSupplier SYS Keys NameInSource 6 <null> string 0 255 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:a52a6169-99e0-4b7e-9dc6-3a93ffa6094a !
<null> 91
-PartsSupplier SYS Procedures NameInSource 4 <null> string 0 255 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:a4e7a0fd-c340-49a9-9ac0-8328caaffda8 !
<null> 116
-PartsSupplier SYS Tables NameInSource 5 <null> string 0 255 true true false true false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:1f036fb0-b841-450c-8462-986cdd57e921 !
<null> 150
-PartsSupplier SYS Columns NullType 17 <null> string 0 20 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 20 20 10 mmuuid:4d83bdbb-a7ce-44cc-a201-021a517d3c1a !
<null> 44
-PartsSupplier SYS DataTypes NullType 8 <null> string 0 20 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 20 20 10 mmuuid:278b0534-1164-495e-a8c6-de45e0ff53a4 !
<null> 64
-PartsSupplier SYS ProcedureParams NullType 13 <null> string 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 10 10 10 mmuuid:d887c203-6bf5-462b-b2f0-f5302e2f4bcd !
<null> 109
-PartsSupplier SYS Columns OID 29 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:b9e5ba07-4a8d-4589-8aa9-597ae70d18a4 !
<null> 56
-PartsSupplier SYS DataTypes OID 19 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:a3c41050-80b6-4fb5-9c6b-5e20c0839cda !
<null> 75
-PartsSupplier SYS KeyColumns OID 10 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:207d123c-a3ff-4e4e-85ae-6f3b0debfc06 !
<null> 85
-PartsSupplier SYS Keys OID 11 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:d781f893-bdf3-4dc1-956f-7e7b1a138c99 !
<null> 96
-PartsSupplier SYS ProcedureParams OID 16 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:72125f93-846f-413c-82e1-fa3227fb043f !
<null> 112
-PartsSupplier SYS Procedures OID 8 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:c80c02d2-7174-4cc4-b347-e921a80f568c !
<null> 120
-PartsSupplier SYS Properties OID 4 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:54c1a7dc-5ca8-4d34-8672-e76d63fe3b95 !
<null> 124
-PartsSupplier SYS Schemas OID 7 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:31746839-e019-4321-90cb-a557e1d4754e !
<null> 145
-PartsSupplier SYS Tables OID 13 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:dae79c58-b381-4275-8c1c-b299d732d355 !
<null> 158
-PartsSupplier SYS ProcedureParams Optional 8 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:4033f891-5ef5-4a75-8a50-bd1d021e43ad !
<null> 104
-PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_COLOR 3 PART_COLOR string 0 30 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 30 10 mmuuid:015c0d00-73ff-1edc-a81c-ecf397b10590 !
<null> 2
-PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_ID 1 PART_ID string 0 4 true true true true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 0 4 10 mmuuid:fadcd7c0-73fe-1edc-a81c-ecf397b10590 !
<null> 0
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS PART_ID 2 PART_ID string 0 4 true true true true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 0 4 10 mmuuid:3fc400c0-73ff-1edc-a81c-ecf397b10590 !
<null> 9
-PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_NAME 2 PART_NAME string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:0067e900-73ff-1edc-a81c-ecf397b10590 !
<null> 1
-PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_WEIGHT 4 PART_WEIGHT string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:015c0d01-73ff-1edc-a81c-ecf397b10590 !
<null> 3
-PartsSupplier SYS ReferenceKeyColumns PKCOLUMN_NAME 4 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:0125a80a-95f9-486f-aa90-debb21cb5f1b !
<null> 128
-PartsSupplier SYS ReferenceKeyColumns PKTABLE_CAT 1 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 1 255 10 mmuuid:f615a661-2c36-4ab1-b72b-5e13e99e052c !
<null> 125
-PartsSupplier SYS ReferenceKeyColumns PKTABLE_NAME 3 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:6d420bc2-0f85-4da9-833d-d71b428b0743 !
<null> 127
-PartsSupplier SYS ReferenceKeyColumns PKTABLE_SCHEM 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:ef7b3b79-fb51-42ef-a723-080ed0a6e3bc !
<null> 126
-PartsSupplier SYS ReferenceKeyColumns PK_NAME 13 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:ac210a6d-4de6-4d71-aa9b-e3d34baca81a !
<null> 137
-PartsSupplier SYS Columns Position 5 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:dbc8cd09-1b47-43c5-82ec-aba525b85cc4 !
<null> 32
-PartsSupplier SYS KeyColumns Position 9 <null> integer 0 10 true true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:92a4849c-ed0e-4f5f-a108-d7d71a5aba25 !
<null> 84
-PartsSupplier SYS ProcedureParams Position 6 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:5fdefd17-65f4-4350-9ee0-0ed3c34d10ae !
<null> 102
-PartsSupplier SYS Columns Precision 24 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:db3d49e2-fe1d-438b-8d07-847bf58506ab !
<null> 51
-PartsSupplier SYS DataTypes Precision 12 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:8673c810-7162-4331-ba0b-6fc3530d2d1c !
<null> 68
-PartsSupplier SYS ProcedureParams Precision 9 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:00fe7cad-0a83-42f0-90f2-d6a9584916b2 !
<null> 105
-PartsSupplier SYS Schemas PrimaryMetamodelURI 6 <null> string 0 255 false true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:eadfaba5-ce44-4529-816f-6af94666baec !
<null> 144
-PartsSupplier SYS ProcedureParams ProcedureName 3 <null> string 0 255 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:8081b3a6-fc79-42fd-b7c9-a19d682a1658 !
<null> 99
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS QUANTITY 3 QUANTITY short 0 0 true true true false true false false Nullable <null> <null> All Except Like <null> <null> java.lang.Short 3 0 10 mmuuid:3fc400c1-73ff-1edc-a81c-ecf397b10590 !
<null> 10
-PartsSupplier SYS Columns Radix 26 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:43a6124c-972f-4c4c-af05-24080c2a8ad7 !
<null> 53
-PartsSupplier SYS DataTypes Radix 13 <null> integer 0 10 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:967ab8fd-3226-4a78-8cf2-2eb7fbf2981a !
<null> 69
-PartsSupplier SYS ProcedureParams Radix 12 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:8df37c99-3b12-4789-8128-4aa496f895c4 !
<null> 108
-PartsSupplier SYS KeyColumns RefKeyUID 7 <null> string 0 50 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:aafbdf50-25aa-427b-b322-7cb36094a1e2 !
<null> 82
-PartsSupplier SYS Keys RefKeyUID 9 <null> string 0 50 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:1cf4c5ad-5932-47ec-8593-385b75bfeba8 !
<null> 94
-PartsSupplier SYS Procedures ReturnsResults 5 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:b01164c8-dd10-410d-a91b-fcb2fc0450ce !
<null> 117
-PartsSupplier SYS DataTypes RuntimeType 16 <null> string 0 64 true true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 64 64 10 mmuuid:3c7bc9d0-b73f-49a0-b9ab-dc97a4d2a124 !
<null> 72
-PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA SHIPPER_ID 1 SHIPPER_ID short 0 0 true true true false true false false No Nulls <null> <null> All Except Like <null> <null> java.lang.Short 2 0 10 mmuuid:121bc540-73ff-1edc-a81c-ecf397b10590 !
<null> 4
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS SHIPPER_ID 4 SHIPPER_ID short 0 0 true true true false true false false Nullable <null> <null> All Except Like <null> <null> java.lang.Short 2 0 10 mmuuid:3fc400c2-73ff-1edc-a81c-ecf397b10590 !
<null> 11
-PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA SHIPPER_NAME 2 SHIPPER_NAME string 0 30 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 30 10 mmuuid:130fe940-73ff-1edc-a81c-ecf397b10590 !
<null> 5
-PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS STATUS_ID 1 STATUS_ID short 0 0 true true true false true false false No Nulls <null> <null> All Except Like <null> <null> java.lang.Short 2 0 10 mmuuid:201d9600-73ff-1edc-a81c-ecf397b10590 !
<null> 6
-PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS STATUS_NAME 2 STATUS_NAME string 0 30 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 30 10 mmuuid:201d9601-73ff-1edc-a81c-ecf397b10590 !
<null> 7
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_CITY 4 SUPPLIER_CITY string 0 30 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 30 10 mmuuid:2fe92a40-73ff-1edc-a81c-ecf397b10590 !
<null> 15
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS SUPPLIER_ID 1 SUPPLIER_ID string 0 10 false true true true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 0 10 10 mmuuid:3ecfdcc0-73ff-1edc-a81c-ecf397b10590 !
<null> 8
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_ID 1 SUPPLIER_ID string 0 10 false true true true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 0 10 10 mmuuid:2f044880-73ff-1edc-a81c-ecf397b10590 !
<null> 12
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_NAME 2 SUPPLIER_NAME string 0 30 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 30 10 mmuuid:2f044881-73ff-1edc-a81c-ecf397b10590 !
<null> 13
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_STATE 5 SUPPLIER_STATE string 0 2 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 2 10 mmuuid:2fe92a41-73ff-1edc-a81c-ecf397b10590 !
<null> 16
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_STATUS 3 SUPPLIER_STATUS short 0 0 true true true false true false false Nullable <null> <null> All Except Like <null> <null> java.lang.Short 2 0 10 mmuuid:2f044882-73ff-1edc-a81c-ecf397b10590 !
<null> 14
-PartsSupplier SYS Columns Scale 8 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:cc6c6113-8d70-40c8-84c0-94e17c14e22e !
<null> 35
-PartsSupplier SYS DataTypes Scale 6 <null> integer 0 10 true true false false false false false Nullable <null> <null> Searchable <null> (0) java.lang.Integer 10 10 10 mmuuid:e8655204-e97a-45cd-909b-1e37731e9546 !
<null> 62
-PartsSupplier SYS ProcedureParams Scale 11 <null> integer 0 10 true true true false false false false No Nulls <null> <null> Searchable <null> (0) java.lang.Integer 10 10 10 mmuuid:360c8b1d-4b3d-42fd-952c-bf5763cad69e !
<null> 107
-PartsSupplier SYSADMIN MatViews SchemaName 2 <null> string 0 255 false true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:2738c484-d24d-4c40-b0b7-e734afb03450 !
<null> 18
-PartsSupplier SYS Columns SchemaName 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:859288c9-cd78-4407-90fc-61b5d310e2ab !
<null> 29
-PartsSupplier SYS KeyColumns SchemaName 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:787be966-cf12-4956-907f-a8e6dc1009dc !
<null> 77
-PartsSupplier SYS Keys SchemaName 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:4a7fc059-208e-4f98-b6ef-cb7c6102a327 !
<null> 87
-PartsSupplier SYS ProcedureParams SchemaName 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:88497911-619c-4ca8-b482-8885d940706a !
<null> 98
-PartsSupplier SYS Procedures SchemaName 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:53a84865-334e-4750-b343-de2411d56e3e !
<null> 114
-PartsSupplier SYS Tables SchemaName 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:95bd960c-fd84-44c9-9831-692376f69b46 !
<null> 147
-PartsSupplier SYS Columns SearchType 20 <null> string 0 20 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 20 20 10 mmuuid:3037138a-bb20-4485-ba01-75bc20b1a532 !
<null> 47
-PartsSupplier SYS DataTypes SearchType 14 <null> string 0 20 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 20 20 10 mmuuid:d8494fa3-40e4-44cd-b0d8-da5c83685a75 !
<null> 70
-PartsSupplier SYS Columns SupportsSelect 11 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:c2a50f93-0040-41ec-ad7b-e8511296555f !
<null> 38
-PartsSupplier SYS Columns SupportsUpdates 12 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:fab660d1-36bf-4a5b-bbe6-9a543e0ebd76 !
<null> 39
-PartsSupplier SYS Tables SupportsUpdates 7 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:5144d230-2b0e-4255-b321-65b9f6f6f76c !
<null> 152
-PartsSupplier SYS Columns TableName 3 <null> string 0 255 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:2c09c9d1-2f25-45de-81cf-eeb2a5157d34 !
<null> 30
-PartsSupplier SYS KeyColumns TableName 3 <null> string 0 2048 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 2048 2048 10 mmuuid:c24fad72-0c0d-4260-96ae-f188ad77b137 !
<null> 78
-PartsSupplier SYS Keys TableName 3 <null> string 0 2048 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 2048 2048 10 mmuuid:7d9540bd-b51f-4206-8c33-b39c5ba8bb8b !
<null> 88
-PartsSupplier SYSADMIN MatViews TargetName 5 <null> string 0 4000 false true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 4000 10 mmuuid:d2831595-d6f5-4cca-aa5d-2ff2530d0ab1 !
<null> 21
-PartsSupplier SYSADMIN MatViews TargetSchemaName 4 <null> string 0 255 false true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:a95dba1c-283e-4f48-9671-34cecdb7d0e3 !
<null> 20
-PartsSupplier SYS Keys Type 7 <null> string 0 20 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 20 20 10 mmuuid:29e73c18-afec-43a9-81ab-7378d6daf20b !
<null> 92
-PartsSupplier SYS ProcedureParams Type 7 <null> string 0 100 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 100 100 10 mmuuid:76a1981b-1226-4a55-9acf-82a061cc8642 !
<null> 103
-PartsSupplier SYS Tables Type 4 <null> string 0 20 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 20 20 10 mmuuid:4814a0af-4e8f-4f55-9b25-3148d90d3d9b !
<null> 149
-PartsSupplier SYS DataTypes TypeLength 7 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> (0) java.lang.Integer 10 10 10 mmuuid:0668382a-f9c3-4507-8b0f-df65a2ebbf2f !
<null> 63
-PartsSupplier SYS ProcedureParams TypeLength 10 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> (0) java.lang.Integer 10 10 10 mmuuid:791d7a29-8fc5-4735-9144-1accc114b58e !
<null> 106
-PartsSupplier SYS DataTypes TypeName 4 <null> string 0 100 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 100 100 10 mmuuid:48081cdd-9e90-4440-a956-4a32af96d7f4 !
<null> 60
-PartsSupplier SYS Columns UID 27 <null> string 0 50 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:5f491c75-769b-4908-9f68-2a9a486607bb !
<null> 54
-PartsSupplier SYS DataTypes UID 15 <null> string 0 50 true true false false true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:dd57f577-ffc4-4b55-8f7f-355b9ea3ce37 !
<null> 71
-PartsSupplier SYS KeyColumns UID 8 <null> string 0 50 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:0d994a45-4f52-4b79-9b31-7ef22331fee2 !
<null> 83
-PartsSupplier SYS Keys UID 10 <null> string 0 50 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:782218d1-5337-48c6-9070-0aafd4c6cd20 !
<null> 95
-PartsSupplier SYS ProcedureParams UID 14 <null> string 0 50 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 50 10 mmuuid:a278de2e-89f1-4281-9e63-54aebb6062ce !
<null> 110
-PartsSupplier SYS Procedures UID 6 <null> string 0 50 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:de9df25a-c886-46e0-ae3a-8eb6792e43f4 !
<null> 118
-PartsSupplier SYS Properties UID 3 <null> string 0 50 true true false false true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:b333969a-83e0-4010-9463-9a0088da6c83 !
<null> 123
-PartsSupplier SYS Schemas UID 4 <null> string 0 50 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:ad232e4d-9c01-4d0c-bc57-0459d9db918a !
<null> 142
-PartsSupplier SYS Tables UID 8 <null> string 0 50 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:6afe3737-26f9-43a8-88db-86531b5dc66c !
<null> 153
-PartsSupplier SYS ReferenceKeyColumns UPDATE_RULE 10 <null> integer 0 10 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:30d5ae74-b19e-4186-97e1-aeff5801e44f !
<null> 134
-PartsSupplier SYSADMIN MatViews Updated 8 <null> timestamp 0 0 false true false true true false false Nullable <null> <null> Searchable <null> <null> java.sql.Timestamp 0 0 10 mmuuid:33970a66-7ad4-411f-a6c4-545746747fe6 !
<null> 24
-PartsSupplier SYSADMIN MatViews VDBName 1 <null> string 0 255 false true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:c1ce9841-e272-4839-8c78-777a5f68d241 !
<null> 17
-PartsSupplier SYS Columns VDBName 1 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:83f19a81-1243-4751-8c99-daddbf37b1d7 !
<null> 28
-PartsSupplier SYS KeyColumns VDBName 1 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:f062eb9c-4854-47fb-b7bd-a4e23c782b62 !
<null> 76
-PartsSupplier SYS Keys VDBName 1 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:5785b523-7da3-42c1-8920-66daa1f7fa1d !
<null> 86
-PartsSupplier SYS ProcedureParams VDBName 1 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:f832f316-2403-43fa-9ccc-c3ab9d38acca !
<null> 97
-PartsSupplier SYS Procedures VDBName 1 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:1d664747-4a95-4605-8b28-381bed3121f1 !
<null> 113
-PartsSupplier SYS Schemas VDBName 1 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:73dbf95b-a283-4f0a-81b9-9b98e09c2906 !
<null> 139
-PartsSupplier SYS Tables VDBName 1 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:58de905f-9d64-4831-a985-da6d082ff709 !
<null> 146
-PartsSupplier SYSADMIN MatViews Valid 6 <null> boolean 0 0 false true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 10 mmuuid:13098912-bce2-4842-9ea9-b162fcd7383e !
<null> 22
-PartsSupplier SYS Properties Value 2 <null> string 0 255 true true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:c917257d-06b7-41dd-a6cb-44c0ff0f897e !
<null> 122
-PartsSupplier SYS VirtualDatabases Version 2 <null> string 0 50 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:c876d749-a512-4810-9910-3034ca524c45 !
<null> 160
-PartsSupplier pg_catalog pg_attrdef adbin 3 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:e9b278d4-49af-442f-9a5a-b699fe3b102b !
<null> 221
-PartsSupplier pg_catalog pg_attrdef adnum 2 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:4589389f-4abd-42a6-818f-ff1f2a085dfb !
<null> 220
-PartsSupplier pg_catalog pg_attrdef adrelid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:76a7dd05-9a7d-4243-b561-f3056500dcaf !
<null> 219
-PartsSupplier pg_catalog pg_attrdef adsrc 4 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:e22c521a-e208-4181-9dbd-89f5de7014b9 !
<null> 222
-PartsSupplier pg_catalog pg_am amname 2 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:3c67619c-7d8f-4378-b7e9-84a0451ea5e5 !
<null> 199
-PartsSupplier pg_catalog pg_attribute atthasdef 10 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:5868e549-4bbe-479e-bc7e-632c05cc2329 !
<null> 181
-PartsSupplier pg_catalog pg_attribute attisdropped 9 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:7beb42a9-dfe6-43de-98b6-7e8948b1a666 !
<null> 180
-PartsSupplier pg_catalog pg_attribute attlen 5 <null> short 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Short 0 0 0 mmuid:d1214249-95cd-426f-b8f6-4bf68c0504c7 !
<null> 176
-PartsSupplier pg_catalog pg_attribute attname 3 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:6064d149-4102-4c2d-9132-582342f25e90 !
<null> 174
-PartsSupplier pg_catalog matpg_relatt attname 3 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:0b0894ba-e1ea-4eaf-bcd2-ea9ebd05e47d !
<null> 238
-PartsSupplier pg_catalog pg_attribute attnotnull 8 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:91ce8bde-8570-4867-be17-80acfa9275a6 !
<null> 179
-PartsSupplier pg_catalog pg_attribute attnum 6 <null> short 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Short 0 0 0 mmuid:141fd911-f2dd-4edd-8f08-ad8a67ffd0fb !
<null> 177
-PartsSupplier pg_catalog matpg_relatt attnum 2 <null> short 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Short 0 0 0 mmuid:5c7bf056-ecc5-41ea-a122-7a4b1de9908a !
<null> 237
-PartsSupplier pg_catalog pg_attribute attrelid 2 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:3be6b5de-2287-4279-93f3-4f5064799118 !
<null> 173
-PartsSupplier pg_catalog matpg_relatt attrelid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:8c0714d6-1c72-40b4-8528-3b2c63059107 !
<null> 236
-PartsSupplier pg_catalog pg_attribute atttypid 4 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:99782493-1cce-4e14-9c1b-4de7ce50e2c8 !
<null> 175
-PartsSupplier pg_catalog pg_attribute atttypmod 7 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:2e2bae3c-ab93-49f5-b96c-7a7b9d66782d !
<null> 178
-PartsSupplier pg_catalog matpg_relatt autoinc 6 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:f1998229-2c1a-47b7-8f46-9dda81446db6 !
<null> 241
-PartsSupplier SYSADMIN VDBResources contents 2 <null> blob 0 0 false true false true true false false Nullable <null> <null> Searchable <null> <null> org.teiid.core.types.BlobType 0 0 10 mmuuid:f9421669-3564-451d-9293-96c1e5e72c4f !
<null> 27
-PartsSupplier pg_catalog pg_database datacl 7 <null> object 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Object 0 0 0 mmuid:4b5beb14-03a0-4652-9d6f-5f8cc74d470c !
<null> 229
-PartsSupplier pg_catalog pg_database datallowconn 5 <null> char 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Character 0 0 0 mmuid:c2bdf40c-ec58-439c-a403-7adf604ceadd !
<null> 227
-PartsSupplier pg_catalog pg_database datconfig 6 <null> object 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Object 0 0 0 mmuid:5c9d54b2-433f-443a-85ce-821f42ed109e !
<null> 228
-PartsSupplier pg_catalog pg_database datdba 8 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:8b993c11-de2b-48bc-beb1-3e44c46811b4 !
<null> 230
-PartsSupplier pg_catalog pg_database datlastsysoid 4 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:3b621b25-171c-405b-8bf9-635cf93f2273 !
<null> 226
-PartsSupplier pg_catalog pg_database datname 2 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:689cde3b-a631-4f25-94b4-ff2ffe022b0f !
<null> 224
-PartsSupplier pg_catalog pg_database dattablespace 9 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:36db343d-e99a-427c-a4e2-763a720ce4a4 !
<null> 231
-PartsSupplier pg_catalog pg_database encoding 3 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:1aedd02c-5801-41e7-accd-da1f257c26e8 !
<null> 225
-PartsSupplier pg_catalog pg_index indexprs 7 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:9ea3b6d2-b27b-4bb1-a99d-b703c3308384 !
<null> 196
-PartsSupplier pg_catalog pg_index indexrelid 2 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:83ae2247-7eec-459f-b037-ffd3cdca0627 !
<null> 191
-PartsSupplier pg_catalog pg_index indisclustered 4 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:16998907-e1dd-447e-898d-780994d30619 !
<null> 193
-PartsSupplier pg_catalog pg_index indisprimary 6 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:a52c714d-dfe9-406c-906b-fadd53ac4e98 !
<null> 195
-PartsSupplier pg_catalog pg_index indisunique 5 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:9f873e0f-903d-4c9d-8c37-1073b5ec4c67 !
<null> 194
-PartsSupplier pg_catalog pg_index indkey 8 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:1e6dbecd-9a2d-4aef-afbe-665de7acb9d6 !
<null> 197
-PartsSupplier pg_catalog pg_index indrelid 3 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:8709e084-48df-417d-b3f8-f4e9b7d8802b !
<null> 192
-PartsSupplier pg_catalog pg_namespace nspname 2 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:0e513513-b35a-48be-975d-5dbed6ace7e9 !
<null> 162
-PartsSupplier pg_catalog matpg_relatt nspname 5 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:ffbf69c1-2e34-4764-a9b3-9a1b61bfd4af !
<null> 240
-PartsSupplier pg_catalog pg_namespace oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:688e5112-4083-4b67-b42c-62d9a614c59a !
<null> 161
-PartsSupplier pg_catalog pg_class oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:c1e736ac-c9d4-4026-8904-23c90e6eb1c0 !
<null> 163
-PartsSupplier pg_catalog pg_attribute oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:f735e545-a81c-4ee2-84d0-3ea35d4083a2 !
<null> 172
-PartsSupplier pg_catalog pg_type oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:b6f64d16-b147-459d-8e84-1bd3048fb900 !
<null> 182
-PartsSupplier pg_catalog pg_index oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:09daed8d-b0b8-4552-a261-2b6c775b46b0 !
<null> 190
-PartsSupplier pg_catalog pg_am oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:f6517a63-8c14-4b73-a18d-afaa5dfb35d9 !
<null> 198
-PartsSupplier pg_catalog pg_proc oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:f20c9489-10ca-4596-8a37-24218b67f764 !
<null> 200
-PartsSupplier pg_catalog pg_trigger oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:2b75f0b1-7475-4ed5-9da3-d37a8a25f26a !
<null> 210
-PartsSupplier pg_catalog pg_database oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:382f9fc9-8c96-4df7-ab5d-04dfb47ee142 !
<null> 223
-PartsSupplier pg_catalog pg_user oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:e63613cb-01ee-4b37-8b91-99d1aac4dfcb !
<null> 232
-PartsSupplier pg_catalog pg_proc proallargtypes 9 <null> object 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Object 0 0 0 mmuid:bcbed548-176c-4116-a5d6-7638cb0206e1 !
<null> 208
-PartsSupplier pg_catalog pg_proc proargmodes 8 <null> object 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Object 0 0 0 mmuid:d9f36bdc-7b25-4af0-b9f5-a96aac6d3094 !
<null> 207
-PartsSupplier pg_catalog pg_proc proargnames 7 <null> object 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Object 0 0 0 mmuid:ffa4ac73-b549-470e-931f-dc36330cb8c4 !
<null> 206
-PartsSupplier pg_catalog pg_proc proargtypes 6 <null> object 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Object 0 0 0 mmuid:6796c2e7-48a4-4f9f-bc98-d47913e2491c !
<null> 205
-PartsSupplier pg_catalog pg_proc proname 2 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:bdf3ee1e-b5b7-48ab-b43c-4bbb2c8ae1e2 !
<null> 201
-PartsSupplier pg_catalog pg_proc pronamespace 10 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:a385751f-a31a-4d5d-9197-3fbd390b0251 !
<null> 209
-PartsSupplier pg_catalog pg_proc pronargs 5 <null> short 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Short 0 0 0 mmuid:9fb5a34a-3a7e-4d38-b7cd-239f28a3504e !
<null> 204
-PartsSupplier pg_catalog pg_proc proretset 3 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:b288b3aa-37f2-4a8e-8b1b-e932a2ce3e25 !
<null> 202
-PartsSupplier pg_catalog pg_proc prorettype 4 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:e0244e1d-431c-41fa-8194-1e357e2b688b !
<null> 203
-PartsSupplier pg_catalog pg_class relam 5 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:c2f92b1a-6ba0-4486-8936-f5185d926178 !
<null> 167
-PartsSupplier pg_catalog pg_class relhasoids 9 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:3ac5a14a-1f9e-455b-8ea1-cf0878774fd7 !
<null> 171
-PartsSupplier pg_catalog pg_class relhasrules 8 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:6c26fd66-2a4a-4ccf-949a-a06a858db7f6 !
<null> 170
-PartsSupplier pg_catalog pg_class relkind 4 <null> char 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Character 0 0 0 mmuid:ef4359eb-6d51-4249-bfea-40bc0f407d10 !
<null> 166
-PartsSupplier pg_catalog pg_class relname 2 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:5f9b50fa-8188-4048-93c2-3ad1587915df !
<null> 164
-PartsSupplier pg_catalog matpg_relatt relname 4 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:5cfb2b62-a912-4bfb-bf4f-51e107fe210c !
<null> 239
-PartsSupplier pg_catalog pg_class relnamespace 3 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:4591ef08-bff8-4f3b-9de7-420f9c7f9d2b !
<null> 165
-PartsSupplier pg_catalog pg_class relpages 7 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:44dee7d6-b6ae-44c7-85f2-e87364d8d059 !
<null> 169
-PartsSupplier pg_catalog pg_class reltuples 6 <null> float 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Float 0 0 0 mmuid:b9ed4b49-5a7b-4ba4-863a-37fd95b2a34c !
<null> 168
-PartsSupplier SYSADMIN VDBResources resourcePath 1 <null> string 0 255 false true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:b1bc5150-3dcc-452e-9e75-4a506997f612 !
<null> 26
-PartsSupplier pg_catalog pg_trigger tgargs 4 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:250d7c06-728a-4b2a-b557-91f2a69bb184 !
<null> 213
-PartsSupplier pg_catalog pg_trigger tgconstrname 8 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:da4b59ca-ebff-45a8-ad68-9777bc587813 !
<null> 217
-PartsSupplier pg_catalog pg_trigger tgconstrrelid 2 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:635b6634-632c-43c9-8cc7-bcaa016133e8 !
<null> 211
-PartsSupplier pg_catalog pg_trigger tgdeferrable 6 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:d70f020b-658c-4f58-86dc-0fbb12e2d8af !
<null> 215
-PartsSupplier pg_catalog pg_trigger tgfoid 3 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:64977f3e-f2a0-466e-a5d1-80bb058cbe08 !
<null> 212
-PartsSupplier pg_catalog pg_trigger tginitdeferred 7 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:bfbff036-caf2-4652-80cf-398af17ed7d1 !
<null> 216
-PartsSupplier pg_catalog pg_trigger tgnargs 5 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:0c20dbe7-5d89-411f-a8ab-3d77b999595b !
<null> 214
-PartsSupplier pg_catalog pg_trigger tgrelid 9 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:c010d12f-2074-45db-8e18-979cee2c45da !
<null> 218
-PartsSupplier pg_catalog pg_type typbasetype 6 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:a17d2f61-cd68-4c0d-8d25-132f68eb3b67 !
<null> 187
-PartsSupplier pg_catalog pg_type typlen 4 <null> short 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Short 0 0 0 mmuid:931c09e1-937a-437e-aab2-2360f8d90e2b !
<null> 185
-PartsSupplier pg_catalog pg_type typname 2 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:d600d818-2aad-4c92-9343-267d044dd97d !
<null> 183
-PartsSupplier pg_catalog pg_type typnamespace 3 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:e47217d2-2b07-4353-bfbd-d7c883a5e7e0 !
<null> 184
-PartsSupplier pg_catalog pg_type typrelid 8 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:bec25882-b292-4ed1-a610-cad5d504837d !
<null> 189
-PartsSupplier pg_catalog pg_type typtype 5 <null> char 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Character 0 0 0 mmuid:83199eba-7af4-44a9-822f-006677b1b895 !
<null> 186
-PartsSupplier pg_catalog pg_type typtypmod 7 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:cee3559d-1ce6-4b17-ad57-2ecb79a9e1d2 !
<null> 188
-PartsSupplier pg_catalog pg_user usecreatedb 3 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:236445e1-408c-40a1-a61c-40e96fb5dc9f !
<null> 234
-PartsSupplier pg_catalog pg_user usename 2 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:bb78401d-d10c-43b1-af84-e4fa6b95db42 !
<null> 233
-PartsSupplier pg_catalog pg_user usesuper 4 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:6da98878-b46e-4ed1-b032-1bc72da595f4 !
<null> 235
+PartsSupplier SYS DataTypes BaseType 17 <null> string 0 64 true true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 64 64 10 mmuuid:03beb57c-968b-4821-a6ae-cb1154cfadee !
<null> 74
+PartsSupplier SYSADMIN MatViews Cardinality 9 <null> integer 0 10 false true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:abe699b0-b6bc-4413-9172-0a21ca9664d2 !
<null> 26
+PartsSupplier SYS Tables Cardinality 9 <null> integer 0 10 false true false true true false false No Nulls <null> <null> All Except Like <null> <null> java.lang.Integer 10 10 10 mmuuid:24cdad3a-e8f7-4376-bb32-79f8bc8eeed2 !
<null> 155
+PartsSupplier SYS Columns CharOctetLength 25 <null> integer 0 10 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:de5def94-2804-4c91-91ed-26d630ce8afe !
<null> 53
+PartsSupplier SYS ReferenceKeyColumns DEFERRABILITY 14 <null> integer 0 10 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:88380f55-2cbd-4325-b9a3-9dcaa88a690e !
<null> 139
+PartsSupplier SYS ReferenceKeyColumns DELETE_RULE 11 <null> integer 0 10 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:9207f4df-a5ce-43bd-b3b2-fee57e459849 !
<null> 136
+PartsSupplier SYS Columns DataType 7 <null> string 0 100 true true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 100 100 10 mmuuid:9a8dc0d5-e65c-4032-a066-187f8d2e73ea !
<null> 35
+PartsSupplier SYS ProcedureParams DataType 5 <null> string 0 25 true true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 25 25 10 mmuuid:207a09af-65b8-405f-b1cb-537bc8632fa4 !
<null> 102
+PartsSupplier SYS Columns DefaultValue 22 <null> string 0 255 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:7e853988-356b-4c7c-83d4-a9f015bff279 !
<null> 50
+PartsSupplier SYS Columns Description 28 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:74d73b53-b723-419e-9fea-de56408409ee !
<null> 56
+PartsSupplier SYS DataTypes Description 18 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:b7d95ef6-63a3-441c-8de5-c98e2e577ea3 !
<null> 75
+PartsSupplier SYS Keys Description 5 <null> string 0 255 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:175e21b2-24c3-4677-a253-6d7cdb513a9a !
<null> 91
+PartsSupplier SYS ProcedureParams Description 15 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:05ac4703-5c2c-4410-93b7-19b39d90c803 !
<null> 112
+PartsSupplier SYS Procedures Description 7 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 225 255 10 mmuuid:fa0b5db7-acb1-4975-8410-d5d27df46040 !
<null> 120
+PartsSupplier SYS Schemas Description 5 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:1cb99300-a527-4a26-b4e6-08ebd92a781d !
<null> 144
+PartsSupplier SYS Tables Description 10 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:51605e41-5cb0-40ca-8c4a-4eca52780afc !
<null> 156
+PartsSupplier SYS ReferenceKeyColumns FKCOLUMN_NAME 8 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:f4b2b32c-e411-45e6-a236-fec4718f0874 !
<null> 133
+PartsSupplier SYS ReferenceKeyColumns FKTABLE_CAT 5 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 1 255 10 mmuuid:a0095da3-1258-44dc-bab9-33eacf886a28 !
<null> 130
+PartsSupplier SYS ReferenceKeyColumns FKTABLE_NAME 7 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:53284aaa-4c07-4930-8a0e-5e2aaa2da5cb !
<null> 132
+PartsSupplier SYS ReferenceKeyColumns FKTABLE_SCHEM 6 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:93a35adf-b6b1-4d9c-bdef-d336a84f478e !
<null> 131
+PartsSupplier SYS ReferenceKeyColumns FK_NAME 12 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:a9ca7516-6898-419d-b1ad-7d174d946d07 !
<null> 137
+PartsSupplier SYS Columns Format 21 <null> string 0 255 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:172b133e-5bf1-4020-953c-de4446b1e64a !
<null> 49
+PartsSupplier SYS Columns IsAutoIncremented 16 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:0d41e284-f274-4fd1-8576-7696f4b758d0 !
<null> 44
+PartsSupplier SYS DataTypes IsAutoIncremented 10 <null> boolean 0 1 true true false true true false false No Nulls <null> <null> Searchable <null> ('0') java.lang.Boolean 1 1 10 mmuuid:2a1568e2-776a-474b-981f-040a6ad63361 !
<null> 67
+PartsSupplier SYS Columns IsCaseSensitive 13 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:21ee166a-b462-41a1-b88d-dc79f63d6e17 !
<null> 41
+PartsSupplier SYS DataTypes IsCaseSensitive 11 <null> boolean 0 1 true true false true false false false No Nulls <null> <null> Searchable <null> ('0') java.lang.Boolean 1 1 10 mmuuid:1468aaf2-6481-4d10-9554-44d0363fe571 !
<null> 68
+PartsSupplier SYS Columns IsCurrency 15 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:b28a2963-36e0-4b4a-a8f8-a2c06f2b440a !
<null> 43
+PartsSupplier SYS Keys IsIndexed 8 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:ea96cb7c-2dcf-453c-b83a-1aaa921d8f92 !
<null> 94
+PartsSupplier SYS Columns IsLengthFixed 10 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:571aa4ce-3254-4a2b-aa48-1cb23a0c47ed !
<null> 38
+PartsSupplier SYS Tables IsMaterialized 12 <null> boolean 0 0 false true true false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 10 mmuuid:89265cba-ab85-48c2-960a-a5a9594ba6d0 !
<null> 158
+PartsSupplier SYS DataTypes IsPhysical 3 <null> boolean 0 1 true true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:983714a2-bd0b-4fad-b4e8-dfb7832e9c4b !
<null> 60
+PartsSupplier SYS Schemas IsPhysical 3 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:bab257d7-cced-4605-9b40-8ca6c078aca7 !
<null> 142
+PartsSupplier SYS Tables IsPhysical 6 <null> boolean 0 1 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:e27712f6-a0a6-452e-848d-9de77691e939 !
<null> 152
+PartsSupplier SYS Columns IsSigned 14 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:36be2afa-8ebc-4af8-acc5-a887cf2b5a86 !
<null> 42
+PartsSupplier SYS DataTypes IsSigned 9 <null> boolean 0 1 true true false true false false false No Nulls <null> <null> Searchable <null> ('0') java.lang.Boolean 1 1 10 mmuuid:235cea48-b2b9-41d5-b296-8ab9c649b6e7 !
<null> 66
+PartsSupplier SYS DataTypes IsStandard 2 <null> boolean 0 1 true true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:02f27c5d-af55-4677-b91b-8690793671b2 !
<null> 59
+PartsSupplier SYS Tables IsSystem 11 <null> boolean 0 1 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:9fa7987c-7dc8-4102-9cc0-5658d5b46382 !
<null> 157
+PartsSupplier SYS Columns JavaClass 23 <null> string 0 500 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 500 500 10 mmuuid:6b8d5df5-7bd2-425c-8b2b-e427e026ef66 !
<null> 51
+PartsSupplier SYS DataTypes JavaClass 5 <null> string 0 500 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 500 500 10 mmuuid:4c68ef90-8042-44ab-896a-bb3890a8fe04 !
<null> 62
+PartsSupplier SYS ReferenceKeyColumns KEY_SEQ 9 <null> short 0 5 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Short 5 5 10 mmuuid:4884ac83-84ed-4b67-9f1a-bd79c0199269 !
<null> 134
+PartsSupplier SYS KeyColumns KeyName 5 <null> string 0 255 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:da4bef58-83f4-4b88-8bb0-2dc8990be539 !
<null> 81
+PartsSupplier SYS KeyColumns KeyType 6 <null> string 0 20 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 20 20 10 mmuuid:df9e15e6-ab77-486d-bfe0-0adc378aa99d !
<null> 82
+PartsSupplier SYS Columns Length 9 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:b36ea0f6-cbff-4049-bc9c-8ec9928be048 !
<null> 37
+PartsSupplier SYSADMIN MatViews LoadState 7 <null> string 0 255 false true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:c67365c3-f252-40f4-aae6-8971d3b1b153 !
<null> 24
+PartsSupplier SYS Columns MaxRange 19 <null> string 0 50 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:0b0df4a5-7de5-4315-94f7-22c84958302e !
<null> 47
+PartsSupplier SYS Columns MinRange 18 <null> string 0 50 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:dba0f97d-fab5-45f6-a1eb-3459ab3fcc74 !
<null> 46
+PartsSupplier SYSADMIN MatViews Name 3 <null> string 0 255 false true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:0f56d35c-e450-4b4f-86b0-bdb4f1015c57 !
<null> 20
+PartsSupplier SYS Columns Name 4 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:d1f44a6d-3e39-4251-b873-1280c2b035b3 !
<null> 32
+PartsSupplier SYS DataTypes Name 1 <null> string 0 100 true true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 100 100 10 mmuuid:17f7de33-e6f0-4b9c-b55e-a87f6b7bb9b3 !
<null> 58
+PartsSupplier SYS KeyColumns Name 4 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:08bda0c7-5f66-4fed-8285-d74b63eeb0e2 !
<null> 80
+PartsSupplier SYS Keys Name 4 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:149de302-2107-45ca-839d-fc0dd1e7d7f4 !
<null> 90
+PartsSupplier SYS ProcedureParams Name 4 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:2bf20c6f-5a95-436d-8f30-a24d164e77a4 !
<null> 101
+PartsSupplier SYS Procedures Name 3 <null> string 0 255 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:bd17e98a-c40a-43b1-93ac-88d62937c051 !
<null> 116
+PartsSupplier SYS Properties Name 1 <null> string 0 255 true true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:ba007c56-04b6-4981-ab89-3fdd33ff0de8 !
<null> 122
+PartsSupplier SYS Schemas Name 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:654112f8-bb4c-4453-9e4d-f3a96fba61ec !
<null> 141
+PartsSupplier SYS Tables Name 3 <null> string 0 255 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:ef487cc2-1214-439c-af6e-da431df00d2c !
<null> 149
+PartsSupplier SYS VirtualDatabases Name 1 <null> string 0 255 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:42fa1249-8b24-4aae-a252-0a347db6ec30 !
<null> 160
+PartsSupplier SYS Columns NameInSource 6 <null> string 0 255 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:fac72c6e-41dc-4a1b-8af3-f0796690d9cc !
<null> 34
+PartsSupplier SYS Keys NameInSource 6 <null> string 0 255 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:a52a6169-99e0-4b7e-9dc6-3a93ffa6094a !
<null> 92
+PartsSupplier SYS Procedures NameInSource 4 <null> string 0 255 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:a4e7a0fd-c340-49a9-9ac0-8328caaffda8 !
<null> 117
+PartsSupplier SYS Tables NameInSource 5 <null> string 0 255 true true false true false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:1f036fb0-b841-450c-8462-986cdd57e921 !
<null> 151
+PartsSupplier SYS Columns NullType 17 <null> string 0 20 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 20 20 10 mmuuid:4d83bdbb-a7ce-44cc-a201-021a517d3c1a !
<null> 45
+PartsSupplier SYS DataTypes NullType 8 <null> string 0 20 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 20 20 10 mmuuid:278b0534-1164-495e-a8c6-de45e0ff53a4 !
<null> 65
+PartsSupplier SYS ProcedureParams NullType 13 <null> string 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 10 10 10 mmuuid:d887c203-6bf5-462b-b2f0-f5302e2f4bcd !
<null> 110
+PartsSupplier SYS Columns OID 29 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:b9e5ba07-4a8d-4589-8aa9-597ae70d18a4 !
<null> 57
+PartsSupplier SYS DataTypes OID 19 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:a3c41050-80b6-4fb5-9c6b-5e20c0839cda !
<null> 76
+PartsSupplier SYS KeyColumns OID 10 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:207d123c-a3ff-4e4e-85ae-6f3b0debfc06 !
<null> 86
+PartsSupplier SYS Keys OID 11 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:d781f893-bdf3-4dc1-956f-7e7b1a138c99 !
<null> 97
+PartsSupplier SYS ProcedureParams OID 16 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:72125f93-846f-413c-82e1-fa3227fb043f !
<null> 113
+PartsSupplier SYS Procedures OID 8 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:c80c02d2-7174-4cc4-b347-e921a80f568c !
<null> 121
+PartsSupplier SYS Properties OID 4 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:54c1a7dc-5ca8-4d34-8672-e76d63fe3b95 !
<null> 125
+PartsSupplier SYS Schemas OID 7 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:31746839-e019-4321-90cb-a557e1d4754e !
<null> 146
+PartsSupplier SYS Tables OID 13 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:dae79c58-b381-4275-8c1c-b299d732d355 !
<null> 159
+PartsSupplier SYS ProcedureParams Optional 8 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:4033f891-5ef5-4a75-8a50-bd1d021e43ad !
<null> 105
+PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_COLOR 3 PART_COLOR string 0 30 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 30 10 mmuuid:015c0d00-73ff-1edc-a81c-ecf397b10590 !
<null> 3
+PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_ID 1 PART_ID string 0 4 true true true true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 0 4 10 mmuuid:fadcd7c0-73fe-1edc-a81c-ecf397b10590 !
<null> 1
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS PART_ID 2 PART_ID string 0 4 true true true true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 0 4 10 mmuuid:3fc400c0-73ff-1edc-a81c-ecf397b10590 !
<null> 10
+PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_NAME 2 PART_NAME string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:0067e900-73ff-1edc-a81c-ecf397b10590 !
<null> 2
+PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_WEIGHT 4 PART_WEIGHT string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:015c0d01-73ff-1edc-a81c-ecf397b10590 !
<null> 4
+PartsSupplier SYS ReferenceKeyColumns PKCOLUMN_NAME 4 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:0125a80a-95f9-486f-aa90-debb21cb5f1b !
<null> 129
+PartsSupplier SYS ReferenceKeyColumns PKTABLE_CAT 1 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 1 255 10 mmuuid:f615a661-2c36-4ab1-b72b-5e13e99e052c !
<null> 126
+PartsSupplier SYS ReferenceKeyColumns PKTABLE_NAME 3 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:6d420bc2-0f85-4da9-833d-d71b428b0743 !
<null> 128
+PartsSupplier SYS ReferenceKeyColumns PKTABLE_SCHEM 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:ef7b3b79-fb51-42ef-a723-080ed0a6e3bc !
<null> 127
+PartsSupplier SYS ReferenceKeyColumns PK_NAME 13 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:ac210a6d-4de6-4d71-aa9b-e3d34baca81a !
<null> 138
+PartsSupplier SYS Columns Position 5 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:dbc8cd09-1b47-43c5-82ec-aba525b85cc4 !
<null> 33
+PartsSupplier SYS KeyColumns Position 9 <null> integer 0 10 true true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:92a4849c-ed0e-4f5f-a108-d7d71a5aba25 !
<null> 85
+PartsSupplier SYS ProcedureParams Position 6 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:5fdefd17-65f4-4350-9ee0-0ed3c34d10ae !
<null> 103
+PartsSupplier SYS Columns Precision 24 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:db3d49e2-fe1d-438b-8d07-847bf58506ab !
<null> 52
+PartsSupplier SYS DataTypes Precision 12 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:8673c810-7162-4331-ba0b-6fc3530d2d1c !
<null> 69
+PartsSupplier SYS ProcedureParams Precision 9 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:00fe7cad-0a83-42f0-90f2-d6a9584916b2 !
<null> 106
+PartsSupplier SYS Schemas PrimaryMetamodelURI 6 <null> string 0 255 false true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:eadfaba5-ce44-4529-816f-6af94666baec !
<null> 145
+PartsSupplier SYS ProcedureParams ProcedureName 3 <null> string 0 255 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:8081b3a6-fc79-42fd-b7c9-a19d682a1658 !
<null> 100
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS QUANTITY 3 QUANTITY short 0 0 true true true false true false false Nullable <null> <null> All Except Like <null> <null> java.lang.Short 3 0 10 mmuuid:3fc400c1-73ff-1edc-a81c-ecf397b10590 !
<null> 11
+PartsSupplier SYS Columns Radix 26 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:43a6124c-972f-4c4c-af05-24080c2a8ad7 !
<null> 54
+PartsSupplier SYS DataTypes Radix 13 <null> integer 0 10 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:967ab8fd-3226-4a78-8cf2-2eb7fbf2981a !
<null> 70
+PartsSupplier SYS ProcedureParams Radix 12 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:8df37c99-3b12-4789-8128-4aa496f895c4 !
<null> 109
+PartsSupplier SYS KeyColumns RefKeyUID 7 <null> string 0 50 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:aafbdf50-25aa-427b-b322-7cb36094a1e2 !
<null> 83
+PartsSupplier SYS Keys RefKeyUID 9 <null> string 0 50 true true false false false false false Nullable <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:1cf4c5ad-5932-47ec-8593-385b75bfeba8 !
<null> 95
+PartsSupplier SYS Procedures ReturnsResults 5 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:b01164c8-dd10-410d-a91b-fcb2fc0450ce !
<null> 118
+PartsSupplier SYS DataTypes RuntimeType 16 <null> string 0 64 true true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 64 64 10 mmuuid:3c7bc9d0-b73f-49a0-b9ab-dc97a4d2a124 !
<null> 73
+PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA SHIPPER_ID 1 SHIPPER_ID short 0 0 true true true false true false false No Nulls <null> <null> All Except Like <null> <null> java.lang.Short 2 0 10 mmuuid:121bc540-73ff-1edc-a81c-ecf397b10590 !
<null> 5
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS SHIPPER_ID 4 SHIPPER_ID short 0 0 true true true false true false false Nullable <null> <null> All Except Like <null> <null> java.lang.Short 2 0 10 mmuuid:3fc400c2-73ff-1edc-a81c-ecf397b10590 !
<null> 12
+PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA SHIPPER_NAME 2 SHIPPER_NAME string 0 30 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 30 10 mmuuid:130fe940-73ff-1edc-a81c-ecf397b10590 !
<null> 6
+PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS STATUS_ID 1 STATUS_ID short 0 0 true true true false true false false No Nulls <null> <null> All Except Like <null> <null> java.lang.Short 2 0 10 mmuuid:201d9600-73ff-1edc-a81c-ecf397b10590 !
<null> 7
+PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS STATUS_NAME 2 STATUS_NAME string 0 30 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 30 10 mmuuid:201d9601-73ff-1edc-a81c-ecf397b10590 !
<null> 8
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_CITY 4 SUPPLIER_CITY string 0 30 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 30 10 mmuuid:2fe92a40-73ff-1edc-a81c-ecf397b10590 !
<null> 16
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS SUPPLIER_ID 1 SUPPLIER_ID string 0 10 false true true true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 0 10 10 mmuuid:3ecfdcc0-73ff-1edc-a81c-ecf397b10590 !
<null> 9
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_ID 1 SUPPLIER_ID string 0 10 false true true true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 0 10 10 mmuuid:2f044880-73ff-1edc-a81c-ecf397b10590 !
<null> 13
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_NAME 2 SUPPLIER_NAME string 0 30 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 30 10 mmuuid:2f044881-73ff-1edc-a81c-ecf397b10590 !
<null> 14
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_STATE 5 SUPPLIER_STATE string 0 2 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 2 10 mmuuid:2fe92a41-73ff-1edc-a81c-ecf397b10590 !
<null> 17
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_STATUS 3 SUPPLIER_STATUS short 0 0 true true true false true false false Nullable <null> <null> All Except Like <null> <null> java.lang.Short 2 0 10 mmuuid:2f044882-73ff-1edc-a81c-ecf397b10590 !
<null> 15
+PartsSupplier SYS Columns Scale 8 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:cc6c6113-8d70-40c8-84c0-94e17c14e22e !
<null> 36
+PartsSupplier SYS DataTypes Scale 6 <null> integer 0 10 true true false false false false false Nullable <null> <null> Searchable <null> (0) java.lang.Integer 10 10 10 mmuuid:e8655204-e97a-45cd-909b-1e37731e9546 !
<null> 63
+PartsSupplier SYS ProcedureParams Scale 11 <null> integer 0 10 true true true false false false false No Nulls <null> <null> Searchable <null> (0) java.lang.Integer 10 10 10 mmuuid:360c8b1d-4b3d-42fd-952c-bf5763cad69e !
<null> 108
+PartsSupplier SYSADMIN MatViews SchemaName 2 <null> string 0 255 false true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:2738c484-d24d-4c40-b0b7-e734afb03450 !
<null> 19
+PartsSupplier SYS Columns SchemaName 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:859288c9-cd78-4407-90fc-61b5d310e2ab !
<null> 30
+PartsSupplier SYS KeyColumns SchemaName 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:787be966-cf12-4956-907f-a8e6dc1009dc !
<null> 78
+PartsSupplier SYS Keys SchemaName 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:4a7fc059-208e-4f98-b6ef-cb7c6102a327 !
<null> 88
+PartsSupplier SYS ProcedureParams SchemaName 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:88497911-619c-4ca8-b482-8885d940706a !
<null> 99
+PartsSupplier SYS Procedures SchemaName 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:53a84865-334e-4750-b343-de2411d56e3e !
<null> 115
+PartsSupplier SYS Tables SchemaName 2 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:95bd960c-fd84-44c9-9831-692376f69b46 !
<null> 148
+PartsSupplier SYS Columns SearchType 20 <null> string 0 20 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 20 20 10 mmuuid:3037138a-bb20-4485-ba01-75bc20b1a532 !
<null> 48
+PartsSupplier SYS DataTypes SearchType 14 <null> string 0 20 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 20 20 10 mmuuid:d8494fa3-40e4-44cd-b0d8-da5c83685a75 !
<null> 71
+PartsSupplier SYS Columns SupportsSelect 11 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:c2a50f93-0040-41ec-ad7b-e8511296555f !
<null> 39
+PartsSupplier SYS Columns SupportsUpdates 12 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:fab660d1-36bf-4a5b-bbe6-9a543e0ebd76 !
<null> 40
+PartsSupplier SYS Tables SupportsUpdates 7 <null> boolean 0 1 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.Boolean 1 1 10 mmuuid:5144d230-2b0e-4255-b321-65b9f6f6f76c !
<null> 153
+PartsSupplier SYS Columns TableName 3 <null> string 0 255 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:2c09c9d1-2f25-45de-81cf-eeb2a5157d34 !
<null> 31
+PartsSupplier SYS KeyColumns TableName 3 <null> string 0 2048 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 2048 2048 10 mmuuid:c24fad72-0c0d-4260-96ae-f188ad77b137 !
<null> 79
+PartsSupplier SYS Keys TableName 3 <null> string 0 2048 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 2048 2048 10 mmuuid:7d9540bd-b51f-4206-8c33-b39c5ba8bb8b !
<null> 89
+PartsSupplier SYSADMIN MatViews TargetName 5 <null> string 0 4000 false true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 4000 10 mmuuid:d2831595-d6f5-4cca-aa5d-2ff2530d0ab1 !
<null> 22
+PartsSupplier SYSADMIN MatViews TargetSchemaName 4 <null> string 0 255 false true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:a95dba1c-283e-4f48-9671-34cecdb7d0e3 !
<null> 21
+PartsSupplier SYS Keys Type 7 <null> string 0 20 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 20 20 10 mmuuid:29e73c18-afec-43a9-81ab-7378d6daf20b !
<null> 93
+PartsSupplier SYS ProcedureParams Type 7 <null> string 0 100 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 100 100 10 mmuuid:76a1981b-1226-4a55-9acf-82a061cc8642 !
<null> 104
+PartsSupplier SYS Tables Type 4 <null> string 0 20 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 20 20 10 mmuuid:4814a0af-4e8f-4f55-9b25-3148d90d3d9b !
<null> 150
+PartsSupplier SYS DataTypes TypeLength 7 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> (0) java.lang.Integer 10 10 10 mmuuid:0668382a-f9c3-4507-8b0f-df65a2ebbf2f !
<null> 64
+PartsSupplier SYS ProcedureParams TypeLength 10 <null> integer 0 10 true true false false false false false No Nulls <null> <null> Searchable <null> (0) java.lang.Integer 10 10 10 mmuuid:791d7a29-8fc5-4735-9144-1accc114b58e !
<null> 107
+PartsSupplier SYS DataTypes TypeName 4 <null> string 0 100 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 100 100 10 mmuuid:48081cdd-9e90-4440-a956-4a32af96d7f4 !
<null> 61
+PartsSupplier SYS Columns UID 27 <null> string 0 50 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:5f491c75-769b-4908-9f68-2a9a486607bb !
<null> 55
+PartsSupplier SYS DataTypes UID 15 <null> string 0 50 true true false false true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:dd57f577-ffc4-4b55-8f7f-355b9ea3ce37 !
<null> 72
+PartsSupplier SYS KeyColumns UID 8 <null> string 0 50 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:0d994a45-4f52-4b79-9b31-7ef22331fee2 !
<null> 84
+PartsSupplier SYS Keys UID 10 <null> string 0 50 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:782218d1-5337-48c6-9070-0aafd4c6cd20 !
<null> 96
+PartsSupplier SYS ProcedureParams UID 14 <null> string 0 50 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 50 10 mmuuid:a278de2e-89f1-4281-9e63-54aebb6062ce !
<null> 111
+PartsSupplier SYS Procedures UID 6 <null> string 0 50 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:de9df25a-c886-46e0-ae3a-8eb6792e43f4 !
<null> 119
+PartsSupplier SYS Properties UID 3 <null> string 0 50 true true false false true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:b333969a-83e0-4010-9463-9a0088da6c83 !
<null> 124
+PartsSupplier SYS Schemas UID 4 <null> string 0 50 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:ad232e4d-9c01-4d0c-bc57-0459d9db918a !
<null> 143
+PartsSupplier SYS Tables UID 8 <null> string 0 50 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:6afe3737-26f9-43a8-88db-86531b5dc66c !
<null> 154
+PartsSupplier SYS ReferenceKeyColumns UPDATE_RULE 10 <null> integer 0 10 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Integer 10 10 10 mmuuid:30d5ae74-b19e-4186-97e1-aeff5801e44f !
<null> 135
+PartsSupplier SYSADMIN MatViews Updated 8 <null> timestamp 0 0 false true false true true false false Nullable <null> <null> Searchable <null> <null> java.sql.Timestamp 0 0 10 mmuuid:33970a66-7ad4-411f-a6c4-545746747fe6 !
<null> 25
+PartsSupplier SYSADMIN MatViews VDBName 1 <null> string 0 255 false true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:c1ce9841-e272-4839-8c78-777a5f68d241 !
<null> 18
+PartsSupplier SYS Columns VDBName 1 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:83f19a81-1243-4751-8c99-daddbf37b1d7 !
<null> 29
+PartsSupplier SYS KeyColumns VDBName 1 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:f062eb9c-4854-47fb-b7bd-a4e23c782b62 !
<null> 77
+PartsSupplier SYS Keys VDBName 1 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:5785b523-7da3-42c1-8920-66daa1f7fa1d !
<null> 87
+PartsSupplier SYS ProcedureParams VDBName 1 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:f832f316-2403-43fa-9ccc-c3ab9d38acca !
<null> 98
+PartsSupplier SYS Procedures VDBName 1 <null> string 0 255 true true false false false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:1d664747-4a95-4605-8b28-381bed3121f1 !
<null> 114
+PartsSupplier SYS Schemas VDBName 1 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:73dbf95b-a283-4f0a-81b9-9b98e09c2906 !
<null> 140
+PartsSupplier SYS Tables VDBName 1 <null> string 0 255 false true true true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:58de905f-9d64-4831-a985-da6d082ff709 !
<null> 147
+PartsSupplier SYSADMIN MatViews Valid 6 <null> boolean 0 0 false true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 10 mmuuid:13098912-bce2-4842-9ea9-b162fcd7383e !
<null> 23
+PartsSupplier SYS Properties Value 2 <null> string 0 255 true true false true true false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 255 255 10 mmuuid:c917257d-06b7-41dd-a6cb-44c0ff0f897e !
<null> 123
+PartsSupplier SYS VirtualDatabases Version 2 <null> string 0 50 true true false true false false false No Nulls <null> <null> Searchable <null> <null> java.lang.String 50 50 10 mmuuid:c876d749-a512-4810-9910-3034ca524c45 !
<null> 161
+PartsSupplier pg_catalog pg_attrdef adbin 3 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:e9b278d4-49af-442f-9a5a-b699fe3b102b !
<null> 222
+PartsSupplier pg_catalog pg_attrdef adnum 2 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:4589389f-4abd-42a6-818f-ff1f2a085dfb !
<null> 221
+PartsSupplier pg_catalog pg_attrdef adrelid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:76a7dd05-9a7d-4243-b561-f3056500dcaf !
<null> 220
+PartsSupplier pg_catalog pg_attrdef adsrc 4 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:e22c521a-e208-4181-9dbd-89f5de7014b9 !
<null> 223
+PartsSupplier pg_catalog pg_am amname 2 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:3c67619c-7d8f-4378-b7e9-84a0451ea5e5 !
<null> 200
+PartsSupplier pg_catalog pg_attribute atthasdef 10 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:5868e549-4bbe-479e-bc7e-632c05cc2329 !
<null> 182
+PartsSupplier pg_catalog pg_attribute attisdropped 9 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:7beb42a9-dfe6-43de-98b6-7e8948b1a666 !
<null> 181
+PartsSupplier pg_catalog pg_attribute attlen 5 <null> short 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Short 0 0 0 mmuid:d1214249-95cd-426f-b8f6-4bf68c0504c7 !
<null> 177
+PartsSupplier pg_catalog pg_attribute attname 3 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:6064d149-4102-4c2d-9132-582342f25e90 !
<null> 175
+PartsSupplier pg_catalog matpg_relatt attname 3 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:0b0894ba-e1ea-4eaf-bcd2-ea9ebd05e47d !
<null> 239
+PartsSupplier pg_catalog pg_attribute attnotnull 8 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:91ce8bde-8570-4867-be17-80acfa9275a6 !
<null> 180
+PartsSupplier pg_catalog pg_attribute attnum 6 <null> short 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Short 0 0 0 mmuid:141fd911-f2dd-4edd-8f08-ad8a67ffd0fb !
<null> 178
+PartsSupplier pg_catalog matpg_relatt attnum 2 <null> short 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Short 0 0 0 mmuid:5c7bf056-ecc5-41ea-a122-7a4b1de9908a !
<null> 238
+PartsSupplier pg_catalog pg_attribute attrelid 2 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:3be6b5de-2287-4279-93f3-4f5064799118 !
<null> 174
+PartsSupplier pg_catalog matpg_relatt attrelid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:8c0714d6-1c72-40b4-8528-3b2c63059107 !
<null> 237
+PartsSupplier pg_catalog pg_attribute atttypid 4 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:99782493-1cce-4e14-9c1b-4de7ce50e2c8 !
<null> 176
+PartsSupplier pg_catalog pg_attribute atttypmod 7 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:2e2bae3c-ab93-49f5-b96c-7a7b9d66782d !
<null> 179
+PartsSupplier pg_catalog matpg_relatt autoinc 6 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:f1998229-2c1a-47b7-8f46-9dda81446db6 !
<null> 242
+PartsSupplier SYSADMIN VDBResources contents 2 <null> blob 0 0 false true false true true false false Nullable <null> <null> Searchable <null> <null> org.teiid.core.types.BlobType 0 0 10 mmuuid:f9421669-3564-451d-9293-96c1e5e72c4f !
<null> 28
+PartsSupplier pg_catalog pg_database datacl 7 <null> object 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Object 0 0 0 mmuid:4b5beb14-03a0-4652-9d6f-5f8cc74d470c !
<null> 230
+PartsSupplier pg_catalog pg_database datallowconn 5 <null> char 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Character 0 0 0 mmuid:c2bdf40c-ec58-439c-a403-7adf604ceadd !
<null> 228
+PartsSupplier pg_catalog pg_database datconfig 6 <null> object 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Object 0 0 0 mmuid:5c9d54b2-433f-443a-85ce-821f42ed109e !
<null> 229
+PartsSupplier pg_catalog pg_database datdba 8 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:8b993c11-de2b-48bc-beb1-3e44c46811b4 !
<null> 231
+PartsSupplier pg_catalog pg_database datlastsysoid 4 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:3b621b25-171c-405b-8bf9-635cf93f2273 !
<null> 227
+PartsSupplier pg_catalog pg_database datname 2 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:689cde3b-a631-4f25-94b4-ff2ffe022b0f !
<null> 225
+PartsSupplier pg_catalog pg_database dattablespace 9 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:36db343d-e99a-427c-a4e2-763a720ce4a4 !
<null> 232
+PartsSupplier pg_catalog pg_database encoding 3 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:1aedd02c-5801-41e7-accd-da1f257c26e8 !
<null> 226
+PartsSupplier pg_catalog pg_index indexprs 7 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:9ea3b6d2-b27b-4bb1-a99d-b703c3308384 !
<null> 197
+PartsSupplier pg_catalog pg_index indexrelid 2 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:83ae2247-7eec-459f-b037-ffd3cdca0627 !
<null> 192
+PartsSupplier pg_catalog pg_index indisclustered 4 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:16998907-e1dd-447e-898d-780994d30619 !
<null> 194
+PartsSupplier pg_catalog pg_index indisprimary 6 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:a52c714d-dfe9-406c-906b-fadd53ac4e98 !
<null> 196
+PartsSupplier pg_catalog pg_index indisunique 5 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:9f873e0f-903d-4c9d-8c37-1073b5ec4c67 !
<null> 195
+PartsSupplier pg_catalog pg_index indkey 8 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:1e6dbecd-9a2d-4aef-afbe-665de7acb9d6 !
<null> 198
+PartsSupplier pg_catalog pg_index indrelid 3 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:8709e084-48df-417d-b3f8-f4e9b7d8802b !
<null> 193
+PartsSupplier pg_catalog pg_namespace nspname 2 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:0e513513-b35a-48be-975d-5dbed6ace7e9 !
<null> 163
+PartsSupplier pg_catalog matpg_relatt nspname 5 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:ffbf69c1-2e34-4764-a9b3-9a1b61bfd4af !
<null> 241
+PartsSupplier pg_catalog pg_namespace oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:688e5112-4083-4b67-b42c-62d9a614c59a !
<null> 162
+PartsSupplier pg_catalog pg_class oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:c1e736ac-c9d4-4026-8904-23c90e6eb1c0 !
<null> 164
+PartsSupplier pg_catalog pg_attribute oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:f735e545-a81c-4ee2-84d0-3ea35d4083a2 !
<null> 173
+PartsSupplier pg_catalog pg_type oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:b6f64d16-b147-459d-8e84-1bd3048fb900 !
<null> 183
+PartsSupplier pg_catalog pg_index oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:09daed8d-b0b8-4552-a261-2b6c775b46b0 !
<null> 191
+PartsSupplier pg_catalog pg_am oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:f6517a63-8c14-4b73-a18d-afaa5dfb35d9 !
<null> 199
+PartsSupplier pg_catalog pg_proc oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:f20c9489-10ca-4596-8a37-24218b67f764 !
<null> 201
+PartsSupplier pg_catalog pg_trigger oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:2b75f0b1-7475-4ed5-9da3-d37a8a25f26a !
<null> 211
+PartsSupplier pg_catalog pg_database oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:382f9fc9-8c96-4df7-ab5d-04dfb47ee142 !
<null> 224
+PartsSupplier pg_catalog pg_user oid 1 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:e63613cb-01ee-4b37-8b91-99d1aac4dfcb !
<null> 233
+PartsSupplier pg_catalog pg_proc proallargtypes 9 <null> object 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Object 0 0 0 mmuid:bcbed548-176c-4116-a5d6-7638cb0206e1 !
<null> 209
+PartsSupplier pg_catalog pg_proc proargmodes 8 <null> object 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Object 0 0 0 mmuid:d9f36bdc-7b25-4af0-b9f5-a96aac6d3094 !
<null> 208
+PartsSupplier pg_catalog pg_proc proargnames 7 <null> object 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Object 0 0 0 mmuid:ffa4ac73-b549-470e-931f-dc36330cb8c4 !
<null> 207
+PartsSupplier pg_catalog pg_proc proargtypes 6 <null> object 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Object 0 0 0 mmuid:6796c2e7-48a4-4f9f-bc98-d47913e2491c !
<null> 206
+PartsSupplier pg_catalog pg_proc proname 2 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:bdf3ee1e-b5b7-48ab-b43c-4bbb2c8ae1e2 !
<null> 202
+PartsSupplier pg_catalog pg_proc pronamespace 10 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:a385751f-a31a-4d5d-9197-3fbd390b0251 !
<null> 210
+PartsSupplier pg_catalog pg_proc pronargs 5 <null> short 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Short 0 0 0 mmuid:9fb5a34a-3a7e-4d38-b7cd-239f28a3504e !
<null> 205
+PartsSupplier pg_catalog pg_proc proretset 3 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:b288b3aa-37f2-4a8e-8b1b-e932a2ce3e25 !
<null> 203
+PartsSupplier pg_catalog pg_proc prorettype 4 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:e0244e1d-431c-41fa-8194-1e357e2b688b !
<null> 204
+PartsSupplier pg_catalog pg_class relam 5 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:c2f92b1a-6ba0-4486-8936-f5185d926178 !
<null> 168
+PartsSupplier pg_catalog pg_class relhasoids 9 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:3ac5a14a-1f9e-455b-8ea1-cf0878774fd7 !
<null> 172
+PartsSupplier pg_catalog pg_class relhasrules 8 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:6c26fd66-2a4a-4ccf-949a-a06a858db7f6 !
<null> 171
+PartsSupplier pg_catalog pg_class relkind 4 <null> char 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Character 0 0 0 mmuid:ef4359eb-6d51-4249-bfea-40bc0f407d10 !
<null> 167
+PartsSupplier pg_catalog pg_class relname 2 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:5f9b50fa-8188-4048-93c2-3ad1587915df !
<null> 165
+PartsSupplier pg_catalog matpg_relatt relname 4 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:5cfb2b62-a912-4bfb-bf4f-51e107fe210c !
<null> 240
+PartsSupplier pg_catalog pg_class relnamespace 3 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:4591ef08-bff8-4f3b-9de7-420f9c7f9d2b !
<null> 166
+PartsSupplier pg_catalog pg_class relpages 7 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:44dee7d6-b6ae-44c7-85f2-e87364d8d059 !
<null> 170
+PartsSupplier pg_catalog pg_class reltuples 6 <null> float 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Float 0 0 0 mmuid:b9ed4b49-5a7b-4ba4-863a-37fd95b2a34c !
<null> 169
+PartsSupplier SYSADMIN VDBResources resourcePath 1 <null> string 0 255 false true false true true false false Nullable <null> <null> Searchable <null> <null> java.lang.String 0 255 10 mmuuid:b1bc5150-3dcc-452e-9e75-4a506997f612 !
<null> 27
+PartsSupplier pg_catalog pg_trigger tgargs 4 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:250d7c06-728a-4b2a-b557-91f2a69bb184 !
<null> 214
+PartsSupplier pg_catalog pg_trigger tgconstrname 8 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:da4b59ca-ebff-45a8-ad68-9777bc587813 !
<null> 218
+PartsSupplier pg_catalog pg_trigger tgconstrrelid 2 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:635b6634-632c-43c9-8cc7-bcaa016133e8 !
<null> 212
+PartsSupplier pg_catalog pg_trigger tgdeferrable 6 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:d70f020b-658c-4f58-86dc-0fbb12e2d8af !
<null> 216
+PartsSupplier pg_catalog pg_trigger tgfoid 3 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:64977f3e-f2a0-466e-a5d1-80bb058cbe08 !
<null> 213
+PartsSupplier pg_catalog pg_trigger tginitdeferred 7 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:bfbff036-caf2-4652-80cf-398af17ed7d1 !
<null> 217
+PartsSupplier pg_catalog pg_trigger tgnargs 5 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:0c20dbe7-5d89-411f-a8ab-3d77b999595b !
<null> 215
+PartsSupplier pg_catalog pg_trigger tgrelid 9 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:c010d12f-2074-45db-8e18-979cee2c45da !
<null> 219
+PartsSupplier pg_catalog pg_type typbasetype 6 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:a17d2f61-cd68-4c0d-8d25-132f68eb3b67 !
<null> 188
+PartsSupplier pg_catalog pg_type typlen 4 <null> short 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Short 0 0 0 mmuid:931c09e1-937a-437e-aab2-2360f8d90e2b !
<null> 186
+PartsSupplier pg_catalog pg_type typname 2 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:d600d818-2aad-4c92-9343-267d044dd97d !
<null> 184
+PartsSupplier pg_catalog pg_type typnamespace 3 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:e47217d2-2b07-4353-bfbd-d7c883a5e7e0 !
<null> 185
+PartsSupplier pg_catalog pg_type typrelid 8 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:bec25882-b292-4ed1-a610-cad5d504837d !
<null> 190
+PartsSupplier pg_catalog pg_type typtype 5 <null> char 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Character 0 0 0 mmuid:83199eba-7af4-44a9-822f-006677b1b895 !
<null> 187
+PartsSupplier pg_catalog pg_type typtypmod 7 <null> integer 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Integer 0 0 0 mmuid:cee3559d-1ce6-4b17-ad57-2ecb79a9e1d2 !
<null> 189
+PartsSupplier pg_catalog pg_user usecreatedb 3 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:236445e1-408c-40a1-a61c-40e96fb5dc9f !
<null> 235
+PartsSupplier pg_catalog pg_user usename 2 <null> string 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.String 0 0 0 mmuid:bb78401d-d10c-43b1-af84-e4fa6b95db42 !
<null> 234
+PartsSupplier pg_catalog pg_user usesuper 4 <null> boolean 0 0 false true false false false false false Unknown <null> <null> Searchable <null> <null> java.lang.Boolean 0 0 0 mmuid:6da98878-b46e-4ed1-b032-1bc72da595f4 !
<null> 236
Row Count : 242
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 PartsSupplier java.lang.String VDBName string SYS Columns 255 255 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testDataTypes.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testDataTypes.expected 2011-04-04 17:47:23 UTC (rev 3056)
+++ trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testDataTypes.expected 2011-04-04 19:26:16 UTC (rev 3057)
@@ -1,57 +1,57 @@
string boolean boolean string string integer integer string boolean boolean boolean integer integer string string string string string integer
Name IsStandard IsPhysical TypeName JavaClass Scale TypeLength NullType IsSigned IsAutoIncremented IsCaseSensitive Precision Radix SearchType UID RuntimeType BaseType Description OID
-ENTITIES false false ENTITIES java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:20360100-e742-1e20-8c26-a038c6ed7576 string ENTITY <null> 8
-ENTITY false false ENTITY java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:9fece300-e71a-1e20-8c26-a038c6ed7576 string NCName <null> 9
-ID false false ID java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:88b13dc0-e702-1e20-8c26-a038c6ed7576 string NCName <null> 12
-IDREF false false IDREF java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:dd33ff40-e6df-1e20-8c26-a038c6ed7576 string NCName <null> 11
-IDREFS false false IDREFS java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:3c99f780-e72d-1e20-8c26-a038c6ed7576 string IDREF <null> 10
-NCName false false NCName java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:ac00e000-e676-1e20-8c26-a038c6ed7576 string Name <null> 13
-NMTOKEN false false NMTOKEN java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:4ca2ae00-3a95-1e20-921b-eeee28353879 string token <null> 15
-NMTOKENS false false NMTOKENS java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:4b0f8500-e6a6-1e20-8c26-a038c6ed7576 string NMTOKEN <null> 14
-NOTATION false false NOTATION java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:3dcaf900-e8dc-1e2a-b433-fb67ea35c07e string anySimpleType <null> 16
-Name false false Name java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:e66c4600-e65b-1e20-8c26-a038c6ed7576 string token <null> 17
-QName false false QName java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:eeb5d780-e8c3-1e2a-b433-fb67ea35c07e string anySimpleType <null> 18
-XMLLiteral false false XMLLiteral org.teiid.core.types.XMLType 0 0 No Nulls false false false 0 0 Searchable mmuuid:43f5274e-55e1-1f87-ba1c-eea49143eb32 xml string <null> 0
-anyURI false false anyURI java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:6247ec80-e8a4-1e2a-b433-fb67ea35c07e string anySimpleType <null> 19
-base64Binary false false base64Binary java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:b4c99380-ebc6-1e2a-9319-8eaa9b2276c7 string anySimpleType <null> 20
-bigdecimal false false bigdecimal java.math.BigDecimal 0 0 No Nulls false false false 0 0 Searchable mmuuid:f2249740-a078-1e26-9b08-d6079ebe1f0d bigdecimal decimal <null> 1
-biginteger false false biginteger java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:822b9a40-a066-1e26-9b08-d6079ebe1f0d biginteger decimal <null> 2
-blob false false blob org.teiid.core.types.BlobType 0 0 No Nulls false false false 0 0 Searchable mmuuid:5a793100-1836-1ed0-ba0f-f2334f5fbf95 blob base64Binary <null> 3
-boolean false false boolean java.lang.Boolean 0 0 No Nulls false false false 0 0 Searchable mmuuid:dc476100-c483-1e24-9b01-c8207cd53eb7 boolean anySimpleType <null> 21
-byte false false byte java.lang.Byte 0 0 No Nulls false false false 0 0 Searchable mmuuid:26dc1cc0-b9c8-1e21-b812-969c8fc8b016 byte short <null> 22
-char false false char java.lang.Character 0 0 No Nulls false false false 0 0 Searchable mmuuid:62472700-a064-1e26-9b08-d6079ebe1f0d char string <null> 4
-clob false false clob org.teiid.core.types.ClobType 0 0 No Nulls false false false 0 0 Searchable mmuuid:559646c0-4941-1ece-b22b-f49159d22ad3 clob string <null> 5
-date false false date java.sql.Date 0 0 No Nulls false false false 0 0 Searchable mmuuid:65dcde00-c4ab-1e24-9b01-c8207cd53eb7 date anySimpleType <null> 24
-dateTime false false dateTime java.sql.Timestamp 0 0 No Nulls false false false 0 0 Searchable mmuuid:5c69dec0-b3ea-1e2a-9a03-beb8638ffd21 timestamp anySimpleType <null> 23
-decimal false false decimal java.math.BigDecimal 0 0 No Nulls false false false 0 0 Searchable mmuuid:569dfa00-c456-1e24-9b01-c8207cd53eb7 bigdecimal anySimpleType <null> 25
-double false false double java.lang.Double 0 0 No Nulls false false false 0 0 Searchable mmuuid:1f18b140-c4a3-1e24-9b01-c8207cd53eb7 double anySimpleType <null> 26
-duration false false duration java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:28d98540-b3e7-1e2a-9a03-beb8638ffd21 string anySimpleType <null> 27
-float false false float java.lang.Float 0 0 No Nulls false false false 0 0 Searchable mmuuid:d86b0d00-c48a-1e24-9b01-c8207cd53eb7 float anySimpleType <null> 28
-gDay false false gDay java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:860b7dc0-b3f8-1e2a-9a03-beb8638ffd21 biginteger anySimpleType <null> 29
-gMonth false false gMonth java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:187f5580-b3fb-1e2a-9a03-beb8638ffd21 biginteger anySimpleType <null> 31
-gMonthDay false false gMonthDay java.sql.Timestamp 0 0 No Nulls false false false 0 0 Searchable mmuuid:6e604140-b3f5-1e2a-9a03-beb8638ffd21 timestamp anySimpleType <null> 30
-gYear false false gYear java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:b02c7600-b3f2-1e2a-9a03-beb8638ffd21 biginteger anySimpleType <null> 33
-gYearMonth false false gYearMonth java.sql.Timestamp 0 0 No Nulls false false false 0 0 Searchable mmuuid:17d08040-b3ed-1e2a-9a03-beb8638ffd21 timestamp anySimpleType <null> 32
-hexBinary false false hexBinary java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:d9998500-ebba-1e2a-9319-8eaa9b2276c7 string anySimpleType <null> 34
-int false false int java.lang.Integer 0 0 No Nulls false false false 0 0 Searchable mmuuid:33add3c0-b98d-1e21-b812-969c8fc8b016 integer long <null> 36
-integer false false integer java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:45da3500-e78f-1e20-8c26-a038c6ed7576 biginteger decimal <null> 35
-language false false language java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:d4d980c0-e623-1e20-8c26-a038c6ed7576 string token <null> 37
-long false false long java.lang.Long 0 0 No Nulls false false false 0 0 Searchable mmuuid:8cdee840-b900-1e21-b812-969c8fc8b016 long integer <null> 38
-negativeInteger false false negativeInteger java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:86d29280-b8d3-1e21-b812-969c8fc8b016 biginteger nonPositiveInteger <null> 39
-nonNegativeInteger false false nonNegativeInteger java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:0e081200-b8a4-1e21-b812-969c8fc8b016 biginteger integer <null> 40
-nonPositiveInteger false false nonPositiveInteger java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:cbdd6e40-b9d2-1e21-8c26-a038c6ed7576 biginteger integer <null> 41
-normalizedString false false normalizedString java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:4df43700-3b13-1e20-921b-eeee28353879 string string <null> 42
-object false false object java.lang.Object 0 0 No Nulls false false false 0 0 Searchable mmuuid:051a0640-b4e8-1e26-9f33-b76fd9d5fa79 object base64Binary <null> 6
-positiveInteger false false positiveInteger java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:1cbbd380-b9ea-1e21-b812-969c8fc8b016 biginteger nonNegativeInteger <null> 43
-short false false short java.lang.Short 0 0 No Nulls false false false 0 0 Searchable mmuuid:5bbcf140-b9ae-1e21-b812-969c8fc8b016 short int <null> 44
-string false false string java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:bf6c34c0-c442-1e24-9b01-c8207cd53eb7 string anySimpleType <null> 45
-time false false time java.sql.Time 0 0 No Nulls false false false 0 0 Searchable mmuuid:3b892180-c4a7-1e24-9b01-c8207cd53eb7 time anySimpleType <null> 46
-timestamp false false timestamp java.sql.Timestamp 0 0 No Nulls false false false 0 0 Searchable mmuuid:6d9809c0-a07e-1e26-9b08-d6079ebe1f0d timestamp string <null> 7
-token false false token java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:3425cb80-d844-1e20-9027-be6d2c3b8b3a string normalizedString <null> 47
-unsignedByte false false unsignedByte java.lang.Short 0 0 No Nulls false false false 0 0 Searchable mmuuid:cff745c0-baa2-1e21-b812-969c8fc8b016 short unsignedShort <null> 48
-unsignedInt false false unsignedInt java.lang.Long 0 0 No Nulls false false false 0 0 Searchable mmuuid:badcbd80-ba63-1e21-b812-969c8fc8b016 long unsignedLong <null> 49
-unsignedLong false false unsignedLong java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:54b98780-ba14-1e21-b812-969c8fc8b016 biginteger nonNegativeInteger <null> 50
-unsignedShort false false unsignedShort java.lang.Integer 0 0 No Nulls false false false 0 0 Searchable mmuuid:327093c0-ba88-1e21-b812-969c8fc8b016 integer unsignedInt <null> 51
+ENTITIES false false ENTITIES java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:20360100-e742-1e20-8c26-a038c6ed7576 string ENTITY <null> 9
+ENTITY false false ENTITY java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:9fece300-e71a-1e20-8c26-a038c6ed7576 string NCName <null> 10
+ID false false ID java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:88b13dc0-e702-1e20-8c26-a038c6ed7576 string NCName <null> 13
+IDREF false false IDREF java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:dd33ff40-e6df-1e20-8c26-a038c6ed7576 string NCName <null> 12
+IDREFS false false IDREFS java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:3c99f780-e72d-1e20-8c26-a038c6ed7576 string IDREF <null> 11
+NCName false false NCName java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:ac00e000-e676-1e20-8c26-a038c6ed7576 string Name <null> 14
+NMTOKEN false false NMTOKEN java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:4ca2ae00-3a95-1e20-921b-eeee28353879 string token <null> 16
+NMTOKENS false false NMTOKENS java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:4b0f8500-e6a6-1e20-8c26-a038c6ed7576 string NMTOKEN <null> 15
+NOTATION false false NOTATION java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:3dcaf900-e8dc-1e2a-b433-fb67ea35c07e string anySimpleType <null> 17
+Name false false Name java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:e66c4600-e65b-1e20-8c26-a038c6ed7576 string token <null> 18
+QName false false QName java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:eeb5d780-e8c3-1e2a-b433-fb67ea35c07e string anySimpleType <null> 19
+XMLLiteral false false XMLLiteral org.teiid.core.types.XMLType 0 0 No Nulls false false false 0 0 Searchable mmuuid:43f5274e-55e1-1f87-ba1c-eea49143eb32 xml string <null> 1
+anyURI false false anyURI java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:6247ec80-e8a4-1e2a-b433-fb67ea35c07e string anySimpleType <null> 20
+base64Binary false false base64Binary java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:b4c99380-ebc6-1e2a-9319-8eaa9b2276c7 string anySimpleType <null> 21
+bigdecimal false false bigdecimal java.math.BigDecimal 0 0 No Nulls false false false 0 0 Searchable mmuuid:f2249740-a078-1e26-9b08-d6079ebe1f0d bigdecimal decimal <null> 2
+biginteger false false biginteger java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:822b9a40-a066-1e26-9b08-d6079ebe1f0d biginteger decimal <null> 3
+blob false false blob org.teiid.core.types.BlobType 0 0 No Nulls false false false 0 0 Searchable mmuuid:5a793100-1836-1ed0-ba0f-f2334f5fbf95 blob base64Binary <null> 4
+boolean false false boolean java.lang.Boolean 0 0 No Nulls false false false 0 0 Searchable mmuuid:dc476100-c483-1e24-9b01-c8207cd53eb7 boolean anySimpleType <null> 22
+byte false false byte java.lang.Byte 0 0 No Nulls false false false 0 0 Searchable mmuuid:26dc1cc0-b9c8-1e21-b812-969c8fc8b016 byte short <null> 23
+char false false char java.lang.Character 0 0 No Nulls false false false 0 0 Searchable mmuuid:62472700-a064-1e26-9b08-d6079ebe1f0d char string <null> 5
+clob false false clob org.teiid.core.types.ClobType 0 0 No Nulls false false false 0 0 Searchable mmuuid:559646c0-4941-1ece-b22b-f49159d22ad3 clob string <null> 6
+date false false date java.sql.Date 0 0 No Nulls false false false 0 0 Searchable mmuuid:65dcde00-c4ab-1e24-9b01-c8207cd53eb7 date anySimpleType <null> 25
+dateTime false false dateTime java.sql.Timestamp 0 0 No Nulls false false false 0 0 Searchable mmuuid:5c69dec0-b3ea-1e2a-9a03-beb8638ffd21 timestamp anySimpleType <null> 24
+decimal false false decimal java.math.BigDecimal 0 0 No Nulls false false false 0 0 Searchable mmuuid:569dfa00-c456-1e24-9b01-c8207cd53eb7 bigdecimal anySimpleType <null> 26
+double false false double java.lang.Double 0 0 No Nulls false false false 0 0 Searchable mmuuid:1f18b140-c4a3-1e24-9b01-c8207cd53eb7 double anySimpleType <null> 27
+duration false false duration java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:28d98540-b3e7-1e2a-9a03-beb8638ffd21 string anySimpleType <null> 28
+float false false float java.lang.Float 0 0 No Nulls false false false 0 0 Searchable mmuuid:d86b0d00-c48a-1e24-9b01-c8207cd53eb7 float anySimpleType <null> 29
+gDay false false gDay java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:860b7dc0-b3f8-1e2a-9a03-beb8638ffd21 biginteger anySimpleType <null> 30
+gMonth false false gMonth java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:187f5580-b3fb-1e2a-9a03-beb8638ffd21 biginteger anySimpleType <null> 32
+gMonthDay false false gMonthDay java.sql.Timestamp 0 0 No Nulls false false false 0 0 Searchable mmuuid:6e604140-b3f5-1e2a-9a03-beb8638ffd21 timestamp anySimpleType <null> 31
+gYear false false gYear java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:b02c7600-b3f2-1e2a-9a03-beb8638ffd21 biginteger anySimpleType <null> 34
+gYearMonth false false gYearMonth java.sql.Timestamp 0 0 No Nulls false false false 0 0 Searchable mmuuid:17d08040-b3ed-1e2a-9a03-beb8638ffd21 timestamp anySimpleType <null> 33
+hexBinary false false hexBinary java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:d9998500-ebba-1e2a-9319-8eaa9b2276c7 string anySimpleType <null> 35
+int false false int java.lang.Integer 0 0 No Nulls false false false 0 0 Searchable mmuuid:33add3c0-b98d-1e21-b812-969c8fc8b016 integer long <null> 37
+integer false false integer java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:45da3500-e78f-1e20-8c26-a038c6ed7576 biginteger decimal <null> 36
+language false false language java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:d4d980c0-e623-1e20-8c26-a038c6ed7576 string token <null> 38
+long false false long java.lang.Long 0 0 No Nulls false false false 0 0 Searchable mmuuid:8cdee840-b900-1e21-b812-969c8fc8b016 long integer <null> 39
+negativeInteger false false negativeInteger java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:86d29280-b8d3-1e21-b812-969c8fc8b016 biginteger nonPositiveInteger <null> 40
+nonNegativeInteger false false nonNegativeInteger java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:0e081200-b8a4-1e21-b812-969c8fc8b016 biginteger integer <null> 41
+nonPositiveInteger false false nonPositiveInteger java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:cbdd6e40-b9d2-1e21-8c26-a038c6ed7576 biginteger integer <null> 42
+normalizedString false false normalizedString java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:4df43700-3b13-1e20-921b-eeee28353879 string string <null> 43
+object false false object java.lang.Object 0 0 No Nulls false false false 0 0 Searchable mmuuid:051a0640-b4e8-1e26-9f33-b76fd9d5fa79 object base64Binary <null> 7
+positiveInteger false false positiveInteger java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:1cbbd380-b9ea-1e21-b812-969c8fc8b016 biginteger nonNegativeInteger <null> 44
+short false false short java.lang.Short 0 0 No Nulls false false false 0 0 Searchable mmuuid:5bbcf140-b9ae-1e21-b812-969c8fc8b016 short int <null> 45
+string false false string java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:bf6c34c0-c442-1e24-9b01-c8207cd53eb7 string anySimpleType <null> 46
+time false false time java.sql.Time 0 0 No Nulls false false false 0 0 Searchable mmuuid:3b892180-c4a7-1e24-9b01-c8207cd53eb7 time anySimpleType <null> 47
+timestamp false false timestamp java.sql.Timestamp 0 0 No Nulls false false false 0 0 Searchable mmuuid:6d9809c0-a07e-1e26-9b08-d6079ebe1f0d timestamp string <null> 8
+token false false token java.lang.String 0 0 No Nulls false false false 0 0 Searchable mmuuid:3425cb80-d844-1e20-9027-be6d2c3b8b3a string normalizedString <null> 48
+unsignedByte false false unsignedByte java.lang.Short 0 0 No Nulls false false false 0 0 Searchable mmuuid:cff745c0-baa2-1e21-b812-969c8fc8b016 short unsignedShort <null> 49
+unsignedInt false false unsignedInt java.lang.Long 0 0 No Nulls false false false 0 0 Searchable mmuuid:badcbd80-ba63-1e21-b812-969c8fc8b016 long unsignedLong <null> 50
+unsignedLong false false unsignedLong java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:54b98780-ba14-1e21-b812-969c8fc8b016 biginteger nonNegativeInteger <null> 51
+unsignedShort false false unsignedShort java.lang.Integer 0 0 No Nulls false false false 0 0 Searchable mmuuid:327093c0-ba88-1e21-b812-969c8fc8b016 integer unsignedInt <null> 52
Row Count : 52
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
Name 12 PartsSupplier java.lang.String Name string SYS DataTypes 100 100 0 false true false false 0 true true true false
Modified: trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testKeyColumns.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testKeyColumns.expected 2011-04-04 17:47:23 UTC (rev 3056)
+++ trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testKeyColumns.expected 2011-04-04 19:26:16 UTC (rev 3057)
@@ -1,23 +1,23 @@
string string string string string string string string integer integer
VDBName SchemaName TableName Name KeyName KeyType RefKeyUID UID Position OID
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS PART_ID FK_SPLIER_PRTS_PRTS Foreign mmuuid:07db4240-73ff-1edc-a81c-ecf397b10590 mmuuid:66ddc4c0-73ff-1edc-a81c-ecf397b10590 1 5
-PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_ID PK_PARTS Primary <null> mmuuid:07db4240-73ff-1edc-a81c-ecf397b10590 1 0
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS PART_ID PK_SUPPLIER_PARTS Primary <null> mmuuid:455e5440-73ff-1edc-a81c-ecf397b10590 2 4
-PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA SHIPPER_ID PK_SHIP_VIA Primary <null> mmuuid:18aa3cc0-73ff-1edc-a81c-ecf397b10590 1 1
-PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS STATUS_ID PK_STATUS Primary <null> mmuuid:25a8a740-73ff-1edc-a81c-ecf397b10590 1 2
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS SUPPLIER_ID FK_SPLY_PRTS_SPLY Foreign mmuuid:375c8380-73ff-1edc-a81c-ecf397b10590 mmuuid:66ddc4c1-73ff-1edc-a81c-ecf397b10590 1 6
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_ID PK_SUPPLIER Primary <null> mmuuid:375c8380-73ff-1edc-a81c-ecf397b10590 1 7
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS SUPPLIER_ID PK_SUPPLIER_PARTS Primary <null> mmuuid:455e5440-73ff-1edc-a81c-ecf397b10590 1 3
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_STATUS FK_SPLIER_STATS Foreign mmuuid:25a8a740-73ff-1edc-a81c-ecf397b10590 mmuuid:5ac43c00-73ff-1edc-a81c-ecf397b10590 1 8
-PartsSupplier pg_catalog matpg_relatt attname pk_matpg_relatt_names Primary <null> mmuid:23454408-0347-40d2-a3f9-3faa664fb5e9 1 13
-PartsSupplier pg_catalog matpg_relatt attnum idx_matpg_relatt_ids Index <null> mmuid:595a823f-cec1-42dc-b8b2-c95c8b4e4e66 2 17
-PartsSupplier pg_catalog matpg_relatt attrelid idx_matpg_relatt_ids Index <null> mmuid:595a823f-cec1-42dc-b8b2-c95c8b4e4e66 1 16
-PartsSupplier pg_catalog matpg_relatt nspname pk_matpg_relatt_names Primary <null> mmuid:23454408-0347-40d2-a3f9-3faa664fb5e9 3 15
-PartsSupplier pg_catalog pg_attribute oid pk_pg_attr Primary <null> mmuid:649c1635-60ad-4c28-9b20-035c562bb1be 1 10
-PartsSupplier pg_catalog pg_class oid pk_pg_class Primary <null> mmuid:59f7dc95-95fe-4d90-9813-1a097188e768 1 9
-PartsSupplier pg_catalog pg_index oid pk_pg_index Primary <null> mmuid:347ec08c-6b41-41d0-8475-031ce7d99ac0 1 11
-PartsSupplier pg_catalog pg_proc oid pk_pg_proc Primary <null> mmuid:e5715456-245f-4846-b90b-01d06d1c3672 1 12
-PartsSupplier pg_catalog matpg_relatt relname pk_matpg_relatt_names Primary <null> mmuid:23454408-0347-40d2-a3f9-3faa664fb5e9 2 14
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS PART_ID FK_SPLIER_PRTS_PRTS Foreign mmuuid:07db4240-73ff-1edc-a81c-ecf397b10590 mmuuid:66ddc4c0-73ff-1edc-a81c-ecf397b10590 1 6
+PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_ID PK_PARTS Primary <null> mmuuid:07db4240-73ff-1edc-a81c-ecf397b10590 1 1
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS PART_ID PK_SUPPLIER_PARTS Primary <null> mmuuid:455e5440-73ff-1edc-a81c-ecf397b10590 2 5
+PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA SHIPPER_ID PK_SHIP_VIA Primary <null> mmuuid:18aa3cc0-73ff-1edc-a81c-ecf397b10590 1 2
+PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS STATUS_ID PK_STATUS Primary <null> mmuuid:25a8a740-73ff-1edc-a81c-ecf397b10590 1 3
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS SUPPLIER_ID FK_SPLY_PRTS_SPLY Foreign mmuuid:375c8380-73ff-1edc-a81c-ecf397b10590 mmuuid:66ddc4c1-73ff-1edc-a81c-ecf397b10590 1 7
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_ID PK_SUPPLIER Primary <null> mmuuid:375c8380-73ff-1edc-a81c-ecf397b10590 1 8
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS SUPPLIER_ID PK_SUPPLIER_PARTS Primary <null> mmuuid:455e5440-73ff-1edc-a81c-ecf397b10590 1 4
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_STATUS FK_SPLIER_STATS Foreign mmuuid:25a8a740-73ff-1edc-a81c-ecf397b10590 mmuuid:5ac43c00-73ff-1edc-a81c-ecf397b10590 1 9
+PartsSupplier pg_catalog matpg_relatt attname pk_matpg_relatt_names Primary <null> mmuid:23454408-0347-40d2-a3f9-3faa664fb5e9 1 14
+PartsSupplier pg_catalog matpg_relatt attnum idx_matpg_relatt_ids Index <null> mmuid:595a823f-cec1-42dc-b8b2-c95c8b4e4e66 2 18
+PartsSupplier pg_catalog matpg_relatt attrelid idx_matpg_relatt_ids Index <null> mmuid:595a823f-cec1-42dc-b8b2-c95c8b4e4e66 1 17
+PartsSupplier pg_catalog matpg_relatt nspname pk_matpg_relatt_names Primary <null> mmuid:23454408-0347-40d2-a3f9-3faa664fb5e9 3 16
+PartsSupplier pg_catalog pg_attribute oid pk_pg_attr Primary <null> mmuid:649c1635-60ad-4c28-9b20-035c562bb1be 1 11
+PartsSupplier pg_catalog pg_class oid pk_pg_class Primary <null> mmuid:59f7dc95-95fe-4d90-9813-1a097188e768 1 10
+PartsSupplier pg_catalog pg_index oid pk_pg_index Primary <null> mmuid:347ec08c-6b41-41d0-8475-031ce7d99ac0 1 12
+PartsSupplier pg_catalog pg_proc oid pk_pg_proc Primary <null> mmuid:e5715456-245f-4846-b90b-01d06d1c3672 1 13
+PartsSupplier pg_catalog matpg_relatt relname pk_matpg_relatt_names Primary <null> mmuid:23454408-0347-40d2-a3f9-3faa664fb5e9 2 15
Row Count : 18
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 PartsSupplier java.lang.String VDBName string SYS KeyColumns 255 255 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testKeys.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testKeys.expected 2011-04-04 17:47:23 UTC (rev 3056)
+++ trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testKeys.expected 2011-04-04 19:26:16 UTC (rev 3057)
@@ -1,19 +1,19 @@
string string string string string string string boolean string string integer
VDBName SchemaName TableName Name Description NameInSource Type IsIndexed RefKeyUID UID OID
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS FK_SPLIER_PRTS_PRTS <null> FK_SPLIER_PRTS_PRTS Foreign false mmuuid:07db4240-73ff-1edc-a81c-ecf397b10590 mmuuid:66ddc4c0-73ff-1edc-a81c-ecf397b10590 4
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER FK_SPLIER_STATS <null> FK_SPLIER_STATS Foreign false mmuuid:25a8a740-73ff-1edc-a81c-ecf397b10590 mmuuid:5ac43c00-73ff-1edc-a81c-ecf397b10590 7
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS FK_SPLY_PRTS_SPLY <null> FK_SPLY_PRTS_SPLY Foreign false mmuuid:375c8380-73ff-1edc-a81c-ecf397b10590 mmuuid:66ddc4c1-73ff-1edc-a81c-ecf397b10590 5
-PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PK_PARTS <null> <null> Primary false <null> mmuuid:07db4240-73ff-1edc-a81c-ecf397b10590 0
-PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA PK_SHIP_VIA <null> <null> Primary false <null> mmuuid:18aa3cc0-73ff-1edc-a81c-ecf397b10590 1
-PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS PK_STATUS <null> <null> Primary false <null> mmuuid:25a8a740-73ff-1edc-a81c-ecf397b10590 2
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER PK_SUPPLIER <null> <null> Primary false <null> mmuuid:375c8380-73ff-1edc-a81c-ecf397b10590 6
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS PK_SUPPLIER_PARTS <null> <null> Primary false <null> mmuuid:455e5440-73ff-1edc-a81c-ecf397b10590 3
-PartsSupplier pg_catalog matpg_relatt idx_matpg_relatt_ids <null> <null> Index false <null> mmuid:595a823f-cec1-42dc-b8b2-c95c8b4e4e66 13
-PartsSupplier pg_catalog matpg_relatt pk_matpg_relatt_names <null> <null> Primary false <null> mmuid:23454408-0347-40d2-a3f9-3faa664fb5e9 12
-PartsSupplier pg_catalog pg_attribute pk_pg_attr <null> <null> Primary false <null> mmuid:649c1635-60ad-4c28-9b20-035c562bb1be 9
-PartsSupplier pg_catalog pg_class pk_pg_class <null> <null> Primary false <null> mmuid:59f7dc95-95fe-4d90-9813-1a097188e768 8
-PartsSupplier pg_catalog pg_index pk_pg_index <null> <null> Primary false <null> mmuid:347ec08c-6b41-41d0-8475-031ce7d99ac0 10
-PartsSupplier pg_catalog pg_proc pk_pg_proc <null> <null> Primary false <null> mmuid:e5715456-245f-4846-b90b-01d06d1c3672 11
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS FK_SPLIER_PRTS_PRTS <null> FK_SPLIER_PRTS_PRTS Foreign false mmuuid:07db4240-73ff-1edc-a81c-ecf397b10590 mmuuid:66ddc4c0-73ff-1edc-a81c-ecf397b10590 5
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER FK_SPLIER_STATS <null> FK_SPLIER_STATS Foreign false mmuuid:25a8a740-73ff-1edc-a81c-ecf397b10590 mmuuid:5ac43c00-73ff-1edc-a81c-ecf397b10590 8
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS FK_SPLY_PRTS_SPLY <null> FK_SPLY_PRTS_SPLY Foreign false mmuuid:375c8380-73ff-1edc-a81c-ecf397b10590 mmuuid:66ddc4c1-73ff-1edc-a81c-ecf397b10590 6
+PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PK_PARTS <null> <null> Primary false <null> mmuuid:07db4240-73ff-1edc-a81c-ecf397b10590 1
+PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA PK_SHIP_VIA <null> <null> Primary false <null> mmuuid:18aa3cc0-73ff-1edc-a81c-ecf397b10590 2
+PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS PK_STATUS <null> <null> Primary false <null> mmuuid:25a8a740-73ff-1edc-a81c-ecf397b10590 3
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER PK_SUPPLIER <null> <null> Primary false <null> mmuuid:375c8380-73ff-1edc-a81c-ecf397b10590 7
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS PK_SUPPLIER_PARTS <null> <null> Primary false <null> mmuuid:455e5440-73ff-1edc-a81c-ecf397b10590 4
+PartsSupplier pg_catalog matpg_relatt idx_matpg_relatt_ids <null> <null> Index false <null> mmuid:595a823f-cec1-42dc-b8b2-c95c8b4e4e66 14
+PartsSupplier pg_catalog matpg_relatt pk_matpg_relatt_names <null> <null> Primary false <null> mmuid:23454408-0347-40d2-a3f9-3faa664fb5e9 13
+PartsSupplier pg_catalog pg_attribute pk_pg_attr <null> <null> Primary false <null> mmuid:649c1635-60ad-4c28-9b20-035c562bb1be 10
+PartsSupplier pg_catalog pg_class pk_pg_class <null> <null> Primary false <null> mmuid:59f7dc95-95fe-4d90-9813-1a097188e768 9
+PartsSupplier pg_catalog pg_index pk_pg_index <null> <null> Primary false <null> mmuid:347ec08c-6b41-41d0-8475-031ce7d99ac0 11
+PartsSupplier pg_catalog pg_proc pk_pg_proc <null> <null> Primary false <null> mmuid:e5715456-245f-4846-b90b-01d06d1c3672 12
Row Count : 14
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 PartsSupplier java.lang.String VDBName string SYS Keys 255 255 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testProcedureParams.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testProcedureParams.expected 2011-04-04 17:47:23 UTC (rev 3056)
+++ trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testProcedureParams.expected 2011-04-04 19:26:16 UTC (rev 3057)
@@ -1,13 +1,13 @@
string string string string string integer string boolean integer integer integer integer string string string integer
VDBName SchemaName ProcedureName Name DataType Position Type Optional Precision TypeLength Scale Radix NullType UID Description OID
-PartsSupplier SYSADMIN refreshMatView Invalidate boolean 2 In false 0 0 0 10 No Nulls mmuuid:5736cfd3-750f-42d8-b083-102061e11c60 <null> 4
-PartsSupplier SYSADMIN refreshMatViewRow Key object 2 In false 0 0 0 10 No Nulls mmuuid:7af5a63b-1b91-4d1e-912e-846a7e84c579 <null> 1
-PartsSupplier SYSADMIN refreshMatViewRow RowsUpdated integer 3 ReturnValue false 0 0 0 10 No Nulls mmuuid:05a6a9be-c014-4d06-bcac-746cee4f118b <null> 2
-PartsSupplier SYSADMIN refreshMatView RowsUpdated integer 3 ReturnValue false 0 0 0 10 No Nulls mmuuid:d07a6a75-aa12-4dac-8eab-b2acdbaaffd8 <null> 5
-PartsSupplier SYSADMIN refreshMatViewRow ViewName string 1 In false 0 0 0 10 No Nulls mmuuid:ba635c44-a052-496d-9c35-ca010c0ebebe <null> 0
-PartsSupplier SYSADMIN refreshMatView ViewName string 1 In false 0 0 0 10 No Nulls mmuuid:e0c28e00-d987-48e4-8c60-5f637f10bf33 <null> 3
-PartsSupplier SYS getXMLSchemas document string 1 In false 0 0 0 10 No Nulls mmuuid:85b88af5-f0b8-401f-b35a-ccee56155492 <null> 6
-PartsSupplier SYS getXMLSchemas schema xml 1 ResultSet false 0 0 0 10 Nullable mmuuid:003980bb-38bb-41ad-b8c2-c87ca47aa554 <null> 7
+PartsSupplier SYSADMIN refreshMatView Invalidate boolean 2 In false 0 0 0 10 No Nulls mmuuid:5736cfd3-750f-42d8-b083-102061e11c60 <null> 5
+PartsSupplier SYSADMIN refreshMatViewRow Key object 2 In false 0 0 0 10 No Nulls mmuuid:7af5a63b-1b91-4d1e-912e-846a7e84c579 <null> 2
+PartsSupplier SYSADMIN refreshMatViewRow RowsUpdated integer 3 ReturnValue false 0 0 0 10 No Nulls mmuuid:05a6a9be-c014-4d06-bcac-746cee4f118b <null> 3
+PartsSupplier SYSADMIN refreshMatView RowsUpdated integer 3 ReturnValue false 0 0 0 10 No Nulls mmuuid:d07a6a75-aa12-4dac-8eab-b2acdbaaffd8 <null> 6
+PartsSupplier SYSADMIN refreshMatViewRow ViewName string 1 In false 0 0 0 10 No Nulls mmuuid:ba635c44-a052-496d-9c35-ca010c0ebebe <null> 1
+PartsSupplier SYSADMIN refreshMatView ViewName string 1 In false 0 0 0 10 No Nulls mmuuid:e0c28e00-d987-48e4-8c60-5f637f10bf33 <null> 4
+PartsSupplier SYS getXMLSchemas document string 1 In false 0 0 0 10 No Nulls mmuuid:85b88af5-f0b8-401f-b35a-ccee56155492 <null> 7
+PartsSupplier SYS getXMLSchemas schema xml 1 ResultSet false 0 0 0 10 Nullable mmuuid:003980bb-38bb-41ad-b8c2-c87ca47aa554 <null> 8
Row Count : 8
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 PartsSupplier java.lang.String VDBName string SYS ProcedureParams 255 255 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testProcedures.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testProcedures.expected 2011-04-04 17:47:23 UTC (rev 3056)
+++ trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testProcedures.expected 2011-04-04 19:26:16 UTC (rev 3057)
@@ -1,8 +1,8 @@
string string string string boolean string string integer
VDBName SchemaName Name NameInSource ReturnsResults UID Description OID
-PartsSupplier SYS getXMLSchemas <null> true mmuuid:68497bd9-30f5-461b-bf13-6b26aeb2fc4f <null> 2
-PartsSupplier SYSADMIN refreshMatView <null> false mmuuid:52178344-dca8-4c76-8549-00a4515c7044 <null> 1
-PartsSupplier SYSADMIN refreshMatViewRow <null> false mmuuid:1674912b-af56-465a-a1b9-d1de8b761f10 <null> 0
+PartsSupplier SYS getXMLSchemas <null> true mmuuid:68497bd9-30f5-461b-bf13-6b26aeb2fc4f <null> 3
+PartsSupplier SYSADMIN refreshMatView <null> false mmuuid:52178344-dca8-4c76-8549-00a4515c7044 <null> 2
+PartsSupplier SYSADMIN refreshMatViewRow <null> false mmuuid:1674912b-af56-465a-a1b9-d1de8b761f10 <null> 1
Row Count : 3
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 PartsSupplier java.lang.String VDBName string SYS Procedures 255 255 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testSchemas.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testSchemas.expected 2011-04-04 17:47:23 UTC (rev 3056)
+++ trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testSchemas.expected 2011-04-04 19:26:16 UTC (rev 3057)
@@ -1,9 +1,9 @@
string string boolean string string string integer
VDBName Name IsPhysical UID Description PrimaryMetamodelURI OID
-PartsSupplier PartsSupplier true mmuuid:19c7f380-73d8-1edc-a81c-ecf397b10590 <null> http://www.metamatrix.com/metamodels/Relational 0
-PartsSupplier SYS true mmuuid:49b9c0f9-2c4c-42d3-9409-2d847d29a1de System http://www.metamatrix.com/metamodels/Relational 2
-PartsSupplier SYSADMIN true mmuuid:82f6153e-31e0-4034-b335-013cb418da34 <null> http://www.metamatrix.com/metamodels/Relational 1
-PartsSupplier pg_catalog true mmuid:5a84789f-c794-4748-803a-09b6b605f6b9 <null> http://www.metamatrix.com/metamodels/Relational 3
+PartsSupplier PartsSupplier true mmuuid:19c7f380-73d8-1edc-a81c-ecf397b10590 <null> http://www.metamatrix.com/metamodels/Relational 1
+PartsSupplier SYS true mmuuid:49b9c0f9-2c4c-42d3-9409-2d847d29a1de System http://www.metamatrix.com/metamodels/Relational 3
+PartsSupplier SYSADMIN true mmuuid:82f6153e-31e0-4034-b335-013cb418da34 <null> http://www.metamatrix.com/metamodels/Relational 2
+PartsSupplier pg_catalog true mmuid:5a84789f-c794-4748-803a-09b6b605f6b9 <null> http://www.metamatrix.com/metamodels/Relational 4
Row Count : 4
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 PartsSupplier java.lang.String VDBName string SYS Schemas 255 255 0 false true false true 1 false true true true
Modified: trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testTables.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testTables.expected 2011-04-04 17:47:23 UTC (rev 3056)
+++ trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testTables.expected 2011-04-04 19:26:16 UTC (rev 3057)
@@ -1,35 +1,35 @@
string string string string string boolean boolean string integer string boolean boolean integer
VDBName SchemaName Name Type NameInSource IsPhysical SupportsUpdates UID Cardinality Description IsSystem IsMaterialized OID
-PartsSupplier SYS Columns Table <null> true false mmuuid:1c9a5cb2-17b1-4e4a-8b0e-3a42bd052509 0 <null> true false 7
-PartsSupplier SYS DataTypes Table <null> true false mmuuid:9a8794f9-66f8-49e8-8576-89d212d0f957 0 <null> true false 8
-PartsSupplier SYS KeyColumns Table <null> true false mmuuid:14946083-3bd5-42d5-8283-1c0694347c29 0 <null> true false 9
-PartsSupplier SYS Keys Table <null> true false mmuuid:1e5135dc-ce5d-4b25-a8ff-63f5440b3108 0 <null> true false 10
-PartsSupplier SYSADMIN MatViews Table <null> true false mmuuid:520ba1e8-3553-460f-8d18-9b43f089e256 0 <null> true false 5
-PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS Table PARTS true true mmuuid:f6276601-73fe-1edc-a81c-ecf397b10590 16 <null> false false 0
-PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA Table SHIP_VIA true true mmuuid:0f4e9b80-73ff-1edc-a81c-ecf397b10590 4 <null> false false 1
-PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS Table STATUS true true mmuuid:1f297200-73ff-1edc-a81c-ecf397b10590 3 <null> false false 2
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER Table SUPPLIER true true mmuuid:2c371ec0-73ff-1edc-a81c-ecf397b10590 16 <null> false false 4
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS Table SUPPLIER_PARTS true true mmuuid:3deafb00-73ff-1edc-a81c-ecf397b10590 227 <null> false false 3
-PartsSupplier SYS ProcedureParams Table <null> true false mmuuid:a56bd7fe-c87a-411c-8f5d-661975a25626 0 <null> true false 11
-PartsSupplier SYS Procedures Table <null> true false mmuuid:0bc132a5-9f8d-4a3c-9f5d-98156a98a962 0 <null> true false 12
-PartsSupplier SYS Properties Table <null> true false mmuuid:7a45e50a-d03f-4548-ba35-761651bbca85 0 <null> true false 13
-PartsSupplier SYS ReferenceKeyColumns Table <null> true false mmuuid:6a9653e8-a337-41b2-86fa-77b98f409a29 0 <null> true false 14
-PartsSupplier SYS Schemas Table <null> true false mmuuid:8648a554-b2ad-4e8e-84ca-2ec618b311a9 0 <null> true false 15
-PartsSupplier SYS Tables Table <null> true false mmuuid:8551b3bd-11cc-4049-9bcf-fe91a0eb7ba7 0 <null> true false 16
-PartsSupplier SYSADMIN VDBResources Table <null> true false mmuuid:1785804d-beaf-4831-9531-e59164fedd49 0 <null> true false 6
-PartsSupplier SYS VirtualDatabases Table <null> true false mmuuid:47297c72-d621-4f4e-af4e-74060ac5f489 0 <null> true false 17
-PartsSupplier pg_catalog matpg_relatt Table <null> false false mmuid:9bfddc66-af75-4366-8eac-b9fef3421219 0 <null> true true 29
-PartsSupplier pg_catalog pg_am Table <null> false false mmuid:1462b28e-0bab-436f-9654-013821506337 0 <null> true false 23
-PartsSupplier pg_catalog pg_attrdef Table <null> false false mmuid:71091853-c65e-46a9-9947-aa024f806e2d 0 <null> true false 26
-PartsSupplier pg_catalog pg_attribute Table <null> false false mmuid:fa463d98-365f-489a-a707-025193cb51eb 0 <null> true true 20
-PartsSupplier pg_catalog pg_class Table <null> false false mmuid:7e21f2e6-06e3-4bca-9b01-72ea47821560 0 <null> true true 19
-PartsSupplier pg_catalog pg_database Table <null> false false mmuid:492dd834-907f-429b-aa6e-958ad65204c6 0 <null> true false 27
-PartsSupplier pg_catalog pg_index Table <null> false false mmuid:22ac431d-e6e6-4eef-9d74-b31795424e97 0 <null> true true 22
-PartsSupplier pg_catalog pg_namespace Table <null> false false mmuid:6609866a-3d7b-4f4b-95fe-ebfac769d699 0 <null> true false 18
-PartsSupplier pg_catalog pg_proc Table <null> false false mmuid:da4b747e-7d87-403a-8309-2cdf1399031b 0 <null> true true 24
-PartsSupplier pg_catalog pg_trigger Table <null> false false mmuid:9569efdb-21b2-4b4f-a2db-e7406267b8ed 0 <null> true false 25
-PartsSupplier pg_catalog pg_type Table <null> false false mmuid:9462e3f8-cd3c-414f-a570-f6f33c40e36a 0 <null> true false 21
-PartsSupplier pg_catalog pg_user Table <null> false false mmuid:28d034eb-6f39-402f-b642-9c9560e57247 0 <null> true false 28
+PartsSupplier SYS Columns Table <null> true false mmuuid:1c9a5cb2-17b1-4e4a-8b0e-3a42bd052509 0 <null> true false 8
+PartsSupplier SYS DataTypes Table <null> true false mmuuid:9a8794f9-66f8-49e8-8576-89d212d0f957 0 <null> true false 9
+PartsSupplier SYS KeyColumns Table <null> true false mmuuid:14946083-3bd5-42d5-8283-1c0694347c29 0 <null> true false 10
+PartsSupplier SYS Keys Table <null> true false mmuuid:1e5135dc-ce5d-4b25-a8ff-63f5440b3108 0 <null> true false 11
+PartsSupplier SYSADMIN MatViews Table <null> true false mmuuid:520ba1e8-3553-460f-8d18-9b43f089e256 0 <null> true false 6
+PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS Table PARTS true true mmuuid:f6276601-73fe-1edc-a81c-ecf397b10590 16 <null> false false 1
+PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA Table SHIP_VIA true true mmuuid:0f4e9b80-73ff-1edc-a81c-ecf397b10590 4 <null> false false 2
+PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS Table STATUS true true mmuuid:1f297200-73ff-1edc-a81c-ecf397b10590 3 <null> false false 3
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER Table SUPPLIER true true mmuuid:2c371ec0-73ff-1edc-a81c-ecf397b10590 16 <null> false false 5
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS Table SUPPLIER_PARTS true true mmuuid:3deafb00-73ff-1edc-a81c-ecf397b10590 227 <null> false false 4
+PartsSupplier SYS ProcedureParams Table <null> true false mmuuid:a56bd7fe-c87a-411c-8f5d-661975a25626 0 <null> true false 12
+PartsSupplier SYS Procedures Table <null> true false mmuuid:0bc132a5-9f8d-4a3c-9f5d-98156a98a962 0 <null> true false 13
+PartsSupplier SYS Properties Table <null> true false mmuuid:7a45e50a-d03f-4548-ba35-761651bbca85 0 <null> true false 14
+PartsSupplier SYS ReferenceKeyColumns Table <null> true false mmuuid:6a9653e8-a337-41b2-86fa-77b98f409a29 0 <null> true false 15
+PartsSupplier SYS Schemas Table <null> true false mmuuid:8648a554-b2ad-4e8e-84ca-2ec618b311a9 0 <null> true false 16
+PartsSupplier SYS Tables Table <null> true false mmuuid:8551b3bd-11cc-4049-9bcf-fe91a0eb7ba7 0 <null> true false 17
+PartsSupplier SYSADMIN VDBResources Table <null> true false mmuuid:1785804d-beaf-4831-9531-e59164fedd49 0 <null> true false 7
+PartsSupplier SYS VirtualDatabases Table <null> true false mmuuid:47297c72-d621-4f4e-af4e-74060ac5f489 0 <null> true false 18
+PartsSupplier pg_catalog matpg_relatt Table <null> false false mmuid:9bfddc66-af75-4366-8eac-b9fef3421219 0 <null> true true 30
+PartsSupplier pg_catalog pg_am Table <null> false false mmuid:1462b28e-0bab-436f-9654-013821506337 0 <null> true false 24
+PartsSupplier pg_catalog pg_attrdef Table <null> false false mmuid:71091853-c65e-46a9-9947-aa024f806e2d 0 <null> true false 27
+PartsSupplier pg_catalog pg_attribute Table <null> false false mmuid:fa463d98-365f-489a-a707-025193cb51eb 0 <null> true true 21
+PartsSupplier pg_catalog pg_class Table <null> false false mmuid:7e21f2e6-06e3-4bca-9b01-72ea47821560 0 <null> true true 20
+PartsSupplier pg_catalog pg_database Table <null> false false mmuid:492dd834-907f-429b-aa6e-958ad65204c6 0 <null> true false 28
+PartsSupplier pg_catalog pg_index Table <null> false false mmuid:22ac431d-e6e6-4eef-9d74-b31795424e97 0 <null> true true 23
+PartsSupplier pg_catalog pg_namespace Table <null> false false mmuid:6609866a-3d7b-4f4b-95fe-ebfac769d699 0 <null> true false 19
+PartsSupplier pg_catalog pg_proc Table <null> false false mmuid:da4b747e-7d87-403a-8309-2cdf1399031b 0 <null> true true 25
+PartsSupplier pg_catalog pg_trigger Table <null> false false mmuid:9569efdb-21b2-4b4f-a2db-e7406267b8ed 0 <null> true false 26
+PartsSupplier pg_catalog pg_type Table <null> false false mmuid:9462e3f8-cd3c-414f-a570-f6f33c40e36a 0 <null> true false 22
+PartsSupplier pg_catalog pg_user Table <null> false false mmuid:28d034eb-6f39-402f-b642-9c9560e57247 0 <null> true false 29
Row Count : 30
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 PartsSupplier java.lang.String VDBName string SYS Tables 255 255 0 false true false true 1 false true true true
13 years, 9 months
teiid SVN: r3056 - trunk/runtime/src/main/java/org/teiid/deployers.
by teiid-commits@lists.jboss.org
Author: shawkins
Date: 2011-04-04 13:47:23 -0400 (Mon, 04 Apr 2011)
New Revision: 3056
Modified:
trunk/runtime/src/main/java/org/teiid/deployers/VDBDeployer.java
Log:
TEIID-1445 conditionally writing the index metadata to file
Modified: trunk/runtime/src/main/java/org/teiid/deployers/VDBDeployer.java
===================================================================
--- trunk/runtime/src/main/java/org/teiid/deployers/VDBDeployer.java 2011-04-04 16:45:26 UTC (rev 3055)
+++ trunk/runtime/src/main/java/org/teiid/deployers/VDBDeployer.java 2011-04-04 17:47:23 UTC (rev 3056)
@@ -144,14 +144,15 @@
// add transformation metadata to the repository.
this.vdbRepository.addVDB(deployment, store, visibilityMap, udf, cmr);
- try {
- saveMetadataStore((VFSDeploymentUnit)unit, deployment, store);
- } catch (IOException e1) {
- LogManager.logWarning(LogConstants.CTX_RUNTIME, e1, RuntimePlugin.Util.getString("vdb_save_failed", deployment.getName()+"."+deployment.getVersion())); //$NON-NLS-1$ //$NON-NLS-2$
- }
-
boolean valid = true;
synchronized (deployment) {
+ if (indexFactory != null) {
+ try {
+ saveMetadataStore((VFSDeploymentUnit)unit, deployment, store);
+ } catch (IOException e1) {
+ LogManager.logWarning(LogConstants.CTX_RUNTIME, e1, RuntimePlugin.Util.getString("vdb_save_failed", deployment.getName()+"."+deployment.getVersion())); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
if (!preview) {
valid = validateSources(cmr, deployment);
13 years, 9 months
teiid SVN: r3055 - trunk/documentation/reference/src/main/docbook/en-US/content.
by teiid-commits@lists.jboss.org
Author: shawkins
Date: 2011-04-04 12:45:26 -0400 (Mon, 04 Apr 2011)
New Revision: 3055
Modified:
trunk/documentation/reference/src/main/docbook/en-US/content/translators.xml
Log:
updating the oracle translator to note the usage of a rownum pseudo column
Modified: trunk/documentation/reference/src/main/docbook/en-US/content/translators.xml
===================================================================
--- trunk/documentation/reference/src/main/docbook/en-US/content/translators.xml 2011-04-04 16:06:49 UTC (rev 3054)
+++ trunk/documentation/reference/src/main/docbook/en-US/content/translators.xml 2011-04-04 16:45:26 UTC (rev 3055)
@@ -301,6 +301,9 @@
You can use a sequence as the default value for insert columns by
setting the column to autoincrement and the name in source to
<code><element name>:SEQUENCE=<sequence name>.<sequence value></code>.
+ A rownum column can also added to any Oracle physical table to support the rownum pseudo-column.
+ A rownum colum should have a name in source of <code>rownum</code>. These rownum columns do not
+ have the same semantics as the Oracle rownum construct so care must be taken in their usage.
</para>
</listitem>
<listitem>
13 years, 9 months
teiid SVN: r3054 - in trunk: runtime/src/main/java/org/teiid/odbc and 1 other directories.
by teiid-commits@lists.jboss.org
Author: rareddy
Date: 2011-04-04 12:06:49 -0400 (Mon, 04 Apr 2011)
New Revision: 3054
Modified:
trunk/engine/src/main/java/org/teiid/dqp/internal/process/DataTierManagerImpl.java
trunk/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java
trunk/runtime/src/main/java/org/teiid/transport/PgBackendProtocol.java
Log:
TEIID-1515: bring the changes forward from 7.1.1
Modified: trunk/engine/src/main/java/org/teiid/dqp/internal/process/DataTierManagerImpl.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/dqp/internal/process/DataTierManagerImpl.java 2011-04-04 16:05:27 UTC (rev 3053)
+++ trunk/engine/src/main/java/org/teiid/dqp/internal/process/DataTierManagerImpl.java 2011-04-04 16:06:49 UTC (rev 3054)
@@ -150,7 +150,7 @@
CompositeMetadataStore metadata = vdb.getAttachment(TransformationMetadata.class).getMetadataStore();
TransformationMetadata indexMetadata = vdb.getAttachment(TransformationMetadata.class);
Collection rows = new ArrayList();
- int oid = 0;
+ int oid = 1;
if (command instanceof Query) {
Query query = (Query)command;
UnaryFromClause ufc = (UnaryFromClause)query.getFrom().getClauses().get(0);
Modified: trunk/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java
===================================================================
--- trunk/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java 2011-04-04 16:05:27 UTC (rev 3053)
+++ trunk/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java 2011-04-04 16:06:49 UTC (rev 3054)
@@ -615,7 +615,8 @@
private final class QueryWorkItem implements Runnable {
private final ScriptReader reader;
- String s;
+ String modfiedSQL;
+ String sql;
private QueryWorkItem(String query) {
this.reader = new ScriptReader(new StringReader(query));
@@ -624,25 +625,27 @@
@Override
public void run() {
try {
- if (s == null) {
- s = fixSQL(reader.readStatement());
+ if (modfiedSQL == null) {
+ sql = reader.readStatement();
+ modfiedSQL = fixSQL(sql);
}
- while (s != null) {
+ while (modfiedSQL != null) {
try {
final StatementImpl stmt = connection.createStatement();
- executionFuture = stmt.submitExecute(s);
+ executionFuture = stmt.submitExecute(modfiedSQL);
executionFuture.addCompletionListener(new ResultsFuture.CompletionListener<Boolean>() {
@Override
public void onCompletion(ResultsFuture<Boolean> future) {
executionFuture = null;
try {
if (future.get()) {
- client.sendResults(s, stmt.getResultSet(), true);
+ client.sendResults(sql, stmt.getResultSet(), true);
} else {
- client.sendUpdateCount(s, stmt.getUpdateCount());
+ client.sendUpdateCount(sql, stmt.getUpdateCount());
setEncoding();
}
- s = fixSQL(reader.readStatement());
+ sql = reader.readStatement();
+ modfiedSQL = fixSQL(sql);
} catch (Throwable e) {
client.errorOccurred(e);
sync();
Modified: trunk/runtime/src/main/java/org/teiid/transport/PgBackendProtocol.java
===================================================================
--- trunk/runtime/src/main/java/org/teiid/transport/PgBackendProtocol.java 2011-04-04 16:05:27 UTC (rev 3053)
+++ trunk/runtime/src/main/java/org/teiid/transport/PgBackendProtocol.java 2011-04-04 16:06:49 UTC (rev 3054)
@@ -417,6 +417,10 @@
tag = "SELECT";
} else if (sql.startsWith("BEGIN")) {
tag = "BEGIN";
+ } else if (sql.startsWith("COMMIT")) {
+ tag = "COMMIT";
+ } else if (sql.startsWith("ROLLBACK")) {
+ tag = "ROLLBACK";
} else {
trace("Check command tag:", sql);
tag = "UPDATE " + updateCount;
13 years, 9 months
teiid SVN: r3053 - trunk/connectors/translator-jdbc/src/main/resources/META-INF.
by teiid-commits@lists.jboss.org
Author: rareddy
Date: 2011-04-04 12:05:27 -0400 (Mon, 04 Apr 2011)
New Revision: 3053
Modified:
trunk/connectors/translator-jdbc/src/main/resources/META-INF/jboss-beans.xml
Log:
TEIID-1059: adding the correct names in the configuration.
Modified: trunk/connectors/translator-jdbc/src/main/resources/META-INF/jboss-beans.xml
===================================================================
--- trunk/connectors/translator-jdbc/src/main/resources/META-INF/jboss-beans.xml 2011-04-02 12:21:04 UTC (rev 3052)
+++ trunk/connectors/translator-jdbc/src/main/resources/META-INF/jboss-beans.xml 2011-04-04 16:05:27 UTC (rev 3053)
@@ -306,12 +306,12 @@
</bean>
<!-- Ingres 9.3 -->
- <bean name="translator-ingres-template" class="org.teiid.templates.TranslatorDeploymentTemplate">
+ <bean name="translator-ingres-template93" class="org.teiid.templates.TranslatorDeploymentTemplate">
<property name="info"><inject bean="translator-ingres93" /> </property>
<property name="managedObjectFactory"> <inject bean="ManagedObjectFactory" /> </property>
</bean>
- <bean name="translator-ingres" class="org.teiid.templates.TranslatorTemplateInfo">
+ <bean name="translator-ingres93" class="org.teiid.templates.TranslatorTemplateInfo">
<constructor factoryMethod="createTemplateInfo">
<factory bean="TranslatorDeploymentTemplateInfoFactory" />
<parameter class="java.lang.Class">org.teiid.templates.TranslatorTemplateInfo</parameter>
13 years, 9 months
teiid SVN: r3052 - in trunk: documentation/developer-guide/src/main/docbook/en-US/content and 1 other directories.
by teiid-commits@lists.jboss.org
Author: shawkins
Date: 2011-04-02 08:21:04 -0400 (Sat, 02 Apr 2011)
New Revision: 3052
Modified:
trunk/build/kits/jboss-container/teiid-releasenotes.html
trunk/documentation/developer-guide/src/main/docbook/en-US/content/translator-api.xml
trunk/documentation/reference/src/main/docbook/en-US/content/translators.xml
Log:
TEIID-1533 updating the docs/release notes
Modified: trunk/build/kits/jboss-container/teiid-releasenotes.html
===================================================================
--- trunk/build/kits/jboss-container/teiid-releasenotes.html 2011-04-02 11:57:44 UTC (rev 3051)
+++ trunk/build/kits/jboss-container/teiid-releasenotes.html 2011-04-02 12:21:04 UTC (rev 3052)
@@ -40,10 +40,16 @@
<LI><B>Optional Join Enhancements</B> - the optional join hint no longer requires the use of ANSI joins and can will not remove optional bridging tables that are used by two other tables that are required.
<LI><B>InterSystems Cache</B> - InterSystems Cache database translator is now available to use as supported source under Teiid.
<LI><B>userRequestSourceConcurrency</B> - was added to control the number of concurrent source queries allowed for each user request.
- <LI><B>Dependent Join Improvements</B> - dependent join analysis and costing in general was improved to consider dependent joins earlier in planning.
<LI><B>Memory Management Improvements</B> - maxReserveBatchColumns and maxProcessingBatchesColumns will be default be determined automatically and will more reliably prevent memory issues. See the admin guide for more.
<LI><B>Subquery optimization control</B> - added the MJ and NO_UNNEST hints and the org.teiid.subqueryUnnestDefault system property to control the optimization of subqueries to traditional joins or to a merge join implemenation of a semijoin or antijoin.
- <LI><B>Local connection threads </B> - local connection calling threads will be used to process work rather than using an engine thread. This helps decouple the configuration of maxThreads.
+ <LI><B>Local connection threads</B> - local connection calling threads will be used to process work rather than using an engine thread. This helps decouple the configuration of maxThreads.
+ <LI><B>Dependent Join Improvements</B> - several major improvements were made to increase performance and develop better plans.
+ <UL>
+ <LI><B>Improved Planning</B> - the decision to create a dependent join is now considered earlier in planning and is much more effective for dependent joins involving multiple unrelated independent tables.
+ <LI><B>IN predicate splitting</B> - the planner can now split large dependent IN predicates into multiple IN predicates, which is controlled by the translator property MaxDepdendentInPredicates. This allows for much larger dependent joins to be performed as a single query.
+ <LI><B>Dependent query parallization</B> - when multiple dependent queries are still required, then they will be run in parallel (up to MaxUserSourceRequestConcurrency), rather than sequentially.
+ </UL>
+ <LI><B>Enhanced Sort Join</B> - the partitioned merge join was replaced with an enhanced sort join. The enhanced sort join will use the actual row counts from each side of the relation to perform a index based join if one side is small enough, a partial sort of the larger side and a repeated merge join if the tuples are unbalanced but one side is not small enough to form an index, or a standard sort merge join if the tuples are balanced.
</UL>
<h2><a name="Compatibility">Compatibility Issues</a></h2>
Modified: trunk/documentation/developer-guide/src/main/docbook/en-US/content/translator-api.xml
===================================================================
--- trunk/documentation/developer-guide/src/main/docbook/en-US/content/translator-api.xml 2011-04-02 11:57:44 UTC (rev 3051)
+++ trunk/documentation/developer-guide/src/main/docbook/en-US/content/translator-api.xml 2011-04-02 12:21:04 UTC (rev 3052)
@@ -1329,6 +1329,11 @@
IN criteria. This is an important constraint as an IN criteria is
frequently used to pass criteria between one source and another using
a dependent join.</para>
+ <para>The method <code>ExecutionFactory.getMaxDependentInPredicates()</code> is
+ used to specify the maximum number of IN predicates (of at most MaxInCriteriaSize) that can be passed
+ as part of a dependent join. For example if there are 10000 values to pass as part of the dependent join
+ and a MaxInCriteriaSize of 1000 and a MaxDependentInPredicates setting of 5, then the
+ dependent join logic will form two source queries each with 5 IN predicates of 1000 values each combined by OR.</para>
<para>The method <code>ExecutionFactory.getMaxFromGroups()</code> can be used
to specify the maximum number of FROM Clause groups that can used in a
join. -1 indicates there is no limit.</para>
Modified: trunk/documentation/reference/src/main/docbook/en-US/content/translators.xml
===================================================================
--- trunk/documentation/reference/src/main/docbook/en-US/content/translators.xml 2011-04-02 11:57:44 UTC (rev 3051)
+++ trunk/documentation/reference/src/main/docbook/en-US/content/translators.xml 2011-04-02 12:21:04 UTC (rev 3052)
@@ -114,6 +114,12 @@
<entry>If in criteria are supported, defines what the maximum number of in entries are per predicate. -1 indicates no limit.</entry>
<entry>-1</entry>
</row>
+ <row>
+ <entry>MaxDependentInPredicates</entry>
+ <entry>If in criteria are supported, defines what the maximum number of predicates that can be used for a dependent join.
+ Values less than 1 indicate to use only one in predicate per dependent value pushed (which matches the pre-7.4 behavior).</entry>
+ <entry>-1</entry>
+ </row>
</tbody>
</tgroup>
</table>
13 years, 9 months
teiid SVN: r3051 - in trunk: engine/src/main/java/org/teiid/common/buffer and 9 other directories.
by teiid-commits@lists.jboss.org
Author: shawkins
Date: 2011-04-02 07:57:44 -0400 (Sat, 02 Apr 2011)
New Revision: 3051
Added:
trunk/engine/src/main/java/org/teiid/query/processor/relational/EnhancedSortMergeJoinStrategy.java
Removed:
trunk/engine/src/main/java/org/teiid/query/processor/relational/PartitionedSortJoin.java
Modified:
trunk/documentation/reference/src/main/docbook/en-US/content/architecture.xml
trunk/documentation/reference/src/main/docbook/en-US/content/federated_planning.xml
trunk/engine/src/main/java/org/teiid/common/buffer/STree.java
trunk/engine/src/main/java/org/teiid/common/buffer/TupleBrowser.java
trunk/engine/src/main/java/org/teiid/common/buffer/impl/BufferManagerImpl.java
trunk/engine/src/main/java/org/teiid/query/optimizer/relational/PlanToProcessConverter.java
trunk/engine/src/main/java/org/teiid/query/optimizer/relational/rules/RuleAssignOutputElements.java
trunk/engine/src/main/java/org/teiid/query/optimizer/relational/rules/RuleImplementJoinStrategy.java
trunk/engine/src/main/java/org/teiid/query/processor/relational/JoinNode.java
trunk/engine/src/main/java/org/teiid/query/processor/relational/ListNestedSortComparator.java
trunk/engine/src/main/java/org/teiid/query/processor/relational/MergeJoinStrategy.java
trunk/engine/src/main/java/org/teiid/query/processor/relational/RelationalNode.java
trunk/engine/src/main/java/org/teiid/query/processor/relational/SortUtility.java
trunk/engine/src/main/java/org/teiid/query/processor/relational/SourceState.java
trunk/engine/src/main/java/org/teiid/query/tempdata/TempTable.java
trunk/engine/src/main/java/org/teiid/query/tempdata/TempTableDataManager.java
trunk/engine/src/test/java/org/teiid/common/buffer/TestSTree.java
trunk/engine/src/test/java/org/teiid/query/optimizer/TestOptimizer.java
trunk/engine/src/test/java/org/teiid/query/optimizer/TestPartitionedJoinPlanning.java
trunk/engine/src/test/java/org/teiid/query/processor/TestTempTables.java
trunk/engine/src/test/java/org/teiid/query/processor/TestVirtualDepJoin.java
trunk/engine/src/test/java/org/teiid/query/processor/relational/NodeTestUtil.java
trunk/engine/src/test/java/org/teiid/query/processor/relational/TestJoinNode.java
Log:
TEIID-1517 changing the join partitioning logic to use an index instead or to just perform repeated merges for unbalanced joins.
Modified: trunk/documentation/reference/src/main/docbook/en-US/content/architecture.xml
===================================================================
--- trunk/documentation/reference/src/main/docbook/en-US/content/architecture.xml 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/documentation/reference/src/main/docbook/en-US/content/architecture.xml 2011-04-02 11:57:44 UTC (rev 3051)
@@ -148,11 +148,11 @@
have a match, emit a row. In general, merge join is
on the order of n+m rather than n*m in nested loop. Merge join is the
default algorithm.</para>
- <para>Any of the Join Algorithms above can be made into a
- dependent join. The
- decision to implement a dependent join is considered after the
- join algorithm is chosen, and does not currently influence the
- algorithm selection.</para>
+ <para>Using costing information the engine may also delay the decision
+ to perform a full sort merge join. Based upon the actual row counts involved, the engine
+ can choose to build an index of the smaller side (which will perform similarly to a hash join)
+ or to only partially sort the larger side of the relation.</para>
+ <para>Joins involving equi-join predicates are also eligible to be made into <xref linkend="dependent_joins"/>.</para>
</section>
<section>
<title>Sort Based Algorithms</title>
@@ -162,13 +162,13 @@
does not require all of the result set to ever be in memory yet
uses the maximal amount of memory allowed by the buffer manager.
</para>
- <para>It consists of two phases. The first phase (“sort”) will
+ <para>It consists of two phases. The first phase ("sort") will
take an unsorted input stream and produce one or more sorted
input streams. Each pass reads as much of the unsorted stream
as possible, sorts it, and writes it back out as a new stream.
Since the stream may be more than can fit in memory, this may
result in many sorted streams.</para>
- <para>The second phase (“merge”) consists of a set of phases
+ <para>The second phase ("merge") consists of a set of phases
that grab the next batch from as many sorted input streams as
will fit in memory. It then repeatedly grabs the next tuple in
sorted order from each stream and outputs merged sorted batches
Modified: trunk/documentation/reference/src/main/docbook/en-US/content/federated_planning.xml
===================================================================
--- trunk/documentation/reference/src/main/docbook/en-US/content/federated_planning.xml 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/documentation/reference/src/main/docbook/en-US/content/federated_planning.xml 2011-04-02 11:57:44 UTC (rev 3051)
@@ -188,6 +188,9 @@
inefficient join structure and may result in many source
queries.</para>
</tip>
+ <para>The engine will for IN clauses to filter the values coming from the dependent side.
+ If the number of values from the independent side exceeds the translators MaxInCriteriaSize, the values will be split into multiple IN predicates up to MaxDependentPredicates.
+ When the number of independent values exceeds MaxInCriteriaSize*MaxDependentPredicates, then multiple dependent queries will be issued in parallel.</para>
</section>
<section>
<title>Copy Criteria</title>
Modified: trunk/engine/src/main/java/org/teiid/common/buffer/STree.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/common/buffer/STree.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/main/java/org/teiid/common/buffer/STree.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -23,8 +23,8 @@
package org.teiid.common.buffer;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.Arrays;
-import java.util.Comparator;
import java.util.LinkedList;
import java.util.List;
import java.util.Random;
@@ -33,6 +33,7 @@
import org.teiid.common.buffer.SPage.SearchResult;
import org.teiid.core.TeiidComponentException;
+import org.teiid.query.processor.relational.ListNestedSortComparator;
/**
* Self balancing search tree using skip list like logic
@@ -53,7 +54,7 @@
protected volatile SPage[] header = new SPage[] {new SPage(this, true)};
protected BatchManager keyManager;
protected BatchManager leafManager;
- protected Comparator comparator;
+ protected ListNestedSortComparator comparator;
protected int pageSize;
protected int keyLength;
protected String[] types;
@@ -66,7 +67,7 @@
public STree(BatchManager manager,
BatchManager leafManager,
- final Comparator comparator,
+ final ListNestedSortComparator comparator,
int pageSize,
int keyLength,
String[] types) {
@@ -168,7 +169,7 @@
return null;
}
- public List insert(List tuple, InsertMode mode) throws TeiidComponentException {
+ public List insert(List tuple, InsertMode mode, int sizeHint) throws TeiidComponentException {
LinkedList<SearchResult> places = new LinkedList<SearchResult>();
List match = null;
if (mode == InsertMode.ORDERED) {
@@ -193,7 +194,16 @@
}
}
List key = extractKey(tuple);
- int level = randomLevel();
+ int level = 0;
+ if (mode != InsertMode.ORDERED || sizeHint == -1) {
+ level = randomLevel();
+ } else if (!places.isEmpty() && places.getLast().values.getTuples().size() == pageSize) {
+ int row = rowCount.get();
+ while (row != 0 && row%pageSize == 0) {
+ row = (row - pageSize + 1)/pageSize;
+ level++;
+ }
+ }
assert header.length == places.size();
if (level >= header.length) {
header = Arrays.copyOf(header, level + 1);
@@ -219,7 +229,10 @@
}
List extractKey(List tuple) {
- return tuple.subList(0, keyLength);
+ if (tuple.size() > keyLength) {
+ return new ArrayList(tuple.subList(0, keyLength));
+ }
+ return tuple;
}
SPage insert(List k, SearchResult result, SearchResult parent, Object value, boolean ordered) throws TeiidComponentException {
@@ -396,4 +409,33 @@
return preferMemory;
}
+ public ListNestedSortComparator getComparator() {
+ return comparator;
+ }
+
+ /**
+ * Quickly check if the index can be compacted
+ */
+ public void compact() {
+ while (true) {
+ if (this.header.length == 1) {
+ return;
+ }
+ SPage child = this.header[header.length - 2];
+ if (child.next != null) {
+ //TODO: condense the page pointers
+ return;
+ }
+ //remove unneeded index level
+ this.header = Arrays.copyOf(this.header, header.length - 1);
+ }
+ }
+
+ public void removeRowIdFromKey() {
+ this.keyLength--;
+ int[] sortParameters = this.comparator.getSortParameters();
+ sortParameters = Arrays.copyOf(sortParameters, sortParameters.length - 1);
+ this.comparator.setSortParameters(sortParameters);
+ }
+
}
\ No newline at end of file
Modified: trunk/engine/src/main/java/org/teiid/common/buffer/TupleBrowser.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/common/buffer/TupleBrowser.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/main/java/org/teiid/common/buffer/TupleBrowser.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -79,11 +79,11 @@
this.tree = sTree;
this.direction = direction;
- init(lowerBound, upperBound);
+ init(lowerBound, upperBound, false);
}
private void init(List<Object> lowerBound,
- List<?> upperBound)
+ List<?> upperBound, boolean isPartialKey)
throws TeiidComponentException {
if (lowerBound != null) {
lowerBound.addAll(Collections.nCopies(tree.getKeyLength() - lowerBound.size(), null));
@@ -95,7 +95,7 @@
boolean valid = true;
if (upperBound != null) {
- if (lowerBound != null && this.tree.comparator.compare(upperBound, lowerBound) < 0) {
+ if (!isPartialKey && lowerBound != null && this.tree.comparator.compare(upperBound, lowerBound) < 0) {
valid = false;
}
LinkedList<SearchResult> places = new LinkedList<SearchResult>();
@@ -105,12 +105,15 @@
boundIndex = upper.index;
if (boundIndex < 0) {
//we are guaranteed by find to not get back the -1 index, unless
- //there are now tuples, in which case a bound of -1 is fine
+ //there are no tuples, in which case a bound of -1 is fine
boundIndex = Math.min(upper.values.getTuples().size(), -boundIndex -1) - 1;
}
if (!direction) {
values = upper.values;
}
+ if (lowerBound != null) {
+ valid = index<=boundIndex;
+ }
} else {
while (bound == null || bound.children != null) {
bound = tree.findChildTail(bound);
@@ -165,7 +168,7 @@
return null;
}
if (newValue.size() < tree.getKeyLength()) {
- init(new ArrayList<Object>(newValue), newValue);
+ init(new ArrayList<Object>(newValue), newValue, true);
inPartial = true;
continue;
}
Modified: trunk/engine/src/main/java/org/teiid/common/buffer/impl/BufferManagerImpl.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/common/buffer/impl/BufferManagerImpl.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/main/java/org/teiid/common/buffer/impl/BufferManagerImpl.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -87,7 +87,7 @@
*/
public class BufferManagerImpl implements BufferManager, StorageManager {
- private static final double KB_PER_VALUE = 64d/1024;
+ public static final double KB_PER_VALUE = 64d/1024;
private static final int IO_BUFFER_SIZE = 1 << 14;
private static final int COMPACTION_THRESHOLD = 1 << 25; //start checking at 32 megs
@@ -528,7 +528,7 @@
if (this.maxProcessingBatches < 0) {
this.maxProcessingKB = Math.max((int)Math.min(128 * KB_PER_VALUE * processorBatchSize, Integer.MAX_VALUE), (int)(.1 * maxMemory)/maxActivePlans);
} else {
- this.maxProcessingKB = Math.max(0, (int)Math.min(maxProcessingBatches * KB_PER_VALUE * processorBatchSize, Integer.MAX_VALUE));
+ this.maxProcessingKB = Math.max(0, (int)Math.min(Math.ceil(maxProcessingBatches * KB_PER_VALUE * processorBatchSize), Integer.MAX_VALUE));
}
}
@@ -551,14 +551,15 @@
lock.lock();
try {
if (mode == BufferReserveMode.WAIT) {
- int waitCount = 0;
- while (count - waitCount > this.reserveBatchKB) {
+ //don't wait for more than is available
+ int waitCount = Math.min(count, this.maxReserveBatchKB);
+ while (waitCount > 0 && waitCount > this.reserveBatchKB) {
try {
batchesFreed.await(100, TimeUnit.MILLISECONDS);
} catch (InterruptedException e) {
throw new TeiidRuntimeException(e);
}
- waitCount++;
+ waitCount /= 2;
}
}
if (this.reserveBatchKB >= count || mode == BufferReserveMode.FORCE) {
Modified: trunk/engine/src/main/java/org/teiid/query/optimizer/relational/PlanToProcessConverter.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/optimizer/relational/PlanToProcessConverter.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/main/java/org/teiid/query/optimizer/relational/PlanToProcessConverter.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -61,7 +61,7 @@
import org.teiid.query.processor.relational.NestedLoopJoinStrategy;
import org.teiid.query.processor.relational.NestedTableJoinStrategy;
import org.teiid.query.processor.relational.NullNode;
-import org.teiid.query.processor.relational.PartitionedSortJoin;
+import org.teiid.query.processor.relational.EnhancedSortMergeJoinStrategy;
import org.teiid.query.processor.relational.PlanExecutionNode;
import org.teiid.query.processor.relational.ProjectIntoNode;
import org.teiid.query.processor.relational.ProjectNode;
@@ -235,10 +235,10 @@
List joinCrits = (List) node.getProperty(NodeConstants.Info.JOIN_CRITERIA);
String depValueSource = (String) node.getProperty(NodeConstants.Info.DEPENDENT_VALUE_SOURCE);
SortOption leftSort = (SortOption)node.getProperty(NodeConstants.Info.SORT_LEFT);
- if(stype == JoinStrategyType.MERGE || stype == JoinStrategyType.PARTITIONED_SORT) {
+ if(stype == JoinStrategyType.MERGE || stype == JoinStrategyType.ENHANCED_SORT) {
MergeJoinStrategy mjStrategy = null;
- if (stype.equals(JoinStrategyType.PARTITIONED_SORT)) {
- mjStrategy = new PartitionedSortJoin(leftSort, (SortOption)node.getProperty(NodeConstants.Info.SORT_RIGHT));
+ if (stype.equals(JoinStrategyType.ENHANCED_SORT)) {
+ mjStrategy = new EnhancedSortMergeJoinStrategy(leftSort, (SortOption)node.getProperty(NodeConstants.Info.SORT_RIGHT));
} else {
mjStrategy = new MergeJoinStrategy(leftSort, (SortOption)node.getProperty(NodeConstants.Info.SORT_RIGHT), false);
}
Modified: trunk/engine/src/main/java/org/teiid/query/optimizer/relational/rules/RuleAssignOutputElements.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/optimizer/relational/rules/RuleAssignOutputElements.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/main/java/org/teiid/query/optimizer/relational/rules/RuleAssignOutputElements.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -43,6 +43,7 @@
import org.teiid.query.optimizer.relational.plantree.NodeConstants;
import org.teiid.query.optimizer.relational.plantree.NodeEditor;
import org.teiid.query.optimizer.relational.plantree.PlanNode;
+import org.teiid.query.processor.relational.RelationalNode;
import org.teiid.query.sql.lang.Command;
import org.teiid.query.sql.lang.Criteria;
import org.teiid.query.sql.lang.OrderBy;
@@ -351,7 +352,7 @@
PlanNode projectNode = allProjects.get(i);
List<SingleElementSymbol> projectCols = (List<SingleElementSymbol>) projectNode.getProperty(NodeConstants.Info.PROJECT_COLS);
- newCols = filter(filteredIndex, projectCols);
+ newCols = RelationalNode.projectTuple(filteredIndex, projectCols);
projectNode.setProperty(NodeConstants.Info.PROJECT_COLS, newCols);
if (updateGroups) {
@@ -403,15 +404,6 @@
return newCols;
}
- static List<SingleElementSymbol> filter(int[] filteredIndex,
- List<SingleElementSymbol> projectCols) {
- List<SingleElementSymbol> newCols = new ArrayList<SingleElementSymbol>();
- for(int j=0; j<filteredIndex.length; j++) {
- newCols.add(projectCols.get(filteredIndex[j]));
- }
- return newCols;
- }
-
/**
* Check all branches for either a dup removal or a non all union.
*
Modified: trunk/engine/src/main/java/org/teiid/query/optimizer/relational/rules/RuleImplementJoinStrategy.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/optimizer/relational/rules/RuleImplementJoinStrategy.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/main/java/org/teiid/query/optimizer/relational/rules/RuleImplementJoinStrategy.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -41,6 +41,7 @@
import org.teiid.query.optimizer.relational.plantree.NodeFactory;
import org.teiid.query.optimizer.relational.plantree.PlanNode;
import org.teiid.query.optimizer.relational.plantree.NodeConstants.Info;
+import org.teiid.query.processor.relational.RelationalNode;
import org.teiid.query.processor.relational.JoinNode.JoinStrategyType;
import org.teiid.query.processor.relational.MergeJoinStrategy.SortOption;
import org.teiid.query.sql.lang.CompareCriteria;
@@ -98,7 +99,7 @@
}
/**
- * Don't push sorts for unbalanced inner joins, we prefer to use partitioning
+ * Don't push sorts for unbalanced inner joins, we prefer to use a processing time cost based decision
*/
boolean pushLeft = true;
boolean pushRight = true;
@@ -163,8 +164,8 @@
}
}
joinNode.setProperty(Info.JOIN_CRITERIA, joinCriteria);
- leftExpressions = RuleAssignOutputElements.filter(reorder, leftExpressions);
- rightExpressions = RuleAssignOutputElements.filter(reorder, rightExpressions);
+ leftExpressions = RelationalNode.projectTuple(reorder, leftExpressions);
+ rightExpressions = RelationalNode.projectTuple(reorder, rightExpressions);
joinNode.setProperty(NodeConstants.Info.LEFT_EXPRESSIONS, leftExpressions);
joinNode.setProperty(NodeConstants.Info.RIGHT_EXPRESSIONS, rightExpressions);
}
@@ -173,7 +174,7 @@
insertSort(joinNode.getLastChild(), rightExpressions, joinNode, metadata, capabilitiesFinder, pushRight);
if (joinNode.getProperty(NodeConstants.Info.JOIN_TYPE) == JoinType.JOIN_INNER && (!pushRight || !pushedLeft)) {
- joinNode.setProperty(NodeConstants.Info.JOIN_STRATEGY, JoinStrategyType.PARTITIONED_SORT);
+ joinNode.setProperty(NodeConstants.Info.JOIN_STRATEGY, JoinStrategyType.ENHANCED_SORT);
}
}
Copied: trunk/engine/src/main/java/org/teiid/query/processor/relational/EnhancedSortMergeJoinStrategy.java (from rev 3026, trunk/engine/src/main/java/org/teiid/query/processor/relational/PartitionedSortJoin.java)
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/processor/relational/EnhancedSortMergeJoinStrategy.java (rev 0)
+++ trunk/engine/src/main/java/org/teiid/query/processor/relational/EnhancedSortMergeJoinStrategy.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -0,0 +1,312 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.query.processor.relational;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.teiid.common.buffer.IndexedTupleSource;
+import org.teiid.common.buffer.STree;
+import org.teiid.common.buffer.TupleBrowser;
+import org.teiid.common.buffer.TupleSource;
+import org.teiid.common.buffer.BufferManager.BufferReserveMode;
+import org.teiid.common.buffer.STree.InsertMode;
+import org.teiid.core.TeiidComponentException;
+import org.teiid.core.TeiidProcessingException;
+import org.teiid.core.types.DataTypeManager;
+import org.teiid.query.processor.CollectionTupleSource;
+import org.teiid.query.sql.lang.OrderBy;
+import org.teiid.query.sql.symbol.ElementSymbol;
+import org.teiid.query.sql.symbol.SingleElementSymbol;
+
+
+/**
+ * Extends the basic fully sorted merge join to check for conditions necessary
+ * to not fully sort one of the sides.
+ *
+ * Will be used for inner joins and only if both sorts are not required.
+ * Degrades to a normal merge join if the tuples are balanced.
+ *
+ * Refined in 7.4 to use a full index if it is small enough or a repeated merge, rather than a partitioning approach (which was really just a sinlge level index)
+ */
+public class EnhancedSortMergeJoinStrategy extends MergeJoinStrategy {
+
+ private TupleSource currentSource;
+ private SourceState sortedSource;
+ private SourceState notSortedSource;
+ private List<?> partitionedTuple;
+ private TupleBrowser tb;
+ private int reserved;
+ private STree index;
+ private int[] reverseIndexes;
+ private List<?> sortedTuple;
+ private boolean repeatedMerge;
+
+ /**
+ * Number of index batches we'll allow to marked as prefers memory regardless of buffer space
+ */
+ private int preferMemCutoff = 8;
+
+ public EnhancedSortMergeJoinStrategy(SortOption sortLeft, SortOption sortRight) {
+ super(sortLeft, sortRight, false);
+ }
+
+ public void setPreferMemCutoff(int cutoff) {
+ this.preferMemCutoff = cutoff;
+ }
+
+ @Override
+ public void close() {
+ if (joinNode == null) {
+ return;
+ }
+ super.close();
+ if (this.index != null) {
+ this.index.remove();
+ }
+ releaseReserved();
+ this.index = null;
+ this.tb = null;
+ this.currentSource = null;
+ this.sortedSource = null;
+ this.notSortedSource = null;
+ this.sortedTuple = null;
+ this.reverseIndexes = null;
+ }
+
+ /**
+ * Create an index of the smaller size
+ *
+ * TODO: reuse existing temp table indexes
+ */
+ public void createIndex(SourceState state, boolean sorted) throws TeiidComponentException, TeiidProcessingException {
+ int keyLength = state.getExpressionIndexes().length;
+ List elements = state.getSource().getOutputElements();
+
+ //TODO: minimize reordering, or at least detect when it's not necessary
+ int[] reorderedSortIndex = Arrays.copyOf(state.getExpressionIndexes(), elements.size());
+ Set<Integer> used = new HashSet<Integer>();
+ for (int i : state.getExpressionIndexes()) {
+ used.add(i);
+ }
+ int j = state.getExpressionIndexes().length;
+ for (int i = 0; i < elements.size(); i++) {
+ if (!used.contains(i)) {
+ reorderedSortIndex[j++] = i;
+ }
+ }
+ List<SingleElementSymbol> reordered = RelationalNode.projectTuple(reorderedSortIndex, elements);
+ if (!state.isDistinct()) {
+ //need to add a rowid, just in case
+ reordered = new ArrayList<SingleElementSymbol>(reordered);
+ ElementSymbol id = new ElementSymbol("rowId"); //$NON-NLS-1$
+ id.setType(DataTypeManager.DefaultDataClasses.INTEGER);
+ reordered.add(keyLength, id);
+ keyLength++;
+ }
+ index = this.joinNode.getBufferManager().createSTree(reordered, this.joinNode.getConnectionID(), keyLength);
+ index.setPreferMemory(true);
+ if (!state.isDistinct()) {
+ index.getComparator().setDistinctIndex(keyLength-2);
+ }
+ IndexedTupleSource its = state.getTupleBuffer().createIndexedTupleSource(true);
+ int rowId = 0;
+ List<?> lastTuple = null;
+ boolean sortedDistinct = sorted && !state.isDistinct();
+ outer: while (its.hasNext()) {
+ //detect if sorted and distinct
+ List<?> originalTuple = its.nextTuple();
+ //remove the tuple if it has null
+ for (int i : state.getExpressionIndexes()) {
+ if (originalTuple.get(i) == null) {
+ continue outer;
+ }
+ }
+ if (sortedDistinct && lastTuple != null && this.compare(lastTuple, originalTuple, state.getExpressionIndexes(), state.getExpressionIndexes()) == 0) {
+ sortedDistinct = false;
+ }
+ lastTuple = originalTuple;
+ List<Object> tuple = (List<Object>) RelationalNode.projectTuple(reorderedSortIndex, originalTuple);
+ if (!state.isDistinct()) {
+ tuple.add(keyLength - 1, rowId++);
+ }
+ index.insert(tuple, sorted?InsertMode.ORDERED:InsertMode.NEW, state.getTupleBuffer().getRowCount());
+ }
+ if (!sorted) {
+ index.compact();
+ }
+ its.closeSource();
+ this.reverseIndexes = new int[elements.size()];
+ for (int i = 0; i < reverseIndexes.length; i++) {
+ int oldIndex = reorderedSortIndex[i];
+ this.reverseIndexes[oldIndex] = i + (!state.isDistinct()&&i>=keyLength-1?1:0);
+ }
+ if (!state.isDistinct()
+ && ((!sorted && index.getComparator().isDistinct()) || (sorted && sortedDistinct))) {
+ this.index.removeRowIdFromKey();
+ state.markDistinct(true);
+ }
+ }
+
+ @Override
+ protected void loadLeft() throws TeiidComponentException,
+ TeiidProcessingException {
+ //always buffer to determine row counts
+ this.leftSource.getTupleBuffer();
+ }
+
+ @Override
+ protected void loadRight() throws TeiidComponentException,
+ TeiidProcessingException {
+ this.rightSource.getTupleBuffer();
+
+ if (processingSortRight == SortOption.SORT && shouldIndex(this.leftSource, this.rightSource)) {
+ this.processingSortRight = SortOption.NOT_SORTED;
+ } else if (processingSortLeft == SortOption.SORT && shouldIndex(this.rightSource, this.leftSource)) {
+ this.processingSortLeft = SortOption.NOT_SORTED;
+ }
+ if (this.processingSortLeft != SortOption.NOT_SORTED && this.processingSortRight != SortOption.NOT_SORTED) {
+ super.loadRight();
+ super.loadLeft();
+ return; //degrade to merge join
+ }
+ if (this.processingSortLeft == SortOption.NOT_SORTED) {
+ this.sortedSource = this.rightSource;
+ this.notSortedSource = this.leftSource;
+
+ if (!repeatedMerge) {
+ createIndex(this.rightSource, this.processingSortRight == SortOption.ALREADY_SORTED);
+ } else {
+ super.loadRight(); //sort if needed
+ this.notSortedSource.sort(SortOption.NOT_SORTED); //do a single sort pass
+ }
+ } else if (this.processingSortRight == SortOption.NOT_SORTED) {
+ this.sortedSource = this.leftSource;
+ this.notSortedSource = this.rightSource;
+
+ if (!repeatedMerge) {
+ createIndex(this.leftSource, this.processingSortLeft == SortOption.ALREADY_SORTED);
+ } else {
+ super.loadLeft(); //sort if needed
+ this.notSortedSource.sort(SortOption.NOT_SORTED); //do a single sort pass
+ }
+ }
+ }
+
+ private boolean shouldIndex(SourceState possibleIndex, SourceState other) throws TeiidComponentException, TeiidProcessingException {
+ if (possibleIndex.getRowCount() * 4 > other.getRowCount()) {
+ return false; //index is too large
+ }
+ int schemaSize = this.joinNode.getBufferManager().getSchemaSize(other.getSource().getOutputElements());
+ int toReserve = this.joinNode.getBufferManager().getMaxProcessingKB();
+ //check if the other side can be sorted in memory
+ if (other.getRowCount()/this.joinNode.getBatchSize() < toReserve/schemaSize) {
+ return false;
+ }
+ boolean useIndex = false;
+ int indexSchemaSize = this.joinNode.getBufferManager().getSchemaSize(possibleIndex.getSource().getOutputElements());
+ //approximate that 1/2 of the index will be memory resident
+ toReserve = (int)(indexSchemaSize * possibleIndex.getTupleBuffer().getRowCount() / (possibleIndex.getTupleBuffer().getBatchSize() * .5));
+ if (toReserve < this.joinNode.getBufferManager().getMaxProcessingKB()) {
+ useIndex = true;
+ } else if (possibleIndex.getTupleBuffer().getRowCount() / this.joinNode.getBatchSize() < preferMemCutoff) {
+ useIndex = true;
+ }
+ if (useIndex) {
+ reserved = this.joinNode.getBufferManager().reserveBuffers(toReserve, BufferReserveMode.FORCE);
+ return true;
+ }
+ this.repeatedMerge = true;
+ return true;
+ }
+
+ private void releaseReserved() {
+ this.joinNode.getBufferManager().releaseBuffers(this.reserved);
+ this.reserved = 0;
+ }
+
+ @Override
+ protected void process() throws TeiidComponentException,
+ TeiidProcessingException {
+ if (this.processingSortLeft != SortOption.NOT_SORTED && this.processingSortRight != SortOption.NOT_SORTED) {
+ super.process();
+ return;
+ }
+ if (this.rightSource.getTupleBuffer().getRowCount() == 0) {
+ return;
+ }
+ if (repeatedMerge) {
+ while (this.notSortedSource.hasBuffer()) {
+ super.process();
+ resetMatchState();
+ this.sortedSource.resetState();
+ this.notSortedSource.nextBuffer();
+ }
+ return;
+ }
+ //else this is a single scan against the index
+ if (currentSource == null) {
+ currentSource = this.notSortedSource.getTupleBuffer().createIndexedTupleSource();
+ }
+ while (true) {
+ if (this.partitionedTuple == null) {
+ partitionedTuple = this.currentSource.nextTuple();
+ if (partitionedTuple == null) {
+ return;
+ }
+ List<?> key = RelationalNode.projectTuple(this.notSortedSource.getExpressionIndexes(), this.partitionedTuple);
+ tb = new TupleBrowser(this.index, new CollectionTupleSource(Arrays.asList(key).iterator()), OrderBy.ASC);
+ }
+ if (sortedTuple == null) {
+ sortedTuple = tb.nextTuple();
+
+ if (sortedTuple == null) {
+ partitionedTuple = null;
+ continue;
+ }
+ }
+ List<?> reorderedTuple = RelationalNode.projectTuple(reverseIndexes, sortedTuple);
+ List outputTuple = outputTuple(this.processingSortLeft==SortOption.NOT_SORTED?partitionedTuple:reorderedTuple,
+ this.processingSortLeft==SortOption.NOT_SORTED?reorderedTuple:partitionedTuple);
+ boolean matches = this.joinNode.matchesCriteria(outputTuple);
+ if (matches) {
+ this.joinNode.addBatchRow(outputTuple);
+ }
+ this.sortedTuple = null;
+ }
+ }
+
+ @Override
+ public EnhancedSortMergeJoinStrategy clone() {
+ return new EnhancedSortMergeJoinStrategy(this.sortLeft, this.sortRight);
+ }
+
+ @Override
+ public String getName() {
+ return "ENHANCED SORT JOIN"; //$NON-NLS-1$
+ }
+
+}
Property changes on: trunk/engine/src/main/java/org/teiid/query/processor/relational/EnhancedSortMergeJoinStrategy.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: trunk/engine/src/main/java/org/teiid/query/processor/relational/JoinNode.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/processor/relational/JoinNode.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/main/java/org/teiid/query/processor/relational/JoinNode.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -54,7 +54,7 @@
public enum JoinStrategyType {
MERGE,
- PARTITIONED_SORT,
+ ENHANCED_SORT,
NESTED_LOOP,
NESTED_TABLE
}
Modified: trunk/engine/src/main/java/org/teiid/query/processor/relational/ListNestedSortComparator.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/processor/relational/ListNestedSortComparator.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/main/java/org/teiid/query/processor/relational/ListNestedSortComparator.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -192,5 +192,13 @@
return null;
}
+ public int[] getSortParameters() {
+ return sortParameters;
+ }
+
+ public void setSortParameters(int[] sortParameters) {
+ this.sortParameters = sortParameters;
+ }
+
} // END CLASS
Modified: trunk/engine/src/main/java/org/teiid/query/processor/relational/MergeJoinStrategy.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/processor/relational/MergeJoinStrategy.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/main/java/org/teiid/query/processor/relational/MergeJoinStrategy.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -73,7 +73,7 @@
//planning time information
public enum SortOption {
- ALREADY_SORTED, SORT, SORT_DISTINCT, PARTITION
+ ALREADY_SORTED, SORT, SORT_DISTINCT, NOT_SORTED
}
protected SortOption sortLeft;
@@ -112,7 +112,13 @@
@Override
public void initialize(JoinNode joinNode) {
super.initialize(joinNode);
- this.outerState = this.leftSource;
+ resetMatchState();
+ this.processingSortRight = this.sortRight;
+ this.processingSortLeft = this.sortLeft;
+ }
+
+ protected void resetMatchState() {
+ this.outerState = this.leftSource;
this.innerState = this.rightSource;
this.mergeState = MergeState.SCAN;
this.matchState = MatchState.MATCH_LEFT;
@@ -120,9 +126,7 @@
this.leftScanState = ScanState.READ;
this.rightScanState = ScanState.READ;
this.outerMatched = false;
- this.processingSortRight = this.sortRight;
- this.processingSortLeft = this.sortLeft;
- }
+ }
/**
* @see org.teiid.query.processor.relational.JoinStrategy#close()
Deleted: trunk/engine/src/main/java/org/teiid/query/processor/relational/PartitionedSortJoin.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/processor/relational/PartitionedSortJoin.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/main/java/org/teiid/query/processor/relational/PartitionedSortJoin.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -1,318 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package org.teiid.query.processor.relational;
-
-import java.util.ArrayList;
-import java.util.Comparator;
-import java.util.List;
-
-import org.teiid.common.buffer.IndexedTupleSource;
-import org.teiid.common.buffer.TupleBatch;
-import org.teiid.common.buffer.TupleBuffer;
-import org.teiid.common.buffer.BufferManager.BufferReserveMode;
-import org.teiid.core.TeiidComponentException;
-import org.teiid.core.TeiidProcessingException;
-
-
-/**
- * Extends the basic fully sorted merge join to check for conditions necessary
- * to not fully sort one of the sides
- *
- * Will be used for inner joins and only if both sorts are not required.
- * Degrades to a normal merge join if the tuples are balanced.
- */
-public class PartitionedSortJoin extends MergeJoinStrategy {
-
- private List[] endTuples;
- private List<Boolean> overlap = new ArrayList<Boolean>();
- private List<Integer> endRows = new ArrayList<Integer>();
- private List<TupleBuffer> partitions = new ArrayList<TupleBuffer>();
- private int currentPartition;
- private IndexedTupleSource currentSource;
- private SourceState sortedSource;
- private SourceState partitionedSource;
- private boolean partitioned;
- private List<?> partitionedTuple;
- private int matchBegin = -1;
- private int matchEnd = -1;
- private int reserved;
-
- public PartitionedSortJoin(SortOption sortLeft, SortOption sortRight) {
- super(sortLeft, sortRight, false);
- }
-
- @Override
- public void close() {
- if (joinNode == null) {
- return;
- }
- super.close();
- for (TupleBuffer tupleSourceID : this.partitions) {
- tupleSourceID.remove();
- }
- releaseReserved();
- this.endTuples = null;
- this.overlap.clear();
- this.endRows.clear();
- this.partitions.clear();
- this.currentSource = null;
- this.sortedSource = null;
- this.partitionedSource = null;
- this.partitionedTuple = null;
- }
-
- @Override
- public void initialize(JoinNode joinNode) {
- super.initialize(joinNode);
- this.currentPartition = 0;
- this.partitioned = false;
- this.matchBegin = -1;
- this.matchEnd = -1;
- }
-
- public void computeBatchBounds(SourceState state) throws TeiidComponentException, TeiidProcessingException {
- if (endTuples != null) {
- return;
- }
- Comparator comp = new ListNestedSortComparator(state.getExpressionIndexes(), true);
- ArrayList<List<?>> bounds = new ArrayList<List<?>>();
- int beginRow = 1;
- while (beginRow <= state.getRowCount()) {
- TupleBatch batch = state.getTupleBuffer().getBatch(beginRow);
- if (batch.getRowCount() == 0) {
- break;
- }
- beginRow = batch.getEndRow() + 1;
- if (!bounds.isEmpty()) {
- overlap.add(comp.compare(bounds.get(bounds.size() - 1), batch.getTuple(batch.getBeginRow())) == 0);
- }
- bounds.add(batch.getTuple(batch.getEndRow()));
- endRows.add(batch.getEndRow());
- }
- this.endTuples = bounds.toArray(new List[bounds.size()]);
- }
-
- @Override
- protected void loadLeft() throws TeiidComponentException,
- TeiidProcessingException {
- //always buffer to determine row counts
- this.leftSource.getTupleBuffer();
- }
-
- @Override
- protected void loadRight() throws TeiidComponentException,
- TeiidProcessingException {
- this.rightSource.getTupleBuffer();
- if (processingSortRight == SortOption.SORT
- && this.leftSource.getRowCount() * 4 < this.rightSource.getRowCount()
- && testAndSetPartitions(this.rightSource.getRowCount(), this.rightSource.getSource().getOutputElements())) {
- this.processingSortRight = SortOption.PARTITION;
- } else if (processingSortLeft == SortOption.SORT
- && this.rightSource.getRowCount() * 4 < this.leftSource.getRowCount()
- && testAndSetPartitions(this.leftSource.getRowCount(), this.leftSource.getSource().getOutputElements())) {
- this.processingSortLeft = SortOption.PARTITION;
- }
- super.loadRight(); //sort right if needed
- if (this.processingSortLeft == SortOption.PARTITION) {
- computeBatchBounds(this.rightSource);
- this.sortedSource = this.rightSource;
- this.partitionedSource = this.leftSource;
- }
- super.loadLeft(); //sort left if needed
- if (this.processingSortRight == SortOption.PARTITION) {
- computeBatchBounds(this.leftSource);
- this.sortedSource = this.leftSource;
- this.partitionedSource = this.rightSource;
- }
- if (this.processingSortLeft == SortOption.PARTITION) {
- partitionSource();
- }
- if (this.processingSortRight == SortOption.PARTITION) {
- partitionSource();
- }
- }
-
- /**
- * Since the source to be partitioned is already loaded, then there's no
- * chance of a blocked exception during partitioning, so reserve some batches.
- *
- * TODO: partition at the same time as the load to determine size
- *
- * @return
- */
- private boolean testAndSetPartitions(int rowCount, List elements) {
- int partitionCount = (rowCount / this.joinNode.getBatchSize() + rowCount % this.joinNode.getBatchSize() == 0 ? 0:1)
- * this.joinNode.getBufferManager().getSchemaSize(elements);
- if (partitionCount > this.joinNode.getBufferManager().getMaxProcessingKB() * 8) {
- return false;
- }
- int toReserve = Math.max(1, (int)(partitionCount * .75));
- int excess = Math.max(0, toReserve - this.joinNode.getBufferManager().getMaxProcessingKB());
- reserved = this.joinNode.getBufferManager().reserveBuffers(toReserve - excess, BufferReserveMode.FORCE);
- if (excess > 0) {
- reserved += this.joinNode.getBufferManager().reserveBuffers(toReserve, BufferReserveMode.NO_WAIT);
- }
- if (reserved == toReserve) {
- return true;
- }
- releaseReserved();
- return false;
- }
-
- private void partitionSource() throws TeiidComponentException,
- TeiidProcessingException {
- if (partitioned) {
- return;
- }
- if (endTuples.length < 2) {
- partitions.add(this.partitionedSource.getTupleBuffer());
- } else {
- if (partitions.isEmpty()) {
- for (int i = 0; i < endTuples.length; i++) {
- TupleBuffer tc = this.partitionedSource.createSourceTupleBuffer();
- tc.setForwardOnly(true);
- this.partitions.add(tc);
- }
- }
- while (this.partitionedSource.getIterator().hasNext()) {
- List<?> tuple = this.partitionedSource.getIterator().nextTuple();
- int index = binarySearch(tuple, this.endTuples, this.partitionedSource.getExpressionIndexes(), this.sortedSource.getExpressionIndexes());
- if (index < 0) {
- index = -index - 1;
- }
- if (index > this.partitions.size() -1) {
- continue;
- }
- while (index > 0 && this.overlap.get(index - 1)
- && compare(tuple, this.endTuples[index - 1], this.partitionedSource.getExpressionIndexes(), this.sortedSource.getExpressionIndexes()) == 0) {
- index--;
- }
- this.partitions.get(index).addTuple(tuple);
- }
- for (TupleBuffer partition : this.partitions) {
- partition.close();
- }
- releaseReserved();
- }
- partitioned = true;
- }
-
- private void releaseReserved() {
- this.joinNode.getBufferManager().releaseBuffers(this.reserved);
- this.reserved = 0;
- }
-
- @Override
- protected void process() throws TeiidComponentException,
- TeiidProcessingException {
- if (this.processingSortLeft != SortOption.PARTITION && this.processingSortRight != SortOption.PARTITION) {
- super.process();
- }
- if (endRows.isEmpty()) {
- return; //no rows on the sorted side
- }
- while (currentPartition < partitions.size()) {
- if (currentSource == null) {
- currentSource = partitions.get(currentPartition).createIndexedTupleSource();
- }
-
- int beginIndex = currentPartition>0?endRows.get(currentPartition - 1)+1:1;
-
- List[] batch = this.sortedSource.getTupleBuffer().getBatch(beginIndex).getAllTuples();
-
- while (partitionedTuple != null || currentSource.hasNext()) {
- if (partitionedTuple == null) {
- partitionedTuple = currentSource.nextTuple();
- int index = binarySearch(partitionedTuple, batch, this.partitionedSource.getExpressionIndexes(), this.sortedSource.getExpressionIndexes());
- if (index < 0) {
- partitionedTuple = null;
- continue;
- }
- matchBegin = index;
- matchEnd = index;
- if (!this.sortedSource.isDistinct()) {
- while (matchBegin > 0) {
- if (compare(partitionedTuple, batch[matchBegin - 1], this.partitionedSource.getExpressionIndexes(), this.sortedSource.getExpressionIndexes()) != 0) {
- break;
- }
- matchBegin--;
- }
- while (matchEnd < batch.length - 1) {
- if (compare(partitionedTuple, batch[matchEnd + 1], this.partitionedSource.getExpressionIndexes(), this.sortedSource.getExpressionIndexes()) != 0) {
- break;
- }
- matchEnd++;
- }
- }
- if (matchEnd == batch.length - 1 && currentPartition < overlap.size() && overlap.get(currentPartition)) {
- this.partitions.get(currentPartition + 1).addTuple(partitionedTuple);
- }
- }
- while (matchBegin <= matchEnd) {
- List outputTuple = outputTuple(this.processingSortLeft==SortOption.PARTITION?partitionedTuple:batch[matchBegin],
- this.processingSortLeft==SortOption.PARTITION?batch[matchBegin]:partitionedTuple);
- boolean matches = this.joinNode.matchesCriteria(outputTuple);
- matchBegin++;
- if (matches) {
- this.joinNode.addBatchRow(outputTuple);
- }
- }
- matchBegin = -1;
- matchEnd = -1;
- partitionedTuple = null;
- }
- currentSource.closeSource();
- currentSource = null;
- currentPartition++;
- }
- }
-
- public int binarySearch(List<?> tuple, List[] tuples, int[] leftIndexes, int[] rightIndexes) {
- int begin = 0;
- int end = tuples.length - 1;
- while (begin <= end) {
- int mid = (begin + end)/2;
- int compare = compare(tuples[mid], tuple, rightIndexes, leftIndexes);
- if (compare == 0) {
- return mid;
- }
- if (compare < 0) {
- end = mid - 1;
- } else {
- begin = mid + 1;
- }
- }
- return -begin -1;
- }
-
- @Override
- public PartitionedSortJoin clone() {
- return new PartitionedSortJoin(this.sortLeft, this.sortRight);
- }
-
- @Override
- public String getName() {
- return "PARTITIONED SORT JOIN"; //$NON-NLS-1$
- }
-
-}
Modified: trunk/engine/src/main/java/org/teiid/query/processor/relational/RelationalNode.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/processor/relational/RelationalNode.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/main/java/org/teiid/query/processor/relational/RelationalNode.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -371,9 +371,9 @@
return result;
}
- public static List<?> projectTuple(int[] indexes, List<?> tupleValues) {
+ public static <T> List<T> projectTuple(int[] indexes, List<T> tupleValues) {
- List<Object> projectedTuple = new ArrayList<Object>(indexes.length);
+ List<T> projectedTuple = new ArrayList<T>(indexes.length);
for (int index : indexes) {
projectedTuple.add(tupleValues.get(index));
Modified: trunk/engine/src/main/java/org/teiid/query/processor/relational/SortUtility.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/processor/relational/SortUtility.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/main/java/org/teiid/query/processor/relational/SortUtility.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -176,6 +176,16 @@
}
return this.activeTupleBuffers.get(0);
}
+
+ public List<TupleBuffer> onePassSort() throws TeiidComponentException, TeiidProcessingException {
+ assert this.mode != Mode.DUP_REMOVE;
+
+ if(this.phase == INITIAL_SORT) {
+ initialSort();
+ }
+
+ return activeTupleBuffers;
+ }
private TupleBuffer createTupleBuffer() throws TeiidComponentException {
TupleBuffer tb = bufferManager.createTupleBuffer(this.schema, this.groupName, TupleSourceType.PROCESSOR);
Modified: trunk/engine/src/main/java/org/teiid/query/processor/relational/SourceState.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/processor/relational/SourceState.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/main/java/org/teiid/query/processor/relational/SourceState.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -48,6 +48,7 @@
private List expressions;
private BatchCollector collector;
private TupleBuffer buffer;
+ private List<TupleBuffer> buffers;
private List<Object> outerVals;
private IndexedTupleSource iterator;
private int[] expressionIndexes;
@@ -75,7 +76,7 @@
this.implicitBuffer = implicitBuffer;
}
- private int[] getExpressionIndecies(List expressions,
+ static int[] getExpressionIndecies(List expressions,
List elements) {
if (expressions == null) {
return new int[0];
@@ -104,7 +105,14 @@
}
public void close() {
- if (this.buffer != null) {
+ while (nextBuffer()) {
+ //do nothing
+ }
+ this.open = false;
+ }
+
+ private void closeBuffer() {
+ if (this.buffer != null) {
this.buffer.remove();
this.buffer = null;
}
@@ -113,8 +121,7 @@
this.iterator = null;
}
this.currentTuple = null;
- this.open = false;
- }
+ }
public int getRowCount() throws TeiidComponentException, TeiidProcessingException {
return this.getTupleBuffer().getRowCount();
@@ -178,22 +185,58 @@
}
public void sort(SortOption sortOption) throws TeiidComponentException, TeiidProcessingException {
- if (sortOption == SortOption.SORT || sortOption == SortOption.SORT_DISTINCT) {
- if (this.sortUtility == null) {
- TupleSource ts = null;
- if (this.buffer != null) {
- this.buffer.setForwardOnly(true);
- ts = this.buffer.createIndexedTupleSource();
- } else {
- ts = new BatchIterator(this.source);
- }
- this.sortUtility = new SortUtility(ts, expressions, Collections.nCopies(expressions.size(), OrderBy.ASC),
- sortOption == SortOption.SORT_DISTINCT?Mode.DUP_REMOVE_SORT:Mode.SORT, this.source.getBufferManager(), this.source.getConnectionID(), source.getElements());
- this.markDistinct(sortOption == SortOption.SORT_DISTINCT && expressions.size() == this.getOuterVals().size());
- }
- this.buffer = sortUtility.sort();
- this.markDistinct(sortUtility.isDistinct());
+ if (sortOption == SortOption.ALREADY_SORTED) {
+ return;
}
+ if (this.sortUtility == null) {
+ TupleSource ts = null;
+ if (this.buffer != null) {
+ this.buffer.setForwardOnly(true);
+ ts = this.buffer.createIndexedTupleSource();
+ } else {
+ ts = new BatchIterator(this.source);
+ }
+ this.sortUtility = new SortUtility(ts, expressions, Collections.nCopies(expressions.size(), OrderBy.ASC),
+ sortOption == SortOption.SORT_DISTINCT?Mode.DUP_REMOVE_SORT:Mode.SORT, this.source.getBufferManager(), this.source.getConnectionID(), source.getElements());
+ this.markDistinct(sortOption == SortOption.SORT_DISTINCT && expressions.size() == this.getOuterVals().size());
+ }
+ if (sortOption == SortOption.NOT_SORTED) {
+ this.buffers = sortUtility.onePassSort();
+ if (this.buffers.size() == 1) {
+ this.markDistinct(sortUtility.isDistinct());
+ }
+ nextBuffer();
+ return;
+ }
+ this.buffer = sortUtility.sort();
+ this.markDistinct(sortUtility.isDistinct());
}
+
+ public boolean hasBuffer() {
+ return this.buffer != null;
+ }
+
+ public boolean nextBuffer() {
+ this.closeBuffer();
+ if (this.buffers == null || this.buffers.isEmpty()) {
+ return false;
+ }
+ this.buffer = this.buffers.remove(this.buffers.size() - 1);
+ this.buffer.setForwardOnly(false);
+ this.resetState();
+ return true;
+ }
+ /**
+ * return the iterator to a fresh state
+ */
+ public void resetState() {
+ if (this.iterator != null) {
+ this.iterator.reset();
+ this.iterator.setPosition(1);
+ }
+ this.currentTuple = null;
+ this.maxProbeMatch = 1;
+ }
+
}
Modified: trunk/engine/src/main/java/org/teiid/query/tempdata/TempTable.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/tempdata/TempTable.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/main/java/org/teiid/query/tempdata/TempTable.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -345,10 +345,11 @@
//TODO: ordered insert optimization
TupleSource ts = createTupleSource(allColumns, null, null);
indexTable.insert(ts, allColumns);
+ indexTable.getTree().compact();
}
private int reserveBuffers() {
- return bm.reserveBuffers(leafBatchSize + (tree.getHeight() - 1)*keyBatchSize, BufferReserveMode.WAIT);
+ return bm.reserveBuffers(leafBatchSize + (tree.getHeight() - 1)*keyBatchSize, BufferReserveMode.FORCE);
}
public TupleSource createTupleSource(final List<? extends SingleElementSymbol> projectedCols, final Criteria condition, OrderBy orderBy) throws TeiidComponentException, TeiidProcessingException {
@@ -612,7 +613,7 @@
}
private void insertTuple(List<?> list, boolean ordered) throws TeiidComponentException, TeiidProcessingException {
- if (tree.insert(list, ordered?InsertMode.ORDERED:InsertMode.NEW) != null) {
+ if (tree.insert(list, ordered?InsertMode.ORDERED:InsertMode.NEW, -1) != null) {
throw new TeiidProcessingException(QueryPlugin.Util.getString("TempTable.duplicate_key")); //$NON-NLS-1$
}
}
@@ -639,11 +640,11 @@
}
return result;
}
- List<?> result = tree.insert(tuple, InsertMode.UPDATE);
+ List<?> result = tree.insert(tuple, InsertMode.UPDATE, -1);
if (indexTables != null) {
for (TempTable index : this.indexTables.values()) {
tuple = RelationalNode.projectTuple(RelationalNode.getProjectionIndexes(index.getColumnMap(), index.columns), tuple);
- index.tree.insert(tuple, InsertMode.UPDATE);
+ index.tree.insert(tuple, InsertMode.UPDATE, -1);
}
}
return result;
@@ -653,7 +654,7 @@
}
private void updateTuple(List<?> tuple) throws TeiidComponentException {
- if (tree.insert(tuple, InsertMode.UPDATE) == null) {
+ if (tree.insert(tuple, InsertMode.UPDATE, -1) == null) {
throw new AssertionError("Update failed"); //$NON-NLS-1$
}
}
Modified: trunk/engine/src/main/java/org/teiid/query/tempdata/TempTableDataManager.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/tempdata/TempTableDataManager.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/main/java/org/teiid/query/tempdata/TempTableDataManager.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -519,6 +519,7 @@
//TODO: if this insert fails, it's unnecessary to do the undo processing
table.insert(ts, variables);
+ table.getTree().compact();
rowCount = table.getRowCount();
//TODO: could pre-process indexes to remove overlap
for (Object index : metadata.getIndexesInGroup(group.getMetadataID())) {
Modified: trunk/engine/src/test/java/org/teiid/common/buffer/TestSTree.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/common/buffer/TestSTree.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/test/java/org/teiid/common/buffer/TestSTree.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -29,6 +29,7 @@
import org.junit.Test;
import org.teiid.common.buffer.STree.InsertMode;
+import org.teiid.common.buffer.impl.BufferManagerImpl;
import org.teiid.core.TeiidComponentException;
import org.teiid.query.sql.symbol.ElementSymbol;
@@ -45,7 +46,7 @@
STree map = bm.createSTree(elements, "1", 1);
for (int i = 20000; i > 0; i--) {
- assertNull(map.insert(Arrays.asList(i, String.valueOf(i)), InsertMode.NEW));
+ assertNull(map.insert(Arrays.asList(i, String.valueOf(i)), InsertMode.NEW, -1));
assertEquals(20000 - i + 1, map.getRowCount());
}
@@ -54,7 +55,31 @@
}
assertEquals(0, map.getRowCount());
- assertNull(map.insert(Arrays.asList(1, String.valueOf(1)), InsertMode.NEW));
+ assertNull(map.insert(Arrays.asList(1, String.valueOf(1)), InsertMode.NEW, -1));
}
+ @Test public void testOrderedInsert() throws TeiidComponentException {
+ BufferManagerImpl bm = BufferManagerFactory.createBufferManager();
+ bm.setProcessorBatchSize(16);
+
+ ElementSymbol e1 = new ElementSymbol("x");
+ e1.setType(Integer.class);
+ List elements = Arrays.asList(e1);
+ STree map = bm.createSTree(elements, "1", 1);
+
+ int size = (1<<16)+(1<<4)+1;
+
+ for (int i = 0; i < size; i++) {
+ assertNull(map.insert(Arrays.asList(i), InsertMode.ORDERED, size));
+ assertEquals(i + 1, map.getRowCount());
+ }
+
+ assertEquals(4, map.getHeight());
+
+ for (int i = 0; i < size; i++) {
+ assertNotNull(map.remove(Arrays.asList(i)));
+ }
+
+ }
+
}
Modified: trunk/engine/src/test/java/org/teiid/query/optimizer/TestOptimizer.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/optimizer/TestOptimizer.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/test/java/org/teiid/query/optimizer/TestOptimizer.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -63,7 +63,7 @@
import org.teiid.query.processor.relational.NestedLoopJoinStrategy;
import org.teiid.query.processor.relational.NestedTableJoinStrategy;
import org.teiid.query.processor.relational.NullNode;
-import org.teiid.query.processor.relational.PartitionedSortJoin;
+import org.teiid.query.processor.relational.EnhancedSortMergeJoinStrategy;
import org.teiid.query.processor.relational.PlanExecutionNode;
import org.teiid.query.processor.relational.ProjectIntoNode;
import org.teiid.query.processor.relational.ProjectNode;
@@ -396,8 +396,8 @@
updateCounts(NestedLoopJoinStrategy.class, counts, types);
} else if (strategy instanceof MergeJoinStrategy) {
updateCounts(MergeJoinStrategy.class, counts, types);
- if (strategy instanceof PartitionedSortJoin) {
- updateCounts(PartitionedSortJoin.class, counts, types);
+ if (strategy instanceof EnhancedSortMergeJoinStrategy) {
+ updateCounts(EnhancedSortMergeJoinStrategy.class, counts, types);
}
} else if (strategy instanceof NestedTableJoinStrategy) {
updateCounts(NestedTableJoinStrategy.class, counts, types);
Modified: trunk/engine/src/test/java/org/teiid/query/optimizer/TestPartitionedJoinPlanning.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/optimizer/TestPartitionedJoinPlanning.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/test/java/org/teiid/query/optimizer/TestPartitionedJoinPlanning.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -31,7 +31,7 @@
import org.teiid.query.optimizer.capabilities.FakeCapabilitiesFinder;
import org.teiid.query.optimizer.capabilities.SourceCapabilities.Capability;
import org.teiid.query.processor.ProcessorPlan;
-import org.teiid.query.processor.relational.PartitionedSortJoin;
+import org.teiid.query.processor.relational.EnhancedSortMergeJoinStrategy;
import org.teiid.query.unittest.FakeMetadataFacade;
import org.teiid.query.unittest.FakeMetadataFactory;
import org.teiid.query.unittest.FakeMetadataObject;
@@ -76,7 +76,7 @@
0, // Sort
0 // UnionAll
});
- checkNodeTypes(plan, new int[] {1}, new Class[] {PartitionedSortJoin.class});
+ checkNodeTypes(plan, new int[] {1}, new Class[] {EnhancedSortMergeJoinStrategy.class});
}
Modified: trunk/engine/src/test/java/org/teiid/query/processor/TestTempTables.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/processor/TestTempTables.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/test/java/org/teiid/query/processor/TestTempTables.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -309,6 +309,12 @@
TestOptimizer.helpPlan("select * from x, x1 where x.e2 = x1.e2 and x.e1 = x1.e1", this.metadata, new String[] {"SELECT x1.e2, x1.e1 FROM x1 ORDER BY x1.e1, x1.e2", "SELECT x.e2, x.e1 FROM x ORDER BY x.e1, x.e2"}, ComparisonMode.EXACT_COMMAND_STRING);
}
+ @Test public void testUnneededMergePredicate() throws Exception {
+ execute("create local temporary table x (e1 string, e2 integer, primary key (e1))", new List[] {Arrays.asList(0)}); //$NON-NLS-1$
+ execute("create local temporary table x1 (e1 string, e2 integer)", new List[] {Arrays.asList(0)}); //$NON-NLS-1$
+ TestOptimizer.helpPlan("select x.e1 from x, x1 where x.e2 = x1.e2 and x.e1 = x1.e1", this.metadata, new String[] {"SELECT x.e2, x.e1 FROM x ORDER BY x.e1", "SELECT x1.e2, x1.e1 FROM x1 ORDER BY x1.e1"}, ComparisonMode.EXACT_COMMAND_STRING);
+ }
+
private void sampleTable() throws Exception {
execute("create local temporary table x (e1 string, e2 integer, primary key (e1, e2))", new List[] {Arrays.asList(0)}); //$NON-NLS-1$
execute("insert into x (e2, e1) values (3, 'b')", new List[] {Arrays.asList(1)}); //$NON-NLS-1$
Modified: trunk/engine/src/test/java/org/teiid/query/processor/TestVirtualDepJoin.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/processor/TestVirtualDepJoin.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/test/java/org/teiid/query/processor/TestVirtualDepJoin.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -580,12 +580,11 @@
elementIDs = metadata.getElementIDsInGroupID(groupID);
elementSymbols = FakeDataStore.createElements(elementIDs);
- TimestampUtil ts = new TimestampUtil();
dataMgr.registerTuples(groupID, elementSymbols,
new List[] {
- Arrays.asList(new Object[] { new Long(100), "Miles", "Davis", ts.createDate(1926, 4, 25) }), //$NON-NLS-1$ //$NON-NLS-2$
- Arrays.asList(new Object[] { new Long(200), "John", "Coltrane", ts.createDate(1926, 8, 23) }), //$NON-NLS-1$ //$NON-NLS-2$
- Arrays.asList(new Object[] { new Long(300), "Thelonious", "Monk", ts.createDate(1917, 9, 10) }), //$NON-NLS-1$ //$NON-NLS-2$
+ Arrays.asList(new Object[] { new Long(100), "Miles", "Davis", TimestampUtil.createDate(1926, 4, 25) }), //$NON-NLS-1$ //$NON-NLS-2$
+ Arrays.asList(new Object[] { new Long(200), "John", "Coltrane", TimestampUtil.createDate(1926, 8, 23) }), //$NON-NLS-1$ //$NON-NLS-2$
+ Arrays.asList(new Object[] { new Long(300), "Thelonious", "Monk", TimestampUtil.createDate(1917, 9, 10) }), //$NON-NLS-1$ //$NON-NLS-2$
} );
// Group CustomerMaster.Locations
Modified: trunk/engine/src/test/java/org/teiid/query/processor/relational/NodeTestUtil.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/processor/relational/NodeTestUtil.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/test/java/org/teiid/query/processor/relational/NodeTestUtil.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -22,16 +22,12 @@
package org.teiid.query.processor.relational;
-import java.util.Properties;
-
import org.teiid.common.buffer.BufferManager;
import org.teiid.common.buffer.StorageManager;
import org.teiid.common.buffer.impl.BufferManagerImpl;
import org.teiid.common.buffer.impl.MemoryStorageManager;
import org.teiid.core.TeiidComponentException;
-
-
/**
* @since 4.2
*/
@@ -41,6 +37,8 @@
BufferManagerImpl bufferManager = new BufferManagerImpl();
bufferManager.setProcessorBatchSize(procBatchSize);
bufferManager.setConnectorBatchSize(connectorBatchSize);
+ bufferManager.setMaxProcessingBatchColumns((int)(bytesAvailable/procBatchSize/BufferManagerImpl.KB_PER_VALUE/1024));
+ bufferManager.setMaxReserveBatchColumns((int)(bytesAvailable/procBatchSize/BufferManagerImpl.KB_PER_VALUE/1024));
// Get the properties for BufferManager
return createBufferManager(bufferManager);
}
@@ -48,6 +46,8 @@
static BufferManager getTestBufferManager(long bytesAvailable, int procBatchSize) {
BufferManagerImpl bufferManager = new BufferManagerImpl();
bufferManager.setProcessorBatchSize(procBatchSize);
+ bufferManager.setMaxProcessingBatchColumns((int)(bytesAvailable/procBatchSize/BufferManagerImpl.KB_PER_VALUE/1024));
+ bufferManager.setMaxReserveBatchColumns((int)(bytesAvailable/procBatchSize/BufferManagerImpl.KB_PER_VALUE/1024));
// Get the properties for BufferManager
return createBufferManager(bufferManager);
}
Modified: trunk/engine/src/test/java/org/teiid/query/processor/relational/TestJoinNode.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/processor/relational/TestJoinNode.java 2011-03-31 04:11:52 UTC (rev 3050)
+++ trunk/engine/src/test/java/org/teiid/query/processor/relational/TestJoinNode.java 2011-04-02 11:57:44 UTC (rev 3051)
@@ -22,7 +22,7 @@
package org.teiid.query.processor.relational;
-import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.*;
import java.util.ArrayList;
import java.util.Arrays;
@@ -50,7 +50,7 @@
import org.teiid.query.unittest.FakeMetadataFactory;
import org.teiid.query.util.CommandContext;
-
+@SuppressWarnings("unchecked")
public class TestJoinNode {
private static final int NO_CRITERIA = 0;
private static final int EQUAL_CRITERIA = 1;
@@ -218,20 +218,20 @@
if (batchSize == 0) {
continue;
}
- helpTestJoinDirect(expected, batchSize);
+ helpTestJoinDirect(expected, batchSize, 100000);
List[] temp = leftTuples;
leftTuples = rightTuples;
rightTuples = temp;
helpCreateJoin();
- helpTestJoinDirect(expectedReversed, batchSize);
+ helpTestJoinDirect(expectedReversed, batchSize, 100000);
temp = leftTuples;
leftTuples = rightTuples;
rightTuples = temp;
}
}
- public void helpTestJoinDirect(List[] expectedResults, int batchSize) throws TeiidComponentException, TeiidProcessingException {
- BufferManager mgr = NodeTestUtil.getTestBufferManager(1, batchSize);
+ public void helpTestJoinDirect(List[] expectedResults, int batchSize, int processingBytes) throws TeiidComponentException, TeiidProcessingException {
+ BufferManager mgr = NodeTestUtil.getTestBufferManager(processingBytes, batchSize);
CommandContext context = new CommandContext("pid", "test", null, null, 1); //$NON-NLS-1$ //$NON-NLS-2$
join.addChild(leftNode);
@@ -630,9 +630,9 @@
Arrays.asList(new Object[] { 4, 4 }),
};
helpCreateJoin();
- this.joinStrategy = new PartitionedSortJoin(SortOption.SORT, SortOption.SORT);
+ this.joinStrategy = new EnhancedSortMergeJoinStrategy(SortOption.SORT, SortOption.SORT);
this.join.setJoinStrategy(joinStrategy);
- helpTestJoinDirect(expected, 100);
+ helpTestJoinDirect(expected, 100, 1);
}
@Test public void testMergeJoinOptimizationNoRows() throws Exception {
@@ -641,9 +641,9 @@
this.rightTuples = new List[] {};
expected = new List[] {};
helpCreateJoin();
- this.joinStrategy = new PartitionedSortJoin(SortOption.SORT, SortOption.SORT);
+ this.joinStrategy = new EnhancedSortMergeJoinStrategy(SortOption.SORT, SortOption.SORT);
this.join.setJoinStrategy(joinStrategy);
- helpTestJoinDirect(expected, 100);
+ helpTestJoinDirect(expected, 100, 1);
}
@Test public void testMergeJoinOptimizationWithDistinct() throws Exception {
@@ -673,51 +673,94 @@
Arrays.asList(new Object[] { 1, 1 })
};
helpCreateJoin();
- this.joinStrategy = new PartitionedSortJoin(SortOption.SORT, SortOption.SORT);
+ this.joinStrategy = new EnhancedSortMergeJoinStrategy(SortOption.SORT, SortOption.SORT);
this.join.setJoinStrategy(joinStrategy);
- this.join.setRightDistinct(true);
- helpTestJoinDirect(expected, 100);
+ //this.join.setRightDistinct(true);
+ helpTestJoinDirect(expected, 100, 1);
}
- @Test public void testMergeJoinOptimizationWithMultiplePartitions() throws Exception {
+ @Test public void testMergeJoinOptimizationWithDistinctAlreadySorted() throws Exception {
this.joinType = JoinType.JOIN_INNER;
- int rows = 30;
+ int rows = 50;
List[] data = new List[rows];
for(int i=0; i<rows; i++) {
data[i] = new ArrayList();
- Integer value = new Integer(i % 17);
+ Integer value = new Integer((i*17) % 47);
data[i].add(value);
}
- this.rightTuples = data;
- this.leftTuples = new List[] {
+ this.leftTuples = data;
+ this.rightTuples = new List[] {
+ Arrays.asList(1),
+ Arrays.asList(2),
Arrays.asList(4),
+ Arrays.asList(6),
Arrays.asList(7),
- Arrays.asList(2),
- Arrays.asList(6),
- Arrays.asList(6),
- Arrays.asList(1),
Arrays.asList(8),
};
expected = new List[] {
- Arrays.asList(new Object[] { 1, 1 }),
- Arrays.asList(new Object[] { 2, 2 }),
Arrays.asList(new Object[] { 4, 4 }),
- Arrays.asList(new Object[] { 6, 6 }),
- Arrays.asList(new Object[] { 1, 1 }),
- Arrays.asList(new Object[] { 2, 2 }),
- Arrays.asList(new Object[] { 4, 4 }),
- Arrays.asList(new Object[] { 6, 6 }),
- Arrays.asList(new Object[] { 7, 7 }),
Arrays.asList(new Object[] { 8, 8 }),
Arrays.asList(new Object[] { 7, 7 }),
- Arrays.asList(new Object[] { 8, 8 }),
+ Arrays.asList(new Object[] { 2, 2 }),
Arrays.asList(new Object[] { 6, 6 }),
- Arrays.asList(new Object[] { 6, 6 }),
+ Arrays.asList(new Object[] { 1, 1 })
};
helpCreateJoin();
- this.joinStrategy = new PartitionedSortJoin(SortOption.SORT, SortOption.SORT);
+ this.joinStrategy = new EnhancedSortMergeJoinStrategy(SortOption.SORT, SortOption.ALREADY_SORTED);
this.join.setJoinStrategy(joinStrategy);
- helpTestJoinDirect(expected, 4);
+ helpTestJoinDirect(expected, 100, 1);
}
+ @Test public void testRepeatedMerge() throws Exception {
+ helpTestRepeatedMerge(false);
+ }
+
+ @Test public void testRepeatedMergeWithDistinct() throws Exception {
+ helpTestRepeatedMerge(true);
+ }
+
+ public void helpTestRepeatedMerge(boolean indexDistinct) throws Exception {
+ this.joinType = JoinType.JOIN_INNER;
+ int rows = 69;
+ List[] data = new List[rows];
+ for(int i=0; i<rows; i++) {
+ data[i]=Arrays.asList((i*17) % 91);
+ }
+ if (indexDistinct) {
+ data[2] = Arrays.asList(0);
+ }
+ data[6] = Arrays.asList((Integer)null);
+ this.rightTuples = data;
+ this.leftTuples = new List[17];
+ for (int i = 0; i < this.leftTuples.length; i++) {
+ this.leftTuples[i] = Arrays.asList(i);
+ }
+ if (!indexDistinct) {
+ this.leftTuples[1] = Arrays.asList(0);
+ }
+ this.leftTuples[11] = Arrays.asList((Integer)null);
+
+ expected = new List[] {
+ Arrays.asList(13, 13),
+ Arrays.asList(2, 2),
+ Arrays.asList(8, 8),
+ Arrays.asList(14, 14),
+ Arrays.asList(3, 3),
+ Arrays.asList(9, 9),
+ Arrays.asList(15, 15),
+ Arrays.asList(4, 4),
+ Arrays.asList(10, 10),
+ Arrays.asList(16, 16),
+ Arrays.asList(5, 5),
+ Arrays.asList(0, 0),
+ Arrays.asList(0, 0),
+ };
+ helpCreateJoin();
+ EnhancedSortMergeJoinStrategy psj = new EnhancedSortMergeJoinStrategy(SortOption.SORT, SortOption.SORT);
+ psj.setPreferMemCutoff(1);
+ this.joinStrategy = psj;
+ this.join.setJoinStrategy(joinStrategy);
+ helpTestJoinDirect(expected, 4, 1000);
+ }
+
}
13 years, 9 months