Apache-Phoenix | 5.1 | HBase 2.2 | Build #314 FAILURE
5.1 branch HBase 2.2 build #314 status FAILURE Build #314 https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-mulitbranch/job/5.1/314/
Apache-Phoenix | master | HBase 2.5 | Build #638 FAILURE
master branch HBase 2.5 build #638 status FAILURE Build #638 https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-mulitbranch/job/master/638/
Apache-Phoenix | 5.1 | HBase 2.3 | Build #314 SUCCESS
5.1 branch HBase 2.3 build #314 status SUCCESS Build #314 https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-mulitbranch/job/5.1/314/
Apache-Phoenix | master | HBase 2.4 | Build #638 FAILURE
master branch HBase 2.4 build #638 status FAILURE Build #638 https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-mulitbranch/job/master/638/
Apache-Phoenix | 5.1 | HBase 2.5 | Build #314 FAILURE
5.1 branch HBase 2.5 build #314 status FAILURE Build #314 https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-mulitbranch/job/5.1/314/
Apache-Phoenix | 5.1 | HBase 2.4 | Build #314 SUCCESS
5.1 branch HBase 2.4 build #314 status SUCCESS Build #314 https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-mulitbranch/job/5.1/314/
Apache-Phoenix | 5.1 | HBase 2.1 | Build #314 FAILURE
5.1 branch HBase 2.1 build #314 status FAILURE Build #314 https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-mulitbranch/job/5.1/314/
(phoenix) branch 5.1 updated: PHOENIX-7191 Connectionless CQSs don't work with non-ZK registries
This is an automated email from the ASF dual-hosted git repository. stoty pushed a commit to branch 5.1 in repository https://gitbox.apache.org/repos/asf/phoenix.git The following commit(s) were added to refs/heads/5.1 by this push: new 10b810a790 PHOENIX-7191 Connectionless CQSs don't work with non-ZK registries 10b810a790 is described below commit 10b810a79025414589131f7ad6e1713cbe4654b4 Author: Istvan Toth AuthorDate: Wed Jan 31 09:40:05 2024 +0100 PHOENIX-7191 Connectionless CQSs don't work with non-ZK registries --- .../phoenix/end2end/ConfigurableCacheIT.java | 3 ++- .../phoenix/jdbc/AbstractRPCConnectionInfo.java| 6 -- .../org/apache/phoenix/jdbc/ConnectionInfo.java| 25 +++--- .../apache/phoenix/jdbc/MasterConnectionInfo.java | 15 + .../org/apache/phoenix/jdbc/RPCConnectionInfo.java | 17 ++- .../org/apache/phoenix/jdbc/ZKConnectionInfo.java | 19 ++-- 6 files changed, 64 insertions(+), 21 deletions(-) diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ConfigurableCacheIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ConfigurableCacheIT.java index 96fae49061..eca73ce50b 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ConfigurableCacheIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ConfigurableCacheIT.java @@ -18,6 +18,7 @@ import java.sql.Connection; import java.sql.DriverManager; import java.util.Properties; +import org.apache.phoenix.jdbc.ConnectionInfo; import org.apache.phoenix.query.ITGuidePostsCacheFactory; import org.apache.phoenix.query.QueryServices; import org.apache.phoenix.util.PhoenixRuntime; @@ -70,7 +71,7 @@ public class ConfigurableCacheIT extends ParallelStatsEnabledIT { // As there is a map of connections in the phoenix driver need to differentiate the url to // pick different QueryServices -url = url + PhoenixRuntime.JDBC_PROTOCOL_SEPARATOR + principal; +url = ConnectionInfo.create(url, null, null).withPrincipal(principal).toUrl(); // Load defaults from QueryServicesTestImpl Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); diff --git a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/AbstractRPCConnectionInfo.java b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/AbstractRPCConnectionInfo.java index d362a86714..d193a911eb 100644 --- a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/AbstractRPCConnectionInfo.java +++ b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/AbstractRPCConnectionInfo.java @@ -26,6 +26,7 @@ import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.HConstants; import org.apache.hadoop.hbase.security.User; import org.apache.hbase.thirdparty.com.google.common.base.Strings; +import org.apache.phoenix.util.PhoenixRuntime; import org.apache.phoenix.util.ReadOnlyProps; /** @@ -198,9 +199,10 @@ public abstract class AbstractRPCConnectionInfo extends ConnectionInfo { } // At this point, masterPort is guaranteed not to be 0 +isConnectionless = PhoenixRuntime.CONNECTIONLESS.equals(hostsList); + if (isConnectionless) { -// We probably don't create connectionless MasterConnectionInfo objects -if (hostsList != null || port != null) { +if (port != null) { throw getMalFormedUrlException(url); } else { return; diff --git a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/ConnectionInfo.java b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/ConnectionInfo.java index 0347b1dfb4..641e12c19e 100644 --- a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/ConnectionInfo.java +++ b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/ConnectionInfo.java @@ -160,11 +160,11 @@ public abstract class ConnectionInfo { builder = new RPCConnectionInfo.Builder(url, configuration, props, info); } else if (url.toLowerCase().startsWith(PhoenixRuntime.JDBC_PROTOCOL)) { // The generic protocol was specified. Try to Determine the protocol from the config -if (MasterConnectionInfo.isMaster(configuration)) { +if (MasterConnectionInfo.Builder.isMaster(configuration, props, info)) { builder = new MasterConnectionInfo.Builder(url, configuration, props, info); -} else if (RPCConnectionInfo.isRPC(configuration)) { +} else if (RPCConnectionInfo.Builder.isRPC(configuration, props, info)) { builder = new RPCConnectionInfo.Builder(url, configuration, props, info); -} else if (ZKConnectionInfo.isZK(configuration)) { +} else if (ZKConnectionInfo.Builder.isZK(configuration, props, info)) { builder = new ZKConnectionInfo.Builder(url, configuration, props, info); } else { //
(phoenix) branch master updated: PHOENIX-7191 Connectionless CQSs don't work with non-ZK registries
This is an automated email from the ASF dual-hosted git repository. stoty pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/phoenix.git The following commit(s) were added to refs/heads/master by this push: new 3d2e0e4288 PHOENIX-7191 Connectionless CQSs don't work with non-ZK registries 3d2e0e4288 is described below commit 3d2e0e42882aa93be6fad2209d2ecef5b825a721 Author: Istvan Toth AuthorDate: Wed Jan 31 09:40:05 2024 +0100 PHOENIX-7191 Connectionless CQSs don't work with non-ZK registries --- .../phoenix/jdbc/AbstractRPCConnectionInfo.java| 6 -- .../org/apache/phoenix/jdbc/ConnectionInfo.java| 25 +++--- .../apache/phoenix/jdbc/MasterConnectionInfo.java | 15 + .../org/apache/phoenix/jdbc/RPCConnectionInfo.java | 17 ++- .../org/apache/phoenix/jdbc/ZKConnectionInfo.java | 19 ++-- .../phoenix/end2end/ConfigurableCacheIT.java | 3 ++- .../end2end/transform/TransformMonitorIT.java | 3 ++- .../ConnectionQueryServicesMetricsIT.java | 6 -- 8 files changed, 70 insertions(+), 24 deletions(-) diff --git a/phoenix-core-client/src/main/java/org/apache/phoenix/jdbc/AbstractRPCConnectionInfo.java b/phoenix-core-client/src/main/java/org/apache/phoenix/jdbc/AbstractRPCConnectionInfo.java index 869f40d2d5..0e4920c4c9 100644 --- a/phoenix-core-client/src/main/java/org/apache/phoenix/jdbc/AbstractRPCConnectionInfo.java +++ b/phoenix-core-client/src/main/java/org/apache/phoenix/jdbc/AbstractRPCConnectionInfo.java @@ -26,6 +26,7 @@ import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.HConstants; import org.apache.hadoop.hbase.security.User; import org.apache.hbase.thirdparty.com.google.common.base.Strings; +import org.apache.phoenix.util.PhoenixRuntime; import org.apache.phoenix.util.ReadOnlyProps; /** @@ -199,9 +200,10 @@ public abstract class AbstractRPCConnectionInfo extends ConnectionInfo { } // At this point, masterPort is guaranteed not to be 0 +isConnectionless = PhoenixRuntime.CONNECTIONLESS.equals(hostsList); + if (isConnectionless) { -// We probably don't create connectionless MasterConnectionInfo objects -if (hostsList != null || port != null) { +if (port != null) { throw getMalFormedUrlException(url); } else { return; diff --git a/phoenix-core-client/src/main/java/org/apache/phoenix/jdbc/ConnectionInfo.java b/phoenix-core-client/src/main/java/org/apache/phoenix/jdbc/ConnectionInfo.java index b982b1d6a1..3acdfa8f6a 100644 --- a/phoenix-core-client/src/main/java/org/apache/phoenix/jdbc/ConnectionInfo.java +++ b/phoenix-core-client/src/main/java/org/apache/phoenix/jdbc/ConnectionInfo.java @@ -152,11 +152,11 @@ public abstract class ConnectionInfo { builder = new RPCConnectionInfo.Builder(url, configuration, props, info); } else if (url.toLowerCase().startsWith(PhoenixRuntime.JDBC_PROTOCOL)) { // The generic protocol was specified. Try to Determine the protocol from the config -if (MasterConnectionInfo.isMaster(configuration)) { +if (MasterConnectionInfo.Builder.isMaster(configuration, props, info)) { builder = new MasterConnectionInfo.Builder(url, configuration, props, info); -} else if (RPCConnectionInfo.isRPC(configuration)) { +} else if (RPCConnectionInfo.Builder.isRPC(configuration, props, info)) { builder = new RPCConnectionInfo.Builder(url, configuration, props, info); -} else if (ZKConnectionInfo.isZK(configuration)) { +} else if (ZKConnectionInfo.Builder.isZK(configuration, props, info)) { builder = new ZKConnectionInfo.Builder(url, configuration, props, info); } else { // No registry class set in config. Use version-dependent default @@ -354,6 +354,8 @@ public abstract class ConnectionInfo { return false; } +public abstract ConnectionInfo withPrincipal(String principal); + /** * Parent of the Builder classes for the immutable ConnectionInfo classes * @@ -541,5 +543,22 @@ public abstract class ConnectionInfo { } return tokenizer; } + +protected static String get(String key, Configuration config, ReadOnlyProps props, +Properties info) { +String result = null; +if (info != null) { +result = info.getProperty(key); +} +if (result == null) { +if (props != null) { +result = props.get(key); +} +if (result == null) { +result = config.get(key, null); +} +} +return result; +} } }