1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-30 19:23:07 +03:00

MCOL-3551 Use generic MariaDB Server paths

This branch enforces the use of generic MariaDB server paths for their
binaries and data rather than custom paths.

/usr/local/mariadb/columnstore is now only for columnstore with this
patch.

It should be noted that this removes the auto-mounting of external
MariaDB UM data storage for AWS.

This is also a fix for MCOL-3510 after buildbot changes are made.

Also... MCOL-3552 Use columnstore.cnf to load plugins

The ColumnStore plugins now load using a columnstore.cnf instead of a
SQL sequence to be more in-line with MariaDB's methods.
This commit is contained in:
Andrew Hutchings
2019-10-10 14:28:02 +01:00
parent 5fd0873215
commit ebb22a96a3
58 changed files with 145 additions and 2143 deletions

View File

@ -1,475 +0,0 @@
#!/usr/bin/expect
#
# $Id: buildTester.sh 421 2007-04-05 15:46:55Z dhill $
#
# Build, install, and test Calpont Builds
#
set EMAIL " "
set USERNAME root
set PASSWORD Calpont1
set BUILD " "
set SVN genii
set RELEASE " "
set SYSTEM noSystem
set USER " "
set DEBUG "-k"
set TEST(0) " "
set SERVER srvswdev11
#set SHARED "//cal6500/shared"
set SHARED "//calweb/shared"
spawn -noecho /bin/bash
for {set i 0} {$i<[llength $argv]} {incr i} {
set arg($i) [lindex $argv $i]
}
set i 0
while true {
if { $i == [llength $argv] } { break }
if { $arg($i) == "-h" } {
send_user "\n"
send_user "'buildTester' executes a set of DVM test on a specifed system and\n"
send_user "send the results via email or outputs results to a log file.\n"
send_user "It has the option of installing a released\n"
send_user "build or generating a new build when release of 'Latest' is specified\n"
send_user "and installing that build on the specified system.\n"
send_user "\n"
send_user "Usage: buildTester -b 'build-type' -r 'release' -v 'svn-branch' -s 'system' -sv 'server' -u 'database-user' -p 'password' -d -e -t 'test-names'\n"
send_user " build-type - optional: RHEL5 or FC6\n"
send_user " release - Required when build-type is entered: Calpont release number or 'Latest'\n"
send_user " svn-branch - SVN Branch built againest, default to genii\n"
send_user " system - Target install/test system\n"
send_user " server - Target query server hostname\n"
send_user " database-user - Database User, i.e. tpch1\n"
send_user " password - system password, default to 'qcalpont!'\n"
send_user " -d - Debug mode, will output additional install and test data\n"
send_user " -e - email results\n"
send_user " test-names - Test name list seperated by spaces (sanity tpch)\n"
exit
}
if { $arg($i) == "-b" } {
incr i
set BUILD $arg($i)
} elseif { $arg($i) == "-r" } {
incr i
set RELEASE $arg($i)
} elseif { $arg($i) == "-s" } {
incr i
set SYSTEM $arg($i)
} elseif { $arg($i) == "-v" } {
incr i
set SVN $arg($i)
} elseif { $arg($i) == "-u" } {
incr i
set USER $arg($i)
} elseif { $arg($i) == "-p" } {
incr i
set PASSWORD $arg($i)
} elseif { $arg($i) == "-t" } {
incr i
if { $i == [llength $argv] } {
puts "no Test Name entered, enter ./buildTester.sh -h for additional info"; exit -1
}
set TESTNUMBER 0
while true {
set TEST($TESTNUMBER) $arg($i)
incr i
incr TESTNUMBER
if { $i == [llength $argv] } {
incr i -1
break
}
}
} elseif { $arg($i) == "-e" } {
if { $SYSTEM == "qaftest2" } {
set EMAIL dhill@calpont.com,wweeks@calpont.com,dcathey@calpont.com,bpaul@calpont.com
} elseif { $SYSTEM == "qaftest2" } {
set EMAIL dhill@calpont.com,wweeks@calpont.com,dcathey@calpont.com,bpaul@calpont.com
} elseif { $SYSTEM == "caldev02" } {
set EMAIL dhill@calpont.com,wweeks@calpont.com,pleblanc@calpont.com,chao@calpont.com,xlou@calpont.com,dcathey@calpont.com
} elseif { $SYSTEM == "srvswdev11" } {
set EMAIL dhill@calpont.com,wweeks@calpont.com,pleblanc@calpont.com,chao@calpont.com,xlou@calpont.com,dcathey@calpont.com
} elseif { $SYSTEM == "devint2" } {
set EMAIL dhill@calpont.com,wweeks@calpont.com,pleblanc@calpont.com
} elseif { $SYSTEM == "devint3" } {
set EMAIL dhill@calpont.com,wweeks@calpont.com,pleblanc@calpont.com
} elseif { $SYSTEM == "ss2" } {
set EMAIL dhill@calpont.com,wweeks@calpont.com,pleblanc@calpont.com,chao@calpont.com,dcathey@calpont.com
} elseif { $SYSTEM == "ss2ImportSSB100" } {
set EMAIL dhill@calpont.com,wweeks@calpont.com,dcathey@calpont.com,pleblanc@calpont.com
} elseif { $SYSTEM == "demo01" } {
set EMAIL dhill@calpont.com,wweeks@calpont.com,pleblanc@calpont.com,chao@calpont.com
} elseif { $SYSTEM == "qperfd01" } {
set EMAIL dhill@calpont.com,wweeks@calpont.com,bpaul@calpont.com,dcathey@calpont.com,pleblanc@calpont.com
} elseif { $SYSTEM == "qperfd01" } {
set EMAIL dhill@calpont.com,wweeks@calpont.com,bpaul@calpont.com,dcathey@calpont.com
} elseif { $SYSTEM == "qcald02a" } {
set EMAIL dhill@calpont.com,wweeks@calpont.com,mroberts@calpont.com
} else {
set EMAIL dhill@calpont.com,wweeks@calpont.com
}
} elseif { $arg($i) == "-d" } {
set DEBUG " "
} elseif { $arg($i) == "-sv" } {
incr i
set SERVER $arg($i)
}
incr i
}
if { $SYSTEM == "noSystem" } {
set SYSTEM $BUILD
}
#cleanup
set RUN_LOG_FILE /tmp/$SYSTEM-$SVN.log
exec rm -f /tmp/test.log $RUN_LOG_FILE
# open log file
log_file $RUN_LOG_FILE
#get current date
exec date >/tmp/datesync.tmp
exec cat /tmp/datesync.tmp
set newtime [exec cat /tmp/datesync.tmp]
#
send_user "\n\n#####################################################################################################\n"
send_user " Automated Build Tester Report $newtime\n"
send_user " BUILD=$BUILD RELEASE=$RELEASE SVN-BRANCH=$SVN SYSTEM=$SYSTEM\n"
send_user "\n#####################################################################################################\n\n"
# build request
log_user 1
set timeout 30
if { $BUILD != " " } {
set timeout 6060
send_user "******************* Generate Build $BUILD / $RELEASE ****************************\n\n"
log_user 0
send "./autoBuilder -o $BUILD -r $RELEASE -s $SVN\n"
log_user 1
expect {
-re "Calpont RPM Build successfully completed" { } abort
-re "Build Failed" { send_user "\nBuild Failed\n" ; puts [exec mail -s "$SYSTEM/$SVN Automated Build Tester Results" $EMAIL < $RUN_LOG_FILE] ; exit -1 }
}
#get current date
exec date >/tmp/datesync.tmp
exec cat /tmp/datesync.tmp
set newtime [exec cat /tmp/datesync.tmp]
send_user "\nBuild successfully completed $newtime\n\n"
}
set timeout 30
#expect -re "#"
if { $DEBUG == " " } {
log_user 1
} else {
log_user 0
}
if { $SYSTEM != $BUILD } {
set timeout 1500
if { $RELEASE != " " } {
# install request
send_user "\n\n******************* Install Build $RELEASE on $SYSTEM *******************************\n\n"
send "./autoInstaller -s $SYSTEM -r $RELEASE -n -d\n"
expect {
-re "Install Successfully completed" { send_user "\nInstall successfully completed\n\n" } abort
-re "Installation Failed" { send_user "\nInstallation Failed\n\n"
puts [exec mail -s "$SYSTEM/$SVN Automated Build Tester Results" $EMAIL < $RUN_LOG_FILE] ; exit -1 }
timeout { send_user "\nInstallation Failed - Timeout error\n\n"
puts [exec mail -s "$SYSTEM/$SVN Automated Build Tester Results" $EMAIL < $RUN_LOG_FILE] ; exit -1 }
}
}
}
#get install RPM info
#log_user 1
#send_user "\n\n******************* Calpont RPM Install Information *******************************\n\n"
#exec ./remote_command_test.sh $SERVER $PASSWORD "rpm -iq calpont | grep Version -A 2" " " "No such file" 60 1
#exec ./remote_command.sh $SERVER $PASSWORD 'rpm -iq calpont' tools not 30 1
#expect {
# -re " " { abort }
# -re "FAILED" {
# puts "\nCalpont RPM not installed\n";
# exec echo "Test Failed, Calpont RPM not installed" >> $RUN_LOG_FILE
# puts [exec mail -s "$SYSTEM/$SVN Automated Build Tester Results" $EMAIL < $RUN_LOG_FILE] ; exit -1
# }
#}
set timeout 30
if { $TEST(0) != " " } {
set timeout 600
set t 0
while true {
if { $t == $TESTNUMBER } {
break
}
set TESTCASE $TEST($t)
incr t
#get current date
exec date >/tmp/datesync.tmp
exec cat /tmp/datesync.tmp
set newtime [exec cat /tmp/datesync.tmp]
log_user 1
send_user "\n\n******************* Run Test $TESTCASE start at $newtime **********************************\n\n"
#log_user 0
set TESTTYPE [exec expr substr $TESTCASE 1 5]
if { $TESTTYPE == "mysql" } {
set TESTCOMMAND [exec expr substr $TESTCASE 7 80]
} else {
# Oracle test case
set TESTCOMMAND [exec expr substr $TESTCASE 8 80]
}
if { $TESTTYPE == "oracl" } {
if { [catch { open "/usr/local/lib/python2.4/site-packages/dvm_app/$USER\_$SYSTEM\_brefd01.cfg" "r"} handle ] } {
exec echo "\nTest Failed, DVM config file $USER\_$SYSTEM\_brefd01.cfg not found\n";
exec echo "Test Failed, DVM config file $USER\_$SYSTEM\_brefd01.cfg not found" >> $RUN_LOG_FILE
puts [exec mail -s "$SYSTEM/$SVN Automated Build Tester Results" $EMAIL < $RUN_LOG_FILE] ; exit -1
}
if { $TESTCOMMAND == "tpch" } {
exec su - oracle -c "python /usr/local/lib/python2.4/site-packages/dvm_app/dvm.py -c /usr/local/lib/python2.4/site-packages/dvm_app/$USER\\_$SYSTEM\_brefd01.cfg -e1 -sS -rB $DEBUG -l2 -t Perf_Tpch > /tmp/test.log "
expect {
-re "Traceback" {
exec echo "\nTest Failed, Database instance is down\n";
exec echo "Test Failed, Database instance is down" >> $RUN_LOG_FILE
puts [exec mail -s "$SYSTEM/$SVN Automated Build Tester Results" $EMAIL < $RUN_LOG_FILE] ; exit -1 }
-re "$" { if { [catch { open "/tmp/test.log" "r"} handle ] } {
exec echo "\nTest Failed, /tmp/test.log not found\n";
exec echo "Test Failed, /tmp/test.log not found" >> $RUN_LOG_FILE
puts [exec mail -s "$SYSTEM/$SVN Automated Build Tester Results" $EMAIL < $RUN_LOG_FILE] ; exit -1 }
}
}
exec cat /tmp/test.log >> $RUN_LOG_FILE
} else {
if { $TESTCOMMAND == "dml" } {
exec su - oracle -c "python /usr/local/lib/python2.4/site-packages/dvm_app/dvm.py -c /usr/local/lib/python2.4/site-packages/dvm_app/$USER\\_$SYSTEM\_brefd01.cfg -sS -rB -l2 -t Iter16_TableNameLengths $DEBUG > /tmp/test.log "
expect {
-re "Traceback" {
exec echo "\nTest Failed, Database instance is down\n";
exec echo "Test Failed, Database instance is down" >> $RUN_LOG_FILE
puts [exec mail -s "$SYSTEM/$SVN Automated Build Tester Results" $EMAIL < $RUN_LOG_FILE] ; exit -1 }
-re "$" { if { [catch { open "/tmp/test.log" "r"} handle ] } {
exec echo "\nTest Failed, /tmp/test.log not found\n";
exec echo "Test Failed, /tmp/test.log not found" >> $RUN_LOG_FILE
puts [exec mail -s "$SYSTEM/$SVN Automated Build Tester Results" $EMAIL < $RUN_LOG_FILE] ; exit -1 }
}
}
exec cat /tmp/test.log >> $RUN_LOG_FILE
exec su - oracle -c "python /usr/local/lib/python2.4/site-packages/dvm_app/dvm.py -c /usr/local/lib/python2.4/site-packages/dvm_app/$USER\\_$SYSTEM\_brefd01.cfg -sS -rB -l2 -t Iter16_Datatypes_Ext $DEBUG > /tmp/test.log "
expect {
-re "Traceback" {
exec echo "\nTest Failed, Database instance is down\n";
exec echo "Test Failed, Database instance is down" >> $RUN_LOG_FILE
puts [exec mail -s "$SYSTEM/$SVN Automated Build Tester Results" $EMAIL < $RUN_LOG_FILE] ; exit -1 }
-re "$" { if { [catch { open "/tmp/test.log" "r"} handle ] } {
exec echo "\nTest Failed, /tmp/test.log not found\n";
exec echo "Test Failed, /tmp/test.log not found" >> $RUN_LOG_FILE
puts [exec mail -s "$SYSTEM/$SVN Automated Build Tester Results" $EMAIL < $RUN_LOG_FILE] ; exit -1 }
}
}
exec cat /tmp/test.log >> $RUN_LOG_FILE
} else {
# default to a test-command of a file name
exec su - oracle -c "python /usr/local/lib/python2.4/site-packages/dvm_app/dvm.py -c /usr/local/lib/python2.4/site-packages/dvm_app/$USER\\_$SYSTEM\_brefd01.cfg -e2 -sS -rT $DEBUG -t /home/qa/bldqry/$TESTCOMMAND.txt -q /home/qa/bldqry > /tmp/test.log "
expect {
-re "Traceback" {
exec echo "\nTest Failed, Database instance is down\n";
exec echo "Test Failed, Database instance is down" >> $RUN_LOG_FILE
puts [exec mail -s "$SYSTEM/$SVN Automated Build Tester Results" $EMAIL < $RUN_LOG_FILE] ; exit -1 }
-re "$" { if { [catch { open "/tmp/test.log" "r"} handle ] } {
exec echo "\nTest Failed, /tmp/test.log not found\n";
exec echo "Test Failed, /tmp/test.log not found" >> $RUN_LOG_FILE
puts [exec mail -s "$SYSTEM/$SVN Automated Build Tester Results" $EMAIL < $RUN_LOG_FILE] ; exit -1 }
}
}
exec cat /tmp/test.log >> $RUN_LOG_FILE
}
}
} else { # run mysql test commands
if { $TESTTYPE == "mysql" } {
if { $TESTCOMMAND == "query" } {
set timeout 72000
log_user 1
exec ./remote_command_test.sh $SERVER $PASSWORD "./nightly/runQueryTestAll $SVN" "runQueryTestAll completed" "No such file" $timeout
expect {
-re "FAILED" { exec echo "\nFailed to run runQueryTestAll\n" >> $RUN_LOG_FILE} abort;
-re "TIMEOUT" { exec echo "\nTimeout on run runQueryTestAll\n" >> $RUN_LOG_FILE} abort;
-re " " { exec ./remote_scp_get.sh $SERVER $PASSWORD "/root/$SVN/mysql/queries/nightly/srvswdev11/go.log"
exec cat go.log >> $RUN_LOG_FILE
exec rm -f go.log
} abort;
}
} elseif { $TESTCOMMAND == "querySSB" } {
set timeout 1200
log_user 1
exec ./remote_command_test.sh $SERVER $PASSWORD "./nightly/startQueryTesterSSB $SVN" "startQueryTester completed" "No such file" 1200
expect {
-re " " { exec ./remote_scp_get.sh $SERVER $PASSWORD "/root/$SVN/mysql/queries/queryTesterSSB.report"
exec cat queryTesterSSB.report >> $RUN_LOG_FILE
exec rm -f queryTesterSSB.report
} abort;
-re "FAILED" { exec echo "\nFailed to run queryTester\n" >> $RUN_LOG_FILE} abort;
-re "TIMEOUT" { exec echo "\nTimeout on run queryTester\n" >> $RUN_LOG_FILE} abort;
}
} elseif { $TESTCOMMAND == "concur" } {
set timeout 600
log_user 1
exec ./remote_command_test.sh $SERVER $PASSWORD "/root/nightly/startConcurTester 32" "Success" "Failed" 600
expect {
-re " " { exec echo "Concurrance Test Passed\n\n" >> $RUN_LOG_FILE} abort;
-re "FAILED" { exec echo "\nConcurrance Test Failed\n" >> $RUN_LOG_FILE} abort;
-re "TIMEOUT" { exec echo "\nConcurrance Test Timeout\n" >> $RUN_LOG_FILE} abort;
timeout { exec echo "\nConcurrance Test Timeout\n" >> $RUN_LOG_FILE} abort;
}
} elseif { $TESTCOMMAND == "continueousConcur" } {
set timeout 30
log_user 1
exec ./remote_command_test.sh $SERVER $PASSWORD "/root/nightly/continueousConcurTester" "Started" "Failed" 30
expect {
-re " " { exec echo "Continueous Concurrance Test Started \n\n" >> $RUN_LOG_FILE} abort;
-re "FAILED" { exec echo "\nContinueous Concurrance Test Failed\n" >> $RUN_LOG_FILE} abort;
-re "TIMEOUT" { exec echo "\nContinueous Concurrance Test Timeout\n" >> $RUN_LOG_FILE} abort;
timeout { exec echo "\nContinueous Concurrance Test Timeout\n" >> $RUN_LOG_FILE} abort;
}
} elseif { $TESTCOMMAND == "queryCalpontOnly" } {
set timeout 1200
log_user 1
exec ./remote_command_test.sh $SERVER $PASSWORD "./nightly/startQueryTesterCalpontOnly $SVN" "startQueryTester completed" "No such file" 1200
expect {
-re " " { exec ./remote_scp_get.sh $SERVER $PASSWORD "/root/$SVN/mysql/queries/queryTester_working_tpch1_calpontonly.report"
exec cat queryTester_working_tpch1_calpontonly.report >> $RUN_LOG_FILE
exec rm -f queryTester_working_tpch1_calpontonly.report} abort;
-re "FAILED" { exec echo "\nFailed to run queryTester\n" >> $RUN_LOG_FILE} abort;
-re "TIMEOUT" { exec echo "\nTimeout on run queryTester\n" >> $RUN_LOG_FILE} abort;
}
} elseif { $TESTCOMMAND == "DBimport" } {
set timeout 28800
log_user 1
exec ./remote_command_test.sh $SERVER $PASSWORD "./nightly/dbImport.sh $SVN" "dbImport completed" "No such file" $timeout
expect {
-re " " { exec ./remote_scp_get.sh $SERVER $PASSWORD "/root/$SVN/mysql/queries/nightly/qaftest2/go.log"
exec cat go.log >> $RUN_LOG_FILE
exec rm -f go.log} abort;
-re "FAILED" { exec echo "\nFailed to run dbImport\n" >> $RUN_LOG_FILE} abort;
-re "TIMEOUT" { exec echo "\nTimeout on run dbImport\n" >> $RUN_LOG_FILE} abort;
}
}
if { $TESTCOMMAND == "ImportSSB100" } {
set timeout 28800
log_user 1
exec ./remote_command_test.sh $SERVER $PASSWORD "./nightly/importSSB100.sh $SVN" "importSSB100 completed" "No such file" $timeout
expect {
-re " " {
exec ./remote_scp_get.sh $SERVER $PASSWORD "/root/$SVN/mysql/queries/nightly/srvalpha2/go.log"
exec cat go.log >> $RUN_LOG_FILE
exec rm -f go.log
} abort;
-re "FAILED" {
exec echo "\nFailed to run importSSB100\n" >> $RUN_LOG_FILE} abort;
-re "TIMEOUT" { exec echo "\nTimeout on run importSSB100\n" >> $RUN_LOG_FILE} abort;
}
} elseif { $TESTCOMMAND == "dml" } {
set timeout 60
log_user 1
exec ./remote_command_test.sh $SERVER $PASSWORD "./nightly/startQueryTesterDML $SVN" "startQueryTester completed" "No such file" 60
expect {
-re "FAILED" { send_user "FAILED\n"
exec echo "\nFailed to run queryTesterDML\n" >> $RUN_LOG_FILE};
-re "TIMEOUT" { send_user "TIMEOUT\n"
exec echo "\nTimeout on run queryTesterDML\n" >> $RUN_LOG_FILE};
-re " " { send_user "PASSED\n"
exec ./remote_scp_get.sh $SERVER $PASSWORD "/root/$SVN/mysql/queries/queryTesterDML.report"
exec cat queryTesterDML.report >> $RUN_LOG_FILE
exec rm -f queryTesterDML.report;
};
send_user "NOTHING\n"
}
} elseif { $TESTCOMMAND == "timings" } {
set timeout 60
log_user 1
exec ./remote_command_test.sh $SERVER $PASSWORD "/root/nightly/updateQueries $SVN" "updateQueries completed" "No such file" 60 1
set timeout 22000
exec ./remote_command_test.sh $SERVER $PASSWORD "/root/nightly/startTimingsTester $SVN" "startTimingsTester completed" "error" 22000 1
expect {
-re " " {
set REPORT demo
exec ./remote_scp_get.sh $SERVER $PASSWORD "/root/$SVN/mysql/queries/nightly/$REPORT/go.log"
exec cat go.log >> $RUN_LOG_FILE} abort;
-re "FAILED" { exec echo "\nFailed to run timings\n" >> $RUN_LOG_FILE} abort;
-re "TIMEOUT" { exec echo "\nTimeout on run timings\n" >> $RUN_LOG_FILE} abort;
}
} elseif { $TESTCOMMAND == "perfTests" } {
set timeout 22000
exec ./remote_command_test.sh $SERVER $PASSWORD "/root/nightly/startPerfTests $SVN" "startPerfTests completed" "error" 22000 1
expect {
-re " " {
set REPORT perf
exec ./remote_scp_get.sh $SERVER $PASSWORD "/root/$SVN/mysql/queries/nightly/$REPORT/go.log"
exec cat go.log >> $RUN_LOG_FILE} abort;
-re "FAILED" { echo "\nFailed to run timings\n" >> $RUN_LOG_FILE} abort;
-re "TIMEOUT" { exec echo "\nTimeout on run timings\n" >> $RUN_LOG_FILE} abort;
}
} elseif { $TESTCOMMAND == "dataWarehouse" } {
set timeout 5000000
exec ./remote_command_test.sh $SERVER $PASSWORD "/root/nightly/startDataWarehouseTests $SVN" "startDataWarehouseTests completed" "error" 5000000 1
expect {
-re " " {
set REPORT dataWarehouse
exec ./remote_scp_get.sh $SERVER $PASSWORD "/root/$SVN/mysql/queries/nightly/$REPORT/go.log"
exec cat go.log >> $RUN_LOG_FILE} abort;
-re "FAILED" { echo "\nFailed to run dataWarehouse\n" >> $RUN_LOG_FILE} abort;
-re "TIMEOUT" { exec echo "\nTimeout on dataWarehouse\n" >> $RUN_LOG_FILE} abort;
}
} elseif { $TESTCOMMAND == "calbench" } {
set timeout 22000
log_user 1
exec ./remote_command.sh $SERVER $PASSWORD "/home/calbench/AutomatedCalBench.sh " "EndAutomatedCalBench" "No such file" 22000 1
expect {
-re " " { exec echo "\n\nAutomatedCalBench.sh successfully started\n" >> $RUN_LOG_FILE} abort;
-re "FAILED" { exec echo "\nFailed to run AutomatedCalBench.sh\n" >> $RUN_LOG_FILE} abort;
-re "TIMEOUT" { exec echo "\nTimeout on run AutomatedCalBench.sh\n" >> $RUN_LOG_FILE} abort;
}
}
} else {
send_user "Test Failed, Testcase $TESTCASE not supported\n"
exec echo "Test Failed, Testcase $TESTCASE not supported" >> $RUN_LOG_FILE
}
}
#get current date
exec date >/tmp/datesync.tmp
exec cat /tmp/datesync.tmp
set newtime [exec cat /tmp/datesync.tmp]
exec echo "\n\n******************* Run Test $TESTCASE ended at $newtime **********************************\n\n" >> $RUN_LOG_FILE
sleep 10
}
}
set timeout 30
#get current date
exec date >/tmp/datesync.tmp
exec cat /tmp/datesync.tmp
set newtime [exec cat /tmp/datesync.tmp]
exec echo "\nBuild Test Successfully Completed $newtime\n\n" >> $RUN_LOG_FILE
#send report
log_user 0
if { $EMAIL != " " } {
puts [exec mail -s "$SYSTEM/$SVN Automated Build/Test Results" $EMAIL < $RUN_LOG_FILE]
send_user "email report sent\n"
} else {
log_user 1
send_user "Report located here: $RUN_LOG_FILE\n"
exec cat $RUN_LOG_FILE
}
send_user "\nBuild Test Completed\n"
exit

