diff --git a/BUILDING.md b/BUILDING.md
new file mode 100644
index 0000000..ccf88ad
--- /dev/null
+++ b/BUILDING.md
@@ -0,0 +1,80 @@
+
+
+![logo](https://phoenix.apache.org/images/phoenix-logo-small.png)
+
+[Apache Phoenix](http://phoenix.apache.org/) enables OLTP and operational analytics in Hadoop for low latency applications. Visit the Apache Phoenix website [here](http://phoenix.apache.org/). This is the repo for the Phoenix Query Server (PQS).
+
+Copyright ©2020 [Apache Software Foundation](http://www.apache.org/). All Rights Reserved.
+
+## Building
+
+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
+```
+
+### Bundling a Phoenix Client
+
+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
+```
+
+### Running integration tests
+
+`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.
+
+When specifying `phoenix.version`, also specify the HBase version to be used
+for integration testing by activating the corresponding `hbase` profile.
+
+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
+```
+
+### Running project reports
+
+Phoenix-queryserver currently supports generating the standard set of Maven Project Info Reports,
+as well as Spotbugs, Apache Creadur RAT, OWASP Dependency-Check, and Jacoco Code Coverage reports.
+
+To run all available reports
+`$ mvn clean verify site -Dspotbugs.site`
+
+To run OWASP, RAT and Spotbugs, but not Jacoco
+`$ mvn clean compile test-compile site -Dspotbugs.site`
+
+The reports are accessible via `target/site/index.html`, under the main project,
+as well as each of the subprojects. (not every project has all reports)
diff --git a/README.md b/README.md
index a2783df..55e1fba 100644
--- a/README.md
+++ b/README.md
@@ -30,46 +30,5 @@ 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.
-## Building
-
-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
-```
-
-### Bundling a Phoenix Client
-
-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
-```
-
-### Running integration tests
-
-`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.
-
-When specifying `phoenix.version`, also specify the HBase version to be used
-for integration testing by activating the corresponding `hbase` profile.
-
-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
-```
+The Python driver is maintained by the Phoenix project, and is available in the python-phoenixdb
+directory of the phoenix-queryserver repository.
\ No newline at end of file
diff --git a/phoenix-queryserver-load-balancer/pom.xml b/phoenix-queryserver-load-balancer/pom.xml
index 68ea55d..6e76e15 100644
--- a/phoenix-queryserver-load-balancer/pom.xml
+++ b/phoenix-queryserver-load-balancer/pom.xml
@@ -104,6 +104,10 @@
org.apache.zookeeper
zookeeper
+
+ org.apache.zookeeper
+ zookeeper-jute
+
org.apache.curator
curator-client
diff --git a/phoenix-queryserver/pom.xml b/phoenix-queryserver/pom.xml
index 441d01b..f5305e4 100644
--- a/phoenix-queryserver/pom.xml
+++ b/phoenix-queryserver/pom.xml
@@ -157,7 +157,7 @@
org.apache.zookeeper
- zookeeper
+ zookeeper-jute
org.apache.hadoop
diff --git a/pom.xml b/pom.xml
index c57292f..bcd8126 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@
org.apache
apache
- 21
+ 23
org.apache.phoenix
@@ -75,11 +75,11 @@
2.7.5
- 3.4.10
+ 3.5.8
2.12.0
2.2.4
- 9.4.27.v20200227
+ 9.4.31.v20200723
2.5
3.2.2
1.9.0
@@ -95,14 +95,25 @@
2.9
1.9.1
+ 4.1.3
+ 4.1.3
+ 5.3.2
+ 0.8.5
false
false
+
+
UTF-8
UTF-8
+
+
+
+ 0.0
+ 0.0
@@ -186,7 +197,7 @@
maven-surefire-plugin
true
- -enableassertions -Xmx2250m -XX:MaxPermSize=128m
+ @{jacocoArgLine} -enableassertions -Xmx2250m -XX:MaxPermSize=128m
-Djava.security.egd=file:/dev/./urandom "-Djava.library.path=${hadoop.library.path}${path.separator}${java.library.path}" -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=./target/
true
kill
@@ -204,7 +215,7 @@
alphabetical
false
alphabetical
- -Xmx2000m -XX:MaxPermSize=256m -Djava.security.egd=file:/dev/./urandom "-Djava.library.path=${hadoop.library.path}${path.separator}${java.library.path}" -XX:NewRatio=4 -XX:SurvivorRatio=8 -XX:+UseCompressedOops -XX:+UseConcMarkSweepGC -XX:+DisableExplicitGC -XX:+UseCMSInitiatingOccupancyOnly -XX:+CMSClassUnloadingEnabled -XX:+CMSScavengeBeforeRemark -XX:CMSInitiatingOccupancyFraction=68 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=./target/
+ @{jacocoArgLine} -Xmx2000m -XX:MaxPermSize=256m -Djava.security.egd=file:/dev/./urandom "-Djava.library.path=${hadoop.library.path}${path.separator}${java.library.path}" -XX:NewRatio=4 -XX:SurvivorRatio=8 -XX:+UseCompressedOops -XX:+UseConcMarkSweepGC -XX:+DisableExplicitGC -XX:+UseCMSInitiatingOccupancyOnly -XX:+CMSClassUnloadingEnabled -XX:+CMSScavengeBeforeRemark -XX:CMSInitiatingOccupancyFraction=68 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=./target/
true
kill
${basedir}/src/it/java
@@ -238,6 +249,32 @@
+
+ org.owasp
+ dependency-check-maven
+ ${maven-owasp-plugin.version}
+
+ true
+ true
+ true
+
+
+
+ com.github.spotbugs
+ spotbugs-maven-plugin
+ ${spotbugs-maven-plugin.version}
+
+
+ com.github.spotbugs
+ spotbugs
+ ${spotbugs.version}
+
+
+
+ Max
+ 2048
+
+
org.apache.maven.plugins
@@ -315,14 +352,6 @@
**/patchprocess/**
-
- python/requests-kerberos/**
- python/phoenixdb/phoenixdb/avatica/proto/*
- python/phoenixdb/*.rst
- python/phoenixdb/ci/**
- python/phoenixdb/doc/*.rst
- python/phoenixdb/doc/conf.py
- python/phoenixdb/doc/Makefile
@@ -444,6 +473,17 @@
+
+ org.apache.zookeeper
+ zookeeper-jute
+ ${zookeeper.version}
+
+
+ org.slf4j
+ slf4j-log4j12
+
+
+
org.eclipse.jetty
jetty-util
@@ -612,4 +652,121 @@
+
+
+ codecoverage
+
+
+ !skip.code-coverage
+
+
+
+
+
+ org.jacoco
+ jacoco-maven-plugin
+ ${jacoco-maven-plugin.version}
+
+
+ prepare-agent
+
+ prepare-agent
+
+
+ jacocoArgLine
+
+
+
+ report
+ post-integration-test
+
+ report
+
+
+
+ check
+ verify
+
+ check
+
+
+
+
+ BUNDLE
+
+
+ INSTRUCTION
+ COVEREDRATIO
+ ${jacoco.instruction.coverage.percentage}
+
+
+ BRANCH
+ COVEREDRATIO
+ ${jacoco.branch.coverage.percentage}
+
+
+
+
+
+
+
+
+
+
+
+
+ spotbugs-site
+
+
+ !spotbugs.site
+
+
+
+
+
+ com.github.spotbugs
+ spotbugs-maven-plugin
+
+ true
+ true
+
+
+
+
+
+
+
+
+
+ com.github.spotbugs
+ spotbugs-maven-plugin
+
+
+ org.owasp
+ dependency-check-maven
+
+
+
+ aggregate
+
+
+
+
+
+ org.jacoco
+ jacoco-maven-plugin
+
+
+
+ report
+
+
+
+
+
+ org.apache.rat
+ apache-rat-plugin
+
+
+