phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Istvan Toth (Jira)" <>
Subject [jira] [Created] (PHOENIX-5963) Enable loadbalancer for standalone PQS assembly
Date Wed, 17 Jun 2020 07:02:00 GMT
Istvan Toth created PHOENIX-5963:

             Summary: Enable loadbalancer for standalone PQS assembly
                 Key: PHOENIX-5963
             Project: Phoenix
          Issue Type: Bug
          Components: queryserver
    Affects Versions: queryserver-1.0.0
            Reporter: Istvan Toth

The load-balancer does not work with the current PQS assembly, due to dependency (and script

The proposal below would -hopefully- make it feasible to re-introduce and support it as an
optional dependecy for PQS:


As for the load-balancer, you are right that this setup doesn't allow for a working load-balancer.
However, it wouldn't work even if the load-balancer jar was included in the classpath. The
load-balancer depends on (unshaded) zookeeper, and unshaded zookeeper is generally not available
on the PQS classpath anyway (it may have been available in some old phoenix-client version,
but currently both master and 4.x shades it).

Loading the load-balancer as an external service is nice in theory, but since it's compiled
separately from phoenix-client, the dependency conflicts that it introduces are hard to solve.

If I were to do it, I'd:
 * Refactor/Simplify loadbalancer, so that doesn't need Hadoop and Hbase deps
 ** Pass the Hbase Config object as in Iterable to registerServer
 ** Ditch the config singleton/cache, it is not useful in this context
 ** Preferably ditch Curator as well
 * create a shaded loadbalancer jar with ZK (and curator) shaded into it
 * Then prepare the PQS startup script for it, and document how to add this to PQS as an optional

This message was sent by Atlassian Jira

View raw message