|tagger||Istvan Toth <email@example.com>||Wed Sep 09 09:57:08 2020 +0200|
|author||Istvan Toth <firstname.lastname@example.org>||Tue Aug 04 11:32:35 2020 +0200|
|committer||Istvan Toth <email@example.com>||Wed Aug 12 06:38:48 2020 +0200|
PHOENIX-6060 Create release script for python-phoenixdb ASF releases
Copyright ©2020 Apache Software Foundation. All Rights Reserved.
The Phoenix Query Server is an JDBC over HTTP abstraction. The Phoenix Query Server proxies the standard Phoenix JDBC driver and provides a backwards-compatible wire protocol to invoke that JDBC driver. This is all done via the Apache Avatica project (sub-project of Apache Calcite).
The reference client implementation for PQS is a “thin” JDBC driver which can communicate with PQS. There are drivers in other languages which exist in varying levels of maturity including Python, Golang, and .NET.
This repository will build a tarball which is capable of running the Phoenix Query Server.
By default, this tarball does not contain a Phoenix client jar as it is meant to be agnostic of Phoenix version (one PQS release can be used against any Phoenix version). Today, PQS builds against the Phoenix 4.15.0-HBase-1.4 release.
$ mvn package
To build a release of PQS which packages a specific version of Phoenix, specify the
package-phoenix-client system property and specify the
phoenix.version system property to indicate a specific Phoenix version.
PQS will package the same version of Phoenix used for build/test. This version is controlled by the
phoenix.version system property.
$ mvn package -Dpackage.phoenix.client -Dphoenix.version=5.1.0-SNAPSHOT
mvn package will run the unit tests while building, but it will not run the integration test suite.
The IT suite is run when executing
mvn install or
mvn verify. The Phoenix version specified with
phoenix.version is used for running the integration tests.
phoenix.version, also specify the HBase version to be used for integration testing by activating the corresponding
When using a Phoenix 5.x version, activate the
hbase-2.x profile in addition to the profile for the minor 2.x version.
$ mvn verify -Dpackage.phoenix.client -Dphoenix.version=4.16.0-SNAPSHOT -Phbase-1.3
$ mvn install -Dpackage.phoenix.client -Dphoenix.version=5.1.0-SNAPSHOT -Phbase-2.1 -Phbase-2.x