This is an automated email from the ASF dual-hosted git repository. stoty pushed a commit to branch 4.x in repository https://gitbox.apache.org/repos/asf/phoenix.git
The following commit(s) were added to refs/heads/4.x by this push: new dd9b8af PHOENIX-6493 MetaData schemaPattern handling errors dd9b8af is described below commit dd9b8af2b5f612c1f26d3f4af699117c45c2d82b Author: Istvan Toth <st...@apache.org> AuthorDate: Wed Jun 16 10:51:44 2021 +0200 PHOENIX-6493 MetaData schemaPattern handling errors --- .../it/java/org/apache/phoenix/end2end/QueryDatabaseMetaDataIT.java | 6 ++++++ phoenix-core/src/main/java/org/apache/phoenix/util/QueryUtil.java | 6 ++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/QueryDatabaseMetaDataIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/QueryDatabaseMetaDataIT.java index 0fe0bed..cacdba6 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/QueryDatabaseMetaDataIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/QueryDatabaseMetaDataIT.java @@ -426,6 +426,12 @@ public class QueryDatabaseMetaDataIT extends ParallelStatsDisabledIT { assertEquals(rs.getString(2), null); assertFalse(rs.next()); + rs = dbmd.getSchemas(null, ""); + assertTrue(rs.next()); + assertEquals(rs.getString(1), null); + assertEquals(rs.getString(2), null); + assertFalse(rs.next()); + rs = dbmd.getSchemas(null, null); assertTrue(rs.next()); assertEquals(null, rs.getString("TABLE_SCHEM")); diff --git a/phoenix-core/src/main/java/org/apache/phoenix/util/QueryUtil.java b/phoenix-core/src/main/java/org/apache/phoenix/util/QueryUtil.java index 4acf10a..749b601 100644 --- a/phoenix-core/src/main/java/org/apache/phoenix/util/QueryUtil.java +++ b/phoenix-core/src/main/java/org/apache/phoenix/util/QueryUtil.java @@ -545,8 +545,10 @@ public final class QueryUtil { " where " + COLUMN_NAME + " is null"); addTenantIdFilter(connection, buf, catalog, parameterValues); if (schemaPattern != null) { - buf.append(" and " + TABLE_SCHEM + " like ?"); - parameterValues.add(schemaPattern); + buf.append(" and " + TABLE_SCHEM + (schemaPattern.length() == 0 ? " is null" : " like ?")); + if(schemaPattern.length() > 0) { + parameterValues.add(schemaPattern); + } } if (SchemaUtil.isNamespaceMappingEnabled(null, connection.getQueryServices().getProps())) { buf.append(" and " + TABLE_NAME + " = '" + MetaDataClient.EMPTY_TABLE + "'");