This is an automated email from the ASF dual-hosted git repository.
amoghj pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iceberg.git
The following commit(s) were added to refs/heads/main by this push:
new 228fc9b41f Core: Fix namespace SQL statement using ESCAPE character
that works with MySQL/PostgreSQL (#10167)
228fc9b41f is described below
commit 228fc9b41f99f423d500a236c68216f0203dd42c
Author: JB Onofré <[email protected]>
AuthorDate: Wed Apr 17 20:01:24 2024 +0200
Core: Fix namespace SQL statement using ESCAPE character that works with
MySQL/PostgreSQL (#10167)
Co-authored-by: Chauncy <[email protected]>
---
core/src/main/java/org/apache/iceberg/jdbc/JdbcUtil.java | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/core/src/main/java/org/apache/iceberg/jdbc/JdbcUtil.java
b/core/src/main/java/org/apache/iceberg/jdbc/JdbcUtil.java
index 8f918b4560..ffa606a94f 100644
--- a/core/src/main/java/org/apache/iceberg/jdbc/JdbcUtil.java
+++ b/core/src/main/java/org/apache/iceberg/jdbc/JdbcUtil.java
@@ -335,7 +335,7 @@ final class JdbcUtil {
+ TABLE_NAMESPACE
+ " = ? OR "
+ TABLE_NAMESPACE
- + " LIKE ? ESCAPE '\\')"
+ + " LIKE ? ESCAPE '!')"
+ " LIMIT 1";
static final String LIST_NAMESPACES_SQL =
"SELECT DISTINCT "
@@ -426,7 +426,7 @@ final class JdbcUtil {
+ NAMESPACE_NAME
+ " = ? OR "
+ NAMESPACE_NAME
- + " LIKE ? ESCAPE '\\' "
+ + " LIKE ? ESCAPE '!' "
+ " ) ";
static final String INSERT_NAMESPACE_PROPERTIES_SQL =
"INSERT INTO "
@@ -783,7 +783,7 @@ final class JdbcUtil {
// when namespace has sub-namespace then additionally checking it with
LIKE statement.
// catalog.db can exists as: catalog.db.ns1 or catalog.db.ns1.ns2
String namespaceStartsWith =
- namespaceEquals.replace("\\", "\\\\").replace("_", "\\_").replace("%",
"\\%") + ".%";
+ namespaceEquals.replace("!", "!!").replace("_", "!_").replace("%",
"!%") + ".%";
if (exists(connections, GET_NAMESPACE_SQL, catalogName, namespaceEquals,
namespaceStartsWith)) {
return true;
}