This is an automated email from the ASF dual-hosted git repository.

zhonghongsheng 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 d0447bd7697 Refactor PostgreSQLProtocolViolationException (#20640)
d0447bd7697 is described below

commit d0447bd7697d7a51effe4bfc83af8a347eb983ac
Author: Liang Zhang <[email protected]>
AuthorDate: Mon Aug 29 20:02:02 2022 +0800

    Refactor PostgreSQLProtocolViolationException (#20640)
---
 .../dialect/exception/SQLDialectException.java         |  6 ++++++
 .../InvalidAuthorizationSpecificationException.java    |  6 ------
 .../PostgreSQLProtocolViolationException.java          | 16 ++++++----------
 .../mapper/PostgreSQLDialectExceptionMapper.java       |  7 ++++++-
 .../authentication/OpenGaussAuthenticationEngine.java  |  4 ++--
 .../opengauss/err/OpenGaussErrorPacketFactory.java     | 18 +++---------------
 .../OpenGaussAuthenticationEngineTest.java             |  2 +-
 .../authentication/PostgreSQLAuthenticationEngine.java |  4 ++--
 .../postgresql/err/PostgreSQLErrPacketFactory.java     |  6 ------
 .../PostgreSQLAuthenticationEngineTest.java            |  2 +-
 10 files changed, 27 insertions(+), 44 deletions(-)

diff --git 
a/shardingsphere-dialect-exception/shardingsphere-dialect-exception-core/src/main/java/org/apache/shardingsphere/dialect/exception/SQLDialectException.java
 
b/shardingsphere-dialect-exception/shardingsphere-dialect-exception-core/src/main/java/org/apache/shardingsphere/dialect/exception/SQLDialectException.java
index acc0a6cacc0..b022442cf5d 100644
--- 
a/shardingsphere-dialect-exception/shardingsphere-dialect-exception-core/src/main/java/org/apache/shardingsphere/dialect/exception/SQLDialectException.java
+++ 
b/shardingsphere-dialect-exception/shardingsphere-dialect-exception-core/src/main/java/org/apache/shardingsphere/dialect/exception/SQLDialectException.java
@@ -17,12 +17,18 @@
 
 package org.apache.shardingsphere.dialect.exception;
 
+import lombok.NoArgsConstructor;
 import 
org.apache.shardingsphere.infra.util.exception.ShardingSphereInsideException;
 
 /**
  * SQL dialect exception.
  */
+@NoArgsConstructor
 public abstract class SQLDialectException extends 
ShardingSphereInsideException {
     
     private static final long serialVersionUID = -5090068160364259336L;
+    
+    public SQLDialectException(final String errorMessage, final Object... 
args) {
+        super(errorMessage, args);
+    }
 }
diff --git 
a/shardingsphere-dialect-exception/shardingsphere-postgresql-dialect-exception/src/main/java/org/apache/shardingsphere/dialect/postgresql/exception/InvalidAuthorizationSpecificationException.java
 
b/shardingsphere-dialect-exception/shardingsphere-postgresql-dialect-exception/src/main/java/org/apache/shardingsphere/dialect/postgresql/exception/InvalidAuthorizationSpecificationException.java
index fbcfcf53908..683bfc66edb 100644
--- 
a/shardingsphere-dialect-exception/shardingsphere-postgresql-dialect-exception/src/main/java/org/apache/shardingsphere/dialect/postgresql/exception/InvalidAuthorizationSpecificationException.java
+++ 
b/shardingsphere-dialect-exception/shardingsphere-postgresql-dialect-exception/src/main/java/org/apache/shardingsphere/dialect/postgresql/exception/InvalidAuthorizationSpecificationException.java
@@ -17,18 +17,12 @@
 
 package org.apache.shardingsphere.dialect.postgresql.exception;
 
-import lombok.Getter;
-import lombok.RequiredArgsConstructor;
 import org.apache.shardingsphere.dialect.exception.SQLDialectException;
 
 /**
  * Invalid authorization specification exception.
  */
-@RequiredArgsConstructor
-@Getter
 public final class InvalidAuthorizationSpecificationException extends 
SQLDialectException {
     
     private static final long serialVersionUID = -7169979989631579431L;
-    
-    private final String message;
 }
diff --git 
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/authentication/exception/PostgreSQLProtocolViolationException.java
 
b/shardingsphere-dialect-exception/shardingsphere-postgresql-dialect-exception/src/main/java/org/apache/shardingsphere/dialect/postgresql/exception/PostgreSQLProtocolViolationException.java
similarity index 72%
rename from 
shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/authentication/exception/PostgreSQLProtocolViolationException.java
rename to 
shardingsphere-dialect-exception/shardingsphere-postgresql-dialect-exception/src/main/java/org/apache/shardingsphere/dialect/postgresql/exception/PostgreSQLProtocolViolationException.java
index bae70d4c7f8..c78d36dc5a0 100644
--- 
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/authentication/exception/PostgreSQLProtocolViolationException.java
+++ 
b/shardingsphere-dialect-exception/shardingsphere-postgresql-dialect-exception/src/main/java/org/apache/shardingsphere/dialect/postgresql/exception/PostgreSQLProtocolViolationException.java
@@ -15,22 +15,18 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.exception;
+package org.apache.shardingsphere.dialect.postgresql.exception;
 
-import lombok.Getter;
-import lombok.RequiredArgsConstructor;
-import org.apache.shardingsphere.proxy.frontend.exception.FrontendException;
+import org.apache.shardingsphere.dialect.exception.SQLDialectException;
 
 /**
  * PostgreSQL protocol violation exception.
  */
-@RequiredArgsConstructor
-@Getter
-public final class PostgreSQLProtocolViolationException extends 
FrontendException {
+public final class PostgreSQLProtocolViolationException extends 
SQLDialectException {
     
     private static final long serialVersionUID = 6784109729740919997L;
     
-    private final String expectedMessageType;
-    
-    private final String actualMessageType;
+    public PostgreSQLProtocolViolationException(final String 
expectedMessageType, final String actualMessageType) {
+        super("expected %s response, got message type %s", 
expectedMessageType, actualMessageType);
+    }
 }
diff --git 
a/shardingsphere-dialect-exception/shardingsphere-postgresql-dialect-exception/src/main/java/org/apache/shardingsphere/dialect/postgresql/mapper/PostgreSQLDialectExceptionMapper.java
 
b/shardingsphere-dialect-exception/shardingsphere-postgresql-dialect-exception/src/main/java/org/apache/shardingsphere/dialect/postgresql/mapper/PostgreSQLDialectExceptionMapper.java
index a8ea4e1e1a6..4213a49514d 100644
--- 
a/shardingsphere-dialect-exception/shardingsphere-postgresql-dialect-exception/src/main/java/org/apache/shardingsphere/dialect/postgresql/mapper/PostgreSQLDialectExceptionMapper.java
+++ 
b/shardingsphere-dialect-exception/shardingsphere-postgresql-dialect-exception/src/main/java/org/apache/shardingsphere/dialect/postgresql/mapper/PostgreSQLDialectExceptionMapper.java
@@ -25,6 +25,7 @@ import 
org.apache.shardingsphere.dialect.exception.syntax.database.DatabaseCreat
 import 
org.apache.shardingsphere.dialect.exception.transaction.InTransactionException;
 import org.apache.shardingsphere.dialect.mapper.SQLDialectExceptionMapper;
 import 
org.apache.shardingsphere.dialect.postgresql.exception.InvalidAuthorizationSpecificationException;
+import 
org.apache.shardingsphere.dialect.postgresql.exception.PostgreSQLProtocolViolationException;
 import 
org.apache.shardingsphere.dialect.postgresql.vendor.PostgreSQLServerErrorMessage;
 import 
org.apache.shardingsphere.dialect.postgresql.vendor.PostgreSQLVendorError;
 import org.postgresql.util.PSQLException;
@@ -57,7 +58,11 @@ public final class PostgreSQLDialectExceptionMapper 
implements SQLDialectExcepti
             return new 
PSQLException(PostgreSQLVendorError.DATA_SOURCE_REJECTED_CONNECTION_ATTEMPT.getReason(),
 null);
         }
         if (sqlDialectException instanceof 
InvalidAuthorizationSpecificationException) {
-            return new PSQLException(new PostgreSQLServerErrorMessage("FATAL", 
PostgreSQLVendorError.INVALID_AUTHORIZATION_SPECIFICATION, 
sqlDialectException.getMessage()).toServerErrorMessage());
+            return new PSQLException(new PostgreSQLServerErrorMessage(
+                    "FATAL", 
PostgreSQLVendorError.INVALID_AUTHORIZATION_SPECIFICATION, "no PostgreSQL user 
name specified in startup packet").toServerErrorMessage());
+        }
+        if (sqlDialectException instanceof 
PostgreSQLProtocolViolationException) {
+            return new PSQLException(new PostgreSQLServerErrorMessage("FATAL", 
PostgreSQLVendorError.PROTOCOL_VIOLATION, 
sqlDialectException.getMessage()).toServerErrorMessage());
         }
         return new PSQLException(sqlDialectException.getMessage(), 
PSQLState.UNEXPECTED_ERROR);
     }
diff --git 
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/authentication/OpenGaussAuthenticationEngine.java
 
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/authentication/OpenGaussAuthenticationEngine.java
index 72f94287028..5f280d1f743 100644
--- 
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/authentication/OpenGaussAuthenticationEngine.java
+++ 
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/authentication/OpenGaussAuthenticationEngine.java
@@ -40,7 +40,7 @@ import 
org.apache.shardingsphere.proxy.frontend.connection.ConnectionIdGenerator
 import 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.PostgreSQLLoginResult;
 import 
org.apache.shardingsphere.dialect.postgresql.exception.InvalidAuthorizationSpecificationException;
 import 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.exception.PostgreSQLAuthenticationException;
-import 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.exception.PostgreSQLProtocolViolationException;
+import 
org.apache.shardingsphere.dialect.postgresql.exception.PostgreSQLProtocolViolationException;
 
 import java.util.concurrent.ThreadLocalRandom;
 
@@ -102,7 +102,7 @@ public final class OpenGaussAuthenticationEngine implements 
AuthenticationEngine
         
context.channel().attr(CommonConstants.CHARSET_ATTRIBUTE_KEY).set(PostgreSQLCharacterSets.findCharacterSet(clientEncoding));
         String user = comStartupPacket.getUser();
         if (Strings.isNullOrEmpty(user)) {
-            throw new InvalidAuthorizationSpecificationException("no 
PostgreSQL user name specified in startup packet");
+            throw new InvalidAuthorizationSpecificationException();
         }
         context.writeAndFlush(new 
OpenGaussAuthenticationSCRAMSha256Packet(saltHexString.getBytes(), 
nonceHexString.getBytes(), serverIteration));
         currentAuthResult = AuthenticationResultBuilder.continued(user, "", 
comStartupPacket.getDatabase());
diff --git 
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/err/OpenGaussErrorPacketFactory.java
 
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/err/OpenGaussErrorPacketFactory.java
index ded9c122f4d..aada538bdc9 100644
--- 
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/err/OpenGaussErrorPacketFactory.java
+++ 
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/err/OpenGaussErrorPacketFactory.java
@@ -23,12 +23,11 @@ import lombok.NoArgsConstructor;
 import lombok.SneakyThrows;
 import 
org.apache.shardingsphere.db.protocol.opengauss.packet.command.generic.OpenGaussErrorResponsePacket;
 import 
org.apache.shardingsphere.db.protocol.postgresql.constant.PostgreSQLMessageSeverityLevel;
+import org.apache.shardingsphere.dialect.SQLExceptionTransformEngine;
 import org.apache.shardingsphere.dialect.exception.SQLDialectException;
-import 
org.apache.shardingsphere.dialect.mapper.SQLDialectExceptionMapperFactory;
 import 
org.apache.shardingsphere.dialect.postgresql.vendor.PostgreSQLVendorError;
 import 
org.apache.shardingsphere.infra.util.exception.sql.ShardingSphereSQLException;
 import 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.exception.PostgreSQLAuthenticationException;
-import 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.exception.PostgreSQLProtocolViolationException;
 
 import java.lang.reflect.Field;
 import java.lang.reflect.InvocationTargetException;
@@ -72,19 +71,8 @@ public final class OpenGaussErrorPacketFactory {
         if (existsServerErrorMessage(cause)) {
             return createErrorResponsePacket(getServerErrorMessageMap(cause));
         }
-        if (cause instanceof SQLException) {
-            return createErrorResponsePacket((SQLException) cause);
-        }
-        if (cause instanceof SQLDialectException) {
-            return 
createErrorResponsePacket(SQLDialectExceptionMapperFactory.getInstance("PostgreSQL").convert((SQLDialectException)
 cause));
-        }
-        if (cause instanceof ShardingSphereSQLException) {
-            return createErrorResponsePacket(((ShardingSphereSQLException) 
cause).toSQLException());
-        }
-        if (cause instanceof PostgreSQLProtocolViolationException) {
-            return new 
OpenGaussErrorResponsePacket(PostgreSQLMessageSeverityLevel.FATAL, 
PostgreSQLVendorError.PROTOCOL_VIOLATION.getSqlState().getValue(),
-                    String.format("expected %s response, got message type %s", 
((PostgreSQLProtocolViolationException) cause).getExpectedMessageType(),
-                            ((PostgreSQLProtocolViolationException) 
cause).getActualMessageType()));
+        if (cause instanceof SQLException || cause instanceof 
ShardingSphereSQLException || cause instanceof SQLDialectException) {
+            return 
createErrorResponsePacket(SQLExceptionTransformEngine.toSQLException(cause, 
"PostgreSQL"));
         }
         if (cause instanceof PostgreSQLAuthenticationException) {
             return new 
OpenGaussErrorResponsePacket(PostgreSQLMessageSeverityLevel.FATAL, 
((PostgreSQLAuthenticationException) 
cause).getVendorError().getSqlState().getValue(), cause.getMessage());
diff --git 
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/test/java/org/apache/shardingsphere/proxy/frontend/opengauss/authentication/OpenGaussAuthenticationEngineTest.java
 
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/test/java/org/apache/shardingsphere/proxy/frontend/opengauss/authentication/OpenGaussAuthenticationEngineTest.java
index 3f83aa8a535..2e856a6cc21 100644
--- 
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/test/java/org/apache/shardingsphere/proxy/frontend/opengauss/authentication/OpenGaussAuthenticationEngineTest.java
+++ 
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/test/java/org/apache/shardingsphere/proxy/frontend/opengauss/authentication/OpenGaussAuthenticationEngineTest.java
@@ -45,7 +45,7 @@ import 
org.apache.shardingsphere.proxy.frontend.opengauss.ProxyContextRestorer;
 import 
org.apache.shardingsphere.proxy.frontend.opengauss.authentication.fixture.OpenGaussAuthenticationAlgorithm;
 import 
org.apache.shardingsphere.dialect.postgresql.exception.InvalidAuthorizationSpecificationException;
 import 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.exception.PostgreSQLAuthenticationException;
-import 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.exception.PostgreSQLProtocolViolationException;
+import 
org.apache.shardingsphere.dialect.postgresql.exception.PostgreSQLProtocolViolationException;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
diff --git 
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/authentication/PostgreSQLAuthenticationEngine.java
 
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/authentication/PostgreSQLAuthenticationEngine.java
index 2a9e06bd304..6bead1de6eb 100644
--- 
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/authentication/PostgreSQLAuthenticationEngine.java
+++ 
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/authentication/PostgreSQLAuthenticationEngine.java
@@ -44,7 +44,7 @@ import 
org.apache.shardingsphere.proxy.frontend.connection.ConnectionIdGenerator
 import 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.authenticator.PostgreSQLAuthenticator;
 import 
org.apache.shardingsphere.dialect.postgresql.exception.InvalidAuthorizationSpecificationException;
 import 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.exception.PostgreSQLAuthenticationException;
-import 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.exception.PostgreSQLProtocolViolationException;
+import 
org.apache.shardingsphere.dialect.postgresql.exception.PostgreSQLProtocolViolationException;
 
 /**
  * Authentication engine for PostgreSQL.
@@ -87,7 +87,7 @@ public final class PostgreSQLAuthenticationEngine implements 
AuthenticationEngin
         
context.channel().attr(CommonConstants.CHARSET_ATTRIBUTE_KEY).set(PostgreSQLCharacterSets.findCharacterSet(clientEncoding));
         String user = comStartupPacket.getUser();
         if (Strings.isNullOrEmpty(user)) {
-            throw new InvalidAuthorizationSpecificationException("no 
PostgreSQL user name specified in startup packet");
+            throw new InvalidAuthorizationSpecificationException();
         }
         context.writeAndFlush(getIdentifierPacket(user));
         currentAuthResult = AuthenticationResultBuilder.continued(user, "", 
comStartupPacket.getDatabase());
diff --git 
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/err/PostgreSQLErrPacketFactory.java
 
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/err/PostgreSQLErrPacketFactory.java
index e93fee466b9..cb986b90339 100644
--- 
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/err/PostgreSQLErrPacketFactory.java
+++ 
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/err/PostgreSQLErrPacketFactory.java
@@ -27,7 +27,6 @@ import 
org.apache.shardingsphere.dialect.exception.SQLDialectException;
 import 
org.apache.shardingsphere.dialect.postgresql.vendor.PostgreSQLVendorError;
 import 
org.apache.shardingsphere.infra.util.exception.sql.ShardingSphereSQLException;
 import 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.exception.PostgreSQLAuthenticationException;
-import 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.exception.PostgreSQLProtocolViolationException;
 import org.postgresql.util.PSQLException;
 import org.postgresql.util.ServerErrorMessage;
 
@@ -49,11 +48,6 @@ public final class PostgreSQLErrPacketFactory {
         if (cause instanceof PSQLException && null != ((PSQLException) 
cause).getServerErrorMessage()) {
             return createErrorResponsePacket(((PSQLException) 
cause).getServerErrorMessage());
         }
-        if (cause instanceof PostgreSQLProtocolViolationException) {
-            return 
PostgreSQLErrorResponsePacket.newBuilder(PostgreSQLMessageSeverityLevel.FATAL, 
PostgreSQLVendorError.PROTOCOL_VIOLATION,
-                    String.format("expected %s response, got message type %s", 
((PostgreSQLProtocolViolationException) cause).getExpectedMessageType(),
-                            ((PostgreSQLProtocolViolationException) 
cause).getActualMessageType())).build();
-        }
         if (cause instanceof PostgreSQLAuthenticationException) {
             return 
PostgreSQLErrorResponsePacket.newBuilder(PostgreSQLMessageSeverityLevel.FATAL, 
((PostgreSQLAuthenticationException) cause).getVendorError(), 
cause.getMessage()).build();
         }
diff --git 
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/authentication/PostgreSQLAuthenticationEngineTest.java
 
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/authentication/PostgreSQLAuthenticationEngineTest.java
index e5a0247e106..70adda127b1 100644
--- 
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/authentication/PostgreSQLAuthenticationEngineTest.java
+++ 
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/authentication/PostgreSQLAuthenticationEngineTest.java
@@ -46,7 +46,7 @@ import 
org.apache.shardingsphere.proxy.frontend.postgresql.ProxyContextRestorer;
 import 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.authenticator.PostgreSQLMD5PasswordAuthenticator;
 import 
org.apache.shardingsphere.dialect.postgresql.exception.InvalidAuthorizationSpecificationException;
 import 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.exception.PostgreSQLAuthenticationException;
-import 
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.exception.PostgreSQLProtocolViolationException;
+import 
org.apache.shardingsphere.dialect.postgresql.exception.PostgreSQLProtocolViolationException;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;

Reply via email to