View File

@ -1,215 +0,0 @@
/* Copyright (C) 2014 InfiniDB, Inc.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; version 2 of
the License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA. */
/******************************************************************************************
* $Id: svnQuery.cpp 64 2006-10-12 22:21:51Z dhill $
*
*
*
******************************************************************************************/
/**
* @file
*/
#include <iterator>
#include <numeric>
#include <deque>
#include <iostream>
#include <ostream>
#include <fstream>
#include <cstdlib>
#include <string>
#include <limits.h>
#include <sstream>
#include <exception>
#include <stdexcept>
#include <vector>
#include "stdio.h"
#include "ctype.h"
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include "liboamcpp.h"
using namespace std;
using namespace oam;
int main(int argc, char* argv[])
{
Oam oam;
vector <string> queryDirectory;
vector <string> queryID;
// get latest set of svn queries
// system("rm -rf /root/genii/ > /dev/null 2>&1");
system("updateGenii.pl > /dev/null 2>&1");
system("rm -rf /home/qa/bldqry/mysql/* > /dev/null 2>&1");
string cronFile = "/root/calpontBuildTest";
unlink(cronFile.c_str());
// get query directory list
string topQueryfileName = "/tmp/topQuerydirs";
string secondQueryfileName = "/tmp/secondQuerydirs";
string queryfileName = "/home/qa/bldqry/mysql/querydirs";
string cmd = "ls /root/genii/mysql/queries/. > " + topQueryfileName;
system(cmd.c_str());
ifstream file (topQueryfileName.c_str());
if (!file)
{
cout << " Error: can't open " + topQueryfileName << endl;
exit (-1);
}
char line[200];
string topQueryDir;
while (file.getline(line, 200))
{
topQueryDir = line;
if ( topQueryDir.find("queryTester", 0) != string::npos || topQueryDir == "Makefile" )
continue;
// only do working queries for now
if ( topQueryDir.find("working", 0) == string::npos)
continue;
string cmd = "ls /root/genii/mysql/queries/" + topQueryDir + "/. > " + secondQueryfileName;
system(cmd.c_str());
ifstream file (secondQueryfileName.c_str());
if (file)
{
char line[200];
string buf;
while (file.getline(line, 200))
{
buf = line;
if ( buf.empty() )
continue;
string tempdir = topQueryDir + "/" + buf;
queryDirectory.push_back(tempdir);
}
}
file.close();
}
file.close();
if ( queryDirectory.size() == 0 )
{
cout << endl << "Error: no query sub-directories located" << endl;
exit (-1);
}
// get query list for each query directory
int test = 1;
std::vector<std::string>::iterator pt1 = queryDirectory.begin();
for ( ; pt1 != queryDirectory.end() ; pt1++)
{
string directory = *pt1;
string::size_type pos = directory.find("/", 0);
if (pos != string::npos)
{
string setName;
setName = directory.substr(0, pos);
setName = setName + "-";
setName = setName + directory.substr(pos + 1, 200);
string cmd = "cd /home/qa/bldqry/mysql/;echo " + setName + ".sql > " + oam.itoa(test) + ".txt";
system(cmd.c_str());
queryID.push_back(oam.itoa(test));
test++;
cmd = "rm -f /home/qa/bldqry/mysql/" + setName + ".sql";
system(cmd.c_str());
cmd = "cat /root/genii/mysql/queries/" + directory + "/*.sql >> /home/qa/bldqry/mysql/" + setName + ".sql";
system(cmd.c_str());
}
}
// setup calpontBuildTest cron job with directories
string cronFileTemplate = "/root/calpontBuildTest.template";
ifstream cfile (cronFileTemplate.c_str());
if (!cfile)
{
cout << endl << "Error: " + cronFileTemplate + " not found" << endl;
exit (-1);
}
vector <string> lines;
string newLine;
string buf;
while (cfile.getline(line, 200))
{
buf = line;
string::size_type pos = buf.find("buildTester", 0);
if (pos != string::npos)
{
newLine = buf;
pt1 = queryID.begin();
for ( ; pt1 != queryID.end() ; pt1++)
{
newLine.append(" mysql-");
newLine.append(*pt1);
}
newLine.append(" mysql-queryTester");
buf = newLine;
}
//output to temp file
lines.push_back(buf);
}
cfile.close();
ofstream newFile (cronFile.c_str());
//create new file
int fd = open(cronFile.c_str(), O_RDWR | O_CREAT, 0777);
copy(lines.begin(), lines.end(), ostream_iterator<string>(newFile, "\n"));
newFile.close();
close(fd);
cmd = "chmod 777 " + cronFile;
system(cmd.c_str());
}

