This is an automated email from the ASF dual-hosted git repository.
zhangliang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new f6c4d4c4856 add POLYGON metadata (#18665)
f6c4d4c4856 is described below
commit f6c4d4c4856516e56139abdbdf857631b53ad7be
Author: Yao He <[email protected]>
AuthorDate: Thu Jun 30 09:21:48 2022 +0800
add POLYGON metadata (#18665)
* add POLYGON metadata
* add POINT metadata
---
.../loader/dialect/MySQLSchemaMetaDataLoader.java | 8 +++++---
.../loader/dialect/MySQLSchemaMetaDataLoaderTest.java | 17 ++++++++++-------
2 files changed, 15 insertions(+), 10 deletions(-)
diff --git
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/loader/dialect/MySQLSchemaMetaDataLoader.java
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/loader/dialect/MySQLSchemaMetaDataLoader.java
index 803eda7554a..fda6f27e3d2 100644
---
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/loader/dialect/MySQLSchemaMetaDataLoader.java
+++
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/loader/dialect/MySQLSchemaMetaDataLoader.java
@@ -125,9 +125,11 @@ public final class MySQLSchemaMetaDataLoader implements
DialectSchemaMetaDataLoa
dataTypes.putIfAbsent("JSON", Types.LONGVARCHAR);
dataTypes.putIfAbsent("GEOMETRY", Types.BINARY);
dataTypes.putIfAbsent("YEAR", Types.DATE);
- dataTypes.putIfAbsent("MULTIPOINT", -2);
- dataTypes.putIfAbsent("MULTIPOLYGON", -2);
- dataTypes.putIfAbsent("MULTILINESTRING", -2);
+ dataTypes.putIfAbsent("POINT", Types.BINARY);
+ dataTypes.putIfAbsent("MULTIPOINT", Types.BINARY);
+ dataTypes.putIfAbsent("POLYGON", Types.BINARY);
+ dataTypes.putIfAbsent("MULTIPOLYGON", Types.BINARY);
+ dataTypes.putIfAbsent("MULTILINESTRING", Types.BINARY);
}
private ColumnMetaData loadColumnMetaData(final Map<String, Integer>
dataTypeMap, final ResultSet resultSet) throws SQLException {
diff --git
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/loader/dialect/MySQLSchemaMetaDataLoaderTest.java
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/loader/dialect/MySQLSchemaMetaDataLoaderTest.java
index d9447e3c95d..fc602f10c33 100644
---
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/loader/dialect/MySQLSchemaMetaDataLoaderTest.java
+++
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/loader/dialect/MySQLSchemaMetaDataLoaderTest.java
@@ -88,12 +88,12 @@ public final class MySQLSchemaMetaDataLoaderTest {
private ResultSet mockTableMetaDataResultSet() throws SQLException {
ResultSet result = mock(ResultSet.class);
- when(result.next()).thenReturn(true, true, true, true, true, true,
false);
+ when(result.next()).thenReturn(true, true, true, true, true, true,
true, true, true, false);
when(result.getString("TABLE_NAME")).thenReturn("tbl");
- when(result.getString("COLUMN_NAME")).thenReturn("id", "name", "doc",
"geo", "t_year", "mp");
- when(result.getString("DATA_TYPE")).thenReturn("int", "varchar",
"json", "geometry", "year", "multipolygon");
- when(result.getString("COLUMN_KEY")).thenReturn("PRI", "", "", "", "",
"");
- when(result.getString("EXTRA")).thenReturn("auto_increment", "", "",
"", "", "");
+ when(result.getString("COLUMN_NAME")).thenReturn("id", "name", "doc",
"geo", "t_year", "pg", "mpg", "pt", "mpt");
+ when(result.getString("DATA_TYPE")).thenReturn("int", "varchar",
"json", "geometry", "year", "polygon", "multipolygon", "point", "multipoint");
+ when(result.getString("COLUMN_KEY")).thenReturn("PRI", "", "", "", "",
"", "", "", "");
+ when(result.getString("EXTRA")).thenReturn("auto_increment", "", "",
"", "", "", "", "", "");
when(result.getString("COLLATION_NAME")).thenReturn("utf8",
"utf8_general_ci");
return result;
}
@@ -115,14 +115,17 @@ public final class MySQLSchemaMetaDataLoaderTest {
private void assertTableMetaDataMap(final Collection<SchemaMetaData>
schemaMetaDataList) {
assertThat(schemaMetaDataList.size(), is(1));
TableMetaData actualTableMetaData =
schemaMetaDataList.iterator().next().getTables().iterator().next();
- assertThat(actualTableMetaData.getColumns().size(), is(6));
+ assertThat(actualTableMetaData.getColumns().size(), is(9));
Iterator<ColumnMetaData> columnsIterator =
actualTableMetaData.getColumns().iterator();
assertThat(columnsIterator.next(), is(new ColumnMetaData("id", 4,
true, true, true)));
assertThat(columnsIterator.next(), is(new ColumnMetaData("name", 12,
false, false, false)));
assertThat(columnsIterator.next(), is(new ColumnMetaData("doc", -1,
false, false, false)));
assertThat(columnsIterator.next(), is(new ColumnMetaData("geo", -2,
false, false, false)));
assertThat(columnsIterator.next(), is(new ColumnMetaData("t_year", 91,
false, false, false)));
- assertThat(columnsIterator.next(), is(new ColumnMetaData("mp", -2,
false, false, false)));
+ assertThat(columnsIterator.next(), is(new ColumnMetaData("pg", -2,
false, false, false)));
+ assertThat(columnsIterator.next(), is(new ColumnMetaData("mpg", -2,
false, false, false)));
+ assertThat(columnsIterator.next(), is(new ColumnMetaData("pt", -2,
false, false, false)));
+ assertThat(columnsIterator.next(), is(new ColumnMetaData("mpt", -2,
false, false, false)));
assertThat(actualTableMetaData.getIndexes().size(), is(1));
Iterator<IndexMetaData> indexesIterator =
actualTableMetaData.getIndexes().iterator();
assertThat(indexesIterator.next(), is(new IndexMetaData("id")));