Background

Hive build jobs include Hive PreCommit Testing, and scheduled builds of various branches with various flags.  They are run on the Hive Ptest2 Infrastructure, which is a EC2 cluster currently sponsored by Cloudera, which runs each build sequentially, but splits the testing across all the resources of the cluster to achieve much higher throughput.

Location

The infrastructure master is at ec2-174-129-184-35.compute-1.amazonaws.com.  Committers can be granted access to this host by request, see HIVE-4739.

Processes

The infrastructure master hosts two processes:

  1. Jenkins: http://ec2-174-129-184-35.compute-1.amazonaws.com/jenkins/
  2. Hive PTest WebServer
      • If no further test request come in 30 minutes, the slaves are shutdown.

Jenkins Configuration/Debug

Hive PTest Configuration/Debug

FAQ:

How do I restart Jenkins?

sudo service jenkins restart

How do I setup a new branch build?

In /usr/local/hiveptest/public/ you can copy existing profile property-file, and update the branch property.  Then in Jenkins, copy an existing branch build, and in the build config modify the profile argument in the Hive Ptest2 Webserver call to point to the new profile.

How can I read or make changes to Hive PTest Infra code?

Code is located in hive git repo.  It is under /hive/testutils/ptest2.  As the Hive Ptest2 Webserver is a running process, if changes are made, it needs to be restarted.

How do I stop, start, restart the Hive PTest2 server, or have it use the latest test infra code?

$ sudo /usr/local/hiveptest/bin/stop-server.sh 
$ sudo /usr/local/hiveptest/bin/start-server.sh 
$ sudo /usr/local/hiveptest/bin/restart-server.sh 
$ sudo /usr/local/hiveptest/bin/update.sh