View File

@ -1,73 +0,0 @@
/*
Creates the stacks table used to track availability / usage of our development stacks.
*/
create database if not exists stacks;
use stacks;
drop table if exists stacks;
drop table if exists stacksLog;
drop table if exists users;
CREATE TABLE `stacks` (
`stack` varchar(20) DEFAULT NULL,
`status` varchar(20) DEFAULT NULL,
`user` varchar(20) DEFAULT NULL,
`checkedout` datetime DEFAULT NULL,
`userModule` varchar(20) DEFAULT NULL,
`notes` varchar(200) default null,
`version` char(8)
) ENGINE=MyISAM;
insert into stacks values
('demo', 'Available', null, null, 'srvdemo1', '1 UM x 3 PMs', null),
('srvswdev11', 'Available', null, null, 'srvswdev11', '1 UM/PM', null),
('qaftest2', 'Available', null, null, 'qaftest2', '1 UM/PM', null),
('devint1', 'Available', null, null, 'srvperf7', '2 UM/PMs', null),
('devint2', 'Available', null, null, 'srvperf2', '1 UM x 3 PMs (Shared Nothing)', null),
('devint3', 'Available', null, null, 'srvperf3', '1 UM/PM (Shared Nothing)', null),
('devsn1', 'Available', null, null, 'srvdevsn1', '1 UM x 3 PMs (Shared Nothing)', null),
('devsn2', 'Available', null, null, 'srvdevsn5', '1 UM x 2 PMs (Shared Nothing)', null),
('devsn3', 'Available', null, null, 'srvdevsn8', '2 UM/PMs (Shared Nothing)', null),
('srvalpha2', 'Available', null, null, 'srvalpha2', '1 UM/PM', null),
('alphad03', 'Available', null, null, 'srvalpha4', '1 UM x 4 PMs', null),
('qperfd01', 'Available', null, null, 'qaftest7', '1 UM X 5 PMs', null),
('srvprodtest1', 'Available', null, null, 'srvprodtest1', '1 UM/PM',null, null);
CREATE TABLE stacksLog (
stack varchar(20),
user varchar(20),
checkedOut datetime,
checkedIn datetime,
source varchar(20) /* php or commandLine */
) ENGINE=MyISAM;
CREATE TABLE `users` (
`user` varchar(20) DEFAULT NULL,
`mailOnCheckouts` tinyint(1) DEFAULT NULL,
`mailOnCheckins` tinyint(1) DEFAULT NULL
) ENGINE=MyISAM;
insert into users values
('bpaul', false, false),
('chao', false, false),
('dcathey', false, false),
('dhill', false, false),
('pleblanc', false, false),
('rdempsey', false, false),
('wweeks', false, false),
('xlou', false, false),
('zzhu', false, false);
create table testResults (
test varchar(20),
stack varchar(20),
version varchar(10),
rel varchar(10),
start datetime,
stop datetime,
buildDtm varchar(30),
total int,
status varchar(8),
failedTests varchar(1000)
) engine=MyISAM;

View File

@ -1,38 +0,0 @@
<html>
<head>
<title>Automated Nightly Testing Logs</title>
</head>
<body>
<h1>Automated Nightly Testing Logs</h1>
<a href="autoOamRuns.php">Auto OAM Results</a><br>
<a href="nightlyResults.php">Nightly Results</a><br>
<br>
<a href="results.php?title=2.2 Build Results&logFile=/tmp/RHEL5-2.2.log">2.2 Build Results</a><br>
<a href="results.php?title=3.0 Build Results&logFile=/tmp/RHEL5-1-3.0.log">3.0 Build Results</a><br>
<a href="results.php?title=3.5 Build Results&logFile=/tmp/RHEL5-1-3.5.log">3.5 Build Results</a><br>
<a href="results.php?title=3.6 Build Results&logFile=/tmp/RHEL5-3.6.log">3.6 Build Results</a><br>
<a href="results.php?title=Trunk (4.0) Build Results&logFile=/tmp/RHEL5-genii.log">Trunk (4.0) Build Results</a><br>
<br>
<a href="results.php?title=devint3&logFile=/tmp/devint3-3.5.log">3.5 Nightly Regression Test - devint3</a><br>
<a href="results.php?title=srvdemo1&logFile=/tmp/demo01-3.5-mysql-timings.log">3.5 Performance Test - demo</a><br>
<a href="results.php?title=srvdemo1&logFile=/tmp/demo01-3.5-mysql-query.log">3.5 Nightly Regression Test - demo</a><br>
<a href="results.php?title=qaftest7&logFile=/tmp/qperfd01-3.5.log">3.5 Perf Stack Tests - qaftest7 (Mon, Wed, Fri, Sat night builds)</a><br>
<br>
<a href="results.php?title=srvperf2&logFile=/tmp/devint2-3.6.log">3.6 Nightly Regression Test - devint2</a><br>
<a href="results.php?title=srvalpha2&logFile=/tmp/ss2-3.6.log">3.6 Regression Test - srvalpha2</a><br>
<a href="results.php?title=srvalpha2&logFile=/tmp/ss2ImportSSB100-3.6.log">3.6 ssb100 Import Validation - srvalpha2</a><br>
<a href="results.php?title=qaftest2&logFile=/tmp/qaftest2-3.6-queryTester.log">3.6 Nightly Regression Test - qaftest2</a><br>
<a href="results.php?title=qaftest2&logFile=/tmp/qaftest2-3.6-tpch100Import.log">3.6 TPCH Import Test - qaftest2</a><br>
<a href="results.php?title=srvbldwin1&logFile=/tmp/srvbldwin1-3.6-queryTester.log">3.6 Windows Regression Test - srvbldwin1</a><br>
<br>
<a href="results.php?title=srvswdev11&logFile=/tmp/srvswdev11-genii.log">Trunk (4.0) Nightly Regression Test - srvswdev11</a><br>
<a href="results.php?title=srvalpha4&logFile=/tmp/srvalpha4-genii.log">Trunk (4.0) Nightly Regression Test - srvalpha4 (Cloudera)</a><br>
<a href="results.php?title=devint1&logFile=/tmp/devint1-genii.log">Trunk (4.0) Nightly Regression Test - devint1 (Cloudera)</a><br>
<a href="results.php?title=devint1Ssb100&logFile=/tmp/devint1-importSSB100-genii.log">Trunk (4.0) ssb100 Import Validation - devint1 (Cloudera)</a><br>
<a href="results.php?title=qaftest7&logFile=/tmp/qperfd01-genii-perfTests.log">Trunk (4.0) Perf Stack Tests - qaftest7 (Sun, Tue, Thu, Fri, Sat night builds)</a><br>
<a href="results.php?title=qaftest7&logFile=/tmp/qperfd01-genii-queryTester.log">Trunk (4.0) Nightly Regression Test - qaftest7</a><br>
<a href="results.php?title=srvdemo1&logFile=/tmp/demo01-genii-mysql-timings.log">Trunk Performance Test - demo (Sat, Sun)</a><br>
<a href="results.php?title=qaftest2&logFile=/tmp/qaftest2-genii-tpch100Import.log">Trunk TPCH Import Test - qaftest2</a><br>
<a href="results.php?title=srvbldwin1&logFile=/tmp/srvbldwin1-genii-queryTester.log">Trunk (4.0) Windows Regression Test - srvbldwin1</a><br>
</body>
</html>

View File

@ -1,184 +0,0 @@
/*
Creates stored procedures used to track availability and usage of our development stacks.
*/
use stacks;
drop procedure if exists list_stacks;
drop procedure if exists list_users;
drop procedure if exists reserve_stack;
drop procedure if exists reserve_stack2;
drop procedure if exists release_stack;
drop procedure if exists subscribe_checkins;
drop procedure if exists subscribe_checkouts;
DELIMITER //
/* Lists the stacks and their availability. */
create procedure list_stacks()
begin
select stack as Stack,
userModule as 'User Module',
status as Status,
ifnull(user, '') User,
ifnull(checkedout, '') 'Checked Out',
ifnull(timediff(now(), checkedout), '') Time,
ifnull(notes, '') Notes,
version Version
from stacks
order by stack;
end //
/* Lists the users. */
create procedure list_users()
begin
select * from users order by 1;
end //
create procedure reserve_stack(in inStack varchar(20), in inUser varchar(20))
begin
call reserve_stack2(inStack, inUser, 'commandLine');
end //
/* Reserves the given stack on behalf of the given user. */
create procedure reserve_stack2(in inStack varchar(20), in inUser varchar(20), in inSource varchar(20))
begin
declare cnt int default 0;
declare err varchar(100) default '';
/* Validate the stack exists. */
select count(*) into cnt from stacks where upper(stack) = upper(inStack);
if cnt <> 1 then
set err = concat(inStack, ' is not a valid stack.');
end if;
/* Validate that the stack is not already checked out unless the user is nightly in which case he gets it regardless of it */
/* being checked out. */
if lower(inUser) <> 'nightly' and err = '' then
select count(*) into cnt from stacks where status='Available' and upper(stack) = upper(inStack);
if cnt <> 1 then
set err = concat(inStack, ' is not available.');
end if;
end if;
/* Do the check out. */
if err = '' then
update stacks
set status='Checked Out', user=inUser, checkedout=now()
where upper(stack)=upper(inStack) and (status='Available' or lower(inUser)='nightly');
insert into stacksLog values (inStack, inUser, now(), null, inSource);
end if;
if err <> '' then
select err Status;
else
select concat(inStack, ' successfully checked out by ', inUser, '.') Status;
end if;
end //
/* Releases the given stack. Requires the passed user to be the one holding the reservation. */
create procedure release_stack(in inStack varchar(20), in inUser varchar(20))
begin
declare cnt int default 0;
declare err varchar(100) default '';
/* Validate the stack exists. */
select count(*) into cnt from stacks where upper(stack) = upper(inStack);
if cnt <> 1 then
set err = concat(inStack, ' is not a valid stack.');
end if;
/* Validate that the stack is checked out by the user. */
if err = '' then
select count(*) into cnt
from stacks
where status='Checked Out' and upper(stack) = upper(inStack) and upper(user) = upper(inUser);
if cnt <> 1 then
set err = concat(inStack, ' is not checked out by ', inUser, '.');
end if;
end if;
/* Update the row to release_stack the stack. */
if err = '' then
update stacks
set status='Available', user=null, checkedout=null
where upper(stack)=upper(inStack);
update stacksLog
set checkedIn=now()
where upper(stack) = upper(inStack) and checkedIn is null and upper(user) = upper(inUser);
end if;
if err <> '' then
select err Status;
else
select concat(inStack, ' successfully released.') Status;
end if;
end //
create procedure subscribe_checkins(in inUser varchar(20), in inSubscribe bool)
begin
declare cnt int default 0;
declare err varchar(100) default '';
/* Validate user. */
select count(*) into cnt from users where upper(user)=upper(inUser);
if cnt <> 1 then
set err = concat(inUser, ' is not a valid user.');
end if;
if err = '' then
if inSubscribe then
update users
set mailOnCheckins = true
where upper(user) = upper(inUser);
else
update users
set mailOnCheckins = false
where upper(user) = upper(inUser);
end if;
end if;
if err <> '' then
select err Status;
else
select concat(inUser, ' checkin mail setting successfully set.') Status;
end if;
end //
create procedure subscribe_checkouts(in inUser varchar(20), in inSubscribe bool)
begin
declare cnt int default 0;
declare err varchar(100) default '';
/* Validate user. */
select count(*) into cnt from users where upper(user)=upper(inUser);
if cnt < 1 then
set err = concat(inUser, ' is not a valid user.');
end if;
if err = '' then
if inSubscribe then
update users
set mailOnCheckouts = true
where upper(user) = upper(inUser);
else
update users
set mailOnCheckouts= false
where upper(user) = upper(inUser);
end if;
end if;
if err <> '' then
select err Status;
else
select concat(inUser, ' checkout mail setting successfully set.') Status;
end if;
end //
DELIMITER ;

View File

@ -1,21 +0,0 @@
<html>
<head><title><?php echo $_GET["title"]; ?></title></head>
<body>
<?php
echo "<pre>\n";
$file = fopen($_GET["logFile"], "r") or exit("Unable to open file!");
//Output a line of the file until the end is reached
while(!feof($file))
{
$line = fgets($file);
if (!preg_match('/ Failed *= 0/', $line))
$line = preg_replace('/ Failed/', ' <font color="red"><b>Failed</b></font>', $line);
$line = preg_replace('/ Passed/', ' <font color="green"><b>Passed</b></font>', $line);
$line = preg_replace('/ Yellow/', ' <font color="yellow"><b>Yellow</b></font>', $line);
echo $line;
}
fclose($file);
echo "</pre>\n";
?>
</body>
</html>

View File

@ -1,82 +0,0 @@
#!/bin/bash
# BP 09/16/2011 13:43
# This script will give user to
# list all the calpont stacks
# reserve a calpont stack
# release a calpont stack
# Help to use a test stack without stepping each other.
#
DB=stacks
usage()
{
echo "Usage:" >&2
echo " ${0##*/} list" >&2
echo " ${0##*/} reserve stackname who" >&2
echo " ${0##*/} release stackname who" >&2
}
cmd="$1"
argc=$#
if [ -z "$cmd" -o "$cmd" = "-h" ]; then
usage
exit 1
fi
if [ $(expr 'list' : "$cmd") -gt 0 ]; then
cmd=list
INST=$2
elif [ $(expr 'reserve' : "$cmd") -gt 2 ]; then
cmd=reserve
INST=$4
elif [ $(expr 'release' : "$cmd") -gt 2 ]; then
cmd=release
INST=$4
fi
if [ -z "$INSTALLDIR" ]; then
INSTALLDIR="/usr/local/mariadb/columnstore"
if [ $INST ]; then
INSTALLDIR=$INST
fi
export INSTALLDIR
fi
if [ -z "$MYSQLCMD" ]; then
if [ -d "$INSTALLDIR/mysql" ]; then
# Linux.
MYSQLCMD="$INSTALLDIR/mysql/bin/mysql -h 10.100.4.51 -u root --database=$DB"
else
# Windows.
MYSQLCMD="$INSTALLDIR/bin/mysql -h 10.100.4.51 -u root --database=$DB"
fi
export MYSQLCMD
fi
good=0
if [ "$cmd" = "list" ]; then
sql="call list_stacks()"
$MYSQLCMD -e "$sql"
good=1
fi
if [ "$cmd" = "reserve" -a $argc -ge 3 ]; then
sql="call reserve_stack('$2', '$3')"
$MYSQLCMD -e "$sql"
good=1
fi
if [ "$cmd" = "release" -a $argc -ge 3 ]; then
sql="call release_stack('$2', '$3')"
$MYSQLCMD -e "$sql"
good=1
fi
if [ $good -eq 0 ]; then
usage
exit 1
fi

View File

@ -1,106 +0,0 @@
<html>
<head>
<meta http-equiv="refresh" content="60" >
</head>
<body>
<?php
header('Cache-Control: no-cache, no-store, must-revalidate'); // HTTP 1.1.
header('Pragma: no-cache'); // HTTP 1.0.
header('Expires: 0'); // Proxies.
$con = mysql_connect('localhost','root','',false,65536);
mysql_select_db ("stacks");
$query="call list_stacks()";
/* $result=mysql_query("call list_stacks()"); */
$result=mysql_query($query)
or die(mysql_error());
$num=mysql_numrows($result);
mysql_close();
?>
User: <input id="userInput" value="<?php echo $_GET["user"]; ?>" />&nbsp;<button onClick="javascript:refresh();">Refresh</button>
<form action="stackReservationResult.php" method="post" id="form1">
<input type="hidden" name="stack" id="stack" value=""/>
<input type="hidden" name="action" id="action" value=""/>
<input type="hidden" name="user" id="user" value="<?php echo $_GET["user"]; ?>"/>
<br>
<table border="1" cellspacing="2" cellpadding="2">
<tr>
<th align=left><font face="Arial, Helvetica, sans-serif">&nbsp;</font></th>
<th align=left><font face="Arial, Helvetica, sans-serif">&nbsp;</font></th>
<th align=left><font face="Arial, Helvetica, sans-serif">Stack</font></th>
<th align=left><font face="Arial, Helvetica, sans-serif">User Module</font></th>
<th align=left><font face="Arial, Helvetica, sans-serif">Status</font></th>
<th align=left><font face="Arial, Helvetica, sans-serif">User</font></th>
<th align=left><font face="Arial, Helvetica, sans-serif">Checked Out</font></th>
<th align=left><font face="Arial, Helvetica, sans-serif">Time</font></th>
<th align=left><font face="Arial, Helvetica, sans-serif">Stack Notes</font></th>
<th align=left><font face="Arial, Helvetica, sans-serif">Version</font></th>
</tr>
<?php
$i=0;
while ($i < $num) {
$f3=mysql_result($result,$i,"stack");
$f4=mysql_result($result,$i,"user module");
$f5=mysql_result($result,$i,"status");
$f6=mysql_result($result,$i,"user");
$f7=mysql_result($result,$i,"checked out");
$f8=mysql_result($result,$i,"time");
$f9=mysql_result($result,$i,"notes");
$f10=mysql_result($result,$i,"version");
if($f5 == "Available") {
$f1 = "Reserve";
$f2 = "";
}
else if($f5 == "Checked Out" && $f6 == $_GET["user"]) {
$f1 = "";
$f2 = "Release";
}
else {
$f1="";
$f2="";
}
?>
<script type="text/javascript">
function submitForm(action, stack)
{
document.getElementById('stack').value=stack;
document.getElementById('action').value=action;
document.getElementById('user').value=document.getElementById('userInput').value;
document.getElementById('form1').submit();
}
function refresh()
{
window.location='stack.php?user=' + document.getElementById('userInput').value;
}
</script>
<tr>
<td><font face="Arial, Helvetica, sans-serif"><a href="javascript:submitForm('reserve', '<?php echo $f3; ?>');"><?php echo $f1; ?></a>&nbsp;&nbsp;&nbsp;</font></td>
<td><font face="Arial, Helvetica, sans-serif"><a href="javascript:submitForm('release', '<?php echo $f3; ?>');"><?php echo $f2; ?></a>&nbsp;&nbsp;&nbsp;</font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f3; ?>&nbsp;&nbsp;&nbsp;</font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f4; ?>&nbsp;&nbsp;&nbsp;</font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f5; ?>&nbsp;&nbsp;&nbsp;</font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f6; ?>&nbsp;&nbsp;&nbsp;</font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f7; ?>&nbsp;&nbsp;&nbsp;</font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f8; ?>&nbsp;&nbsp;&nbsp;</font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f9; ?>&nbsp;&nbsp;&nbsp;</font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f10; ?>&nbsp;&nbsp;&nbsp;</font></td>
</tr>
<?php
$i++;
}
?>
</table>
</form>
</body>
</html>

View File

@ -1,45 +0,0 @@
<html>
<head>
</head>
<body>
<?php
header('Cache-Control: no-cache, no-store, must-revalidate'); // HTTP 1.1.
header('Pragma: no-cache'); // HTTP 1.0.
header('Expires: 0'); // Proxies.
$con = mysql_connect('localhost','root','',false,65536);
mysql_select_db ("stacks");
/*
Reserve or release the stack if the user clicked a link to do said reservation wherefore art thou.
*/
$stack=$_POST["stack"];
$action=$_POST["action"];
$who=$_POST["user"];
if($stack != "" && $who != "") {
if($action=="reserve") {
$query="call reserve_stack2('" . $stack . "', '". $who . "', 'php');";
}
else {
$query="call release_stack('" . $stack . "', '". $who . "');";
}
$result = mysql_query($query) or die(mysql_error());
if($result) {
$line = mysql_result($result,0,"status");
if (stripos($line, 'not')) {
echo '<b><font color="red">';
}
else {
echo '<b><font color="green">';
}
echo $line;
echo '</font></b><br><br>';
}
}
mysql_close();
echo '<a href="stack.php?user=' . $who . '">Return to Stacks</a>';
?>
</body>
</html>

View File

@ -17,8 +17,8 @@ export COLUMNSTORE_INSTALL_DIR=$COLUMNSTORE_INSTALL_DIR
InstallDir=$COLUMNSTORE_INSTALL_DIR
if [ $InstallDir != "/usr/local/mariadb/columnstore" ]; then
export PATH=$InstallDir/bin:$InstallDir/mysql/bin:/bin:/usr/bin
export LD_LIBRARY_PATH=$InstallDir/lib:$InstallDir/mysql/lib
export PATH=$InstallDir/bin:/bin:/usr/bin
export LD_LIBRARY_PATH=$InstallDir/lib
fi
case "$1" in