You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafodion.apache.org by sv...@apache.org on 2019/02/01 18:49:33 UTC

[trafodion] branch master updated: [TRAFODION-2626] Change path of sqconf, ms.env, sqcert, udr and related files

This is an automated email from the ASF dual-hosted git repository.

svarnau pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafodion.git


The following commit(s) were added to refs/heads/master by this push:
     new 733befe  [TRAFODION-2626] Change path of sqconf, ms.env, sqcert, udr and related files
     new b02ee12  Merge pull request #1781 from svarnau/j2626_sqg
733befe is described below

commit 733befec4199ff0311497690a02cf6fe3fe38456
Author: Steve Varnau <st...@esgyn.com>
AuthorDate: Fri Jan 25 21:18:33 2019 +0000

    [TRAFODION-2626] Change path of sqconf, ms.env, sqcert, udr and related files
    
    This changeset covers the remaining instances of hard-coded paths based
    on TRAF_HOME for dynamic files that should be in specific paths such as
    TRAF_CONF or TRAF_VAR.
    
    All files referenced via TRAF_HOME should be read-only software, not written
    during run-time.
---
 core/dbsecurity/auth/src/ldapconfigfile.cpp        | 15 ++--
 core/dbsecurity/cert/src/secsrvr.cpp               |  6 +-
 core/dbsecurity/scripts/sqcertgen                  |  4 +-
 core/dbsecurity/scripts/update_auth                |  8 +--
 core/sqf/.gitignore                                |  5 --
 core/sqf/Makefile                                  |  4 +-
 core/sqf/build-scripts/package.exclude             |  3 -
 core/sqf/conf/trafodion.udr.config                 |  2 +-
 core/sqf/export/share/man/man1/createhooks.1       |  2 +-
 core/sqf/export/share/man/man1/sqgen.1             |  2 +-
 core/sqf/export/share/man/man1/sqinfo.1            |  8 +--
 core/sqf/monitor/linux/monitor.cxx                 | 15 +++-
 core/sqf/monitor/linux/process.cxx                 |  5 +-
 core/sqf/monitor/linux/shell.cxx                   | 11 ++-
 core/sqf/sqenvcom.sh                               |  6 +-
 core/sqf/sqinfo                                    | 24 +++----
 core/sqf/sql/scripts/bats/runsqlreg.virtual        |  3 +-
 core/sqf/sql/scripts/genmon                        |  2 +-
 core/sqf/sql/scripts/gensq.pl                      |  8 +--
 core/sqf/sql/scripts/gomon.cold                    |  6 +-
 core/sqf/sql/scripts/ilh_traf_restart              |  8 +--
 core/sqf/sql/scripts/ilh_trafinit                  |  8 +--
 core/sqf/sql/scripts/install_apache_hadoop         |  3 +-
 core/sqf/sql/scripts/install_local_hadoop          |  3 +-
 core/sqf/sql/scripts/makemsg.ksh                   |  4 +-
 core/sqf/sql/scripts/showConfigDb                  | 30 ++++----
 core/sqf/sql/scripts/sqconfig                      |  2 +-
 core/sqf/sql/scripts/sqconfigdb.pm                 |  2 +-
 core/sqf/sql/scripts/sqcore                        |  2 +-
 core/sqf/sql/scripts/sqgen                         | 84 ++++++++++++----------
 core/sqf/sql/scripts/sqshell                       |  4 +-
 core/sqf/sql/scripts/sqstart                       |  6 +-
 core/sqf/sql/scripts/sqstop                        | 10 +--
 core/sqf/sql/scripts/sqsystem.pm                   |  4 +-
 core/sqf/sql/scripts/trafnodestatus                |  6 +-
 core/sqf/src/seabed/src/env.cpp                    |  3 +
 core/sqf/src/seabed/src/env.h                      |  3 +
 core/sqf/src/seabed/src/ms.cpp                     | 12 ++--
 core/sqf/src/seabed/test/Makefile                  |  4 +-
 core/sqf/src/seabed/test/go69mon                   |  2 +-
 core/sqf/src/seabed/test/gocleandb                 |  4 +-
 core/sqf/src/seabed/test/gosetup                   |  8 +--
 core/sqf/src/seabed/test/gosetupcl3                |  4 +-
 core/sqf/src/tm/tools/run_dtmci                    |  6 +-
 core/sqf/src/trafconf/tcdbsqlite.cpp               |  2 +-
 core/sqf/tools/sqtools.sh                          | 10 +--
 core/sql/bin/ex_esp_main.cpp                       |  2 +-
 core/sql/cli/SessionDefaults.cpp                   |  4 +-
 core/sql/common/ComMisc.cpp                        |  4 +-
 core/sql/common/Ipc.cpp                            |  4 +-
 .../main/java/org/trafodion/libmgmt/FileMgmt.java  |  2 +-
 .../main/java/org/trafodion/libmgmt/JDBCUDR.java   |  4 +-
 .../java/org/trafodion/libmgmt/SyncLibUDF.java     |  4 +-
 core/sql/regress/tools/runallsb                    |  2 +-
 core/sql/regress/udr/TEST102                       |  4 +-
 core/sql/sqlcomp/nadefaults.cpp                    |  6 +-
 core/sql/sqludr/SqlUdrPredefLogReader.cpp          |  2 +-
 .../main/java/org/trafodion/sql/udr/LmUtility.java |  6 +-
 core/sql/ustat/USAS.sh                             | 10 +--
 .../src/asciidoc/_chapters/query_execution.adoc    |  4 +-
 60 files changed, 226 insertions(+), 205 deletions(-)

diff --git a/core/dbsecurity/auth/src/ldapconfigfile.cpp b/core/dbsecurity/auth/src/ldapconfigfile.cpp
index e4e0541..39b0fbf 100755
--- a/core/dbsecurity/auth/src/ldapconfigfile.cpp
+++ b/core/dbsecurity/auth/src/ldapconfigfile.cpp
@@ -512,8 +512,8 @@ static Check_Status checkRequiredAttributes(LDAPFileContents & config)
 // *       no other env variables are used if this is present                  *
 // * TRAFAUTH_CONFIGDIR -- If present, directory in which file will be found.  *
 // *       overrides any other defaults from below                             *
-// * TRAF_HOME -- Prefix for standard location:                                *
-// *       $TRAF_HOME/etc/.traf_authentication_config                          *
+// * TRAF_CONF -- Standard location:                                *
+// *       $TRAF_CONF/.traf_authentication_config                          *
 // *                                                                           *
 // * Our algorithm for picking the name/location for the config file is:       *
 // *  IF AUTHLDAP_CONFIGFILE is set to a non-empty string                      *
@@ -523,7 +523,7 @@ static Check_Status checkRequiredAttributes(LDAPFileContents & config)
 // *       the contents are used as the dir and .traf_authentication_config    *
 // *       is the name of the file in that dir                                 *
 // *    ELSE                                                                   *
-// *        use TRAF_HOME/etc/.traf_authentication_config                      *
+// *        use TRAF_CONF/.traf_authentication_config                      *
 // *                                                                           *
 // *****************************************************************************
 // *                                                                           *
@@ -537,7 +537,6 @@ static char *getAuthConfigFilename(void)
 
 {
 
-#define AUTH_CONFIG_FNAME_SUFFIX "/sql/scripts/.traf_authentication_config"
 #define AUTH_CONFIG_SIMPLE_NAME "/.traf_authentication_config"
 
    if (configFilename != NULL)
@@ -581,20 +580,20 @@ char *configFile = getenv("TRAFAUTH_CONFIGFILE");
    }    
 
 // If we get here the full name or the explicit directory were
-// not specified.  Append the name to the value of TRAF_HOME.
-char *sqRoot = getenv("TRAF_HOME"); //ACH changing for Trafodion?
+// not specified.  Append the name to the value of TRAF_CONF.
+char *sqRoot = getenv("TRAF_CONF"); //ACH changing for Trafodion?
 
    if (sqRoot == NULL || strlen(sqRoot) == 0)
       return configFilename;
 
-   bufSize = strlen(sqRoot) + strlen(AUTH_CONFIG_FNAME_SUFFIX) + 1;
+   bufSize = strlen(sqRoot) + strlen(AUTH_CONFIG_SIMPLE_NAME) + 1;
    configFilename = new char[bufSize];  
    if (configFilename == NULL)
       return configFilename;
 
    freeConfigFilename = true;
    strcpy(configFilename,sqRoot);
-   strcat(configFilename,AUTH_CONFIG_FNAME_SUFFIX);
+   strcat(configFilename,AUTH_CONFIG_SIMPLE_NAME);
    return configFilename;
    
 }
diff --git a/core/dbsecurity/cert/src/secsrvr.cpp b/core/dbsecurity/cert/src/secsrvr.cpp
index 72b9daa..6f388c1 100755
--- a/core/dbsecurity/cert/src/secsrvr.cpp
+++ b/core/dbsecurity/cert/src/secsrvr.cpp
@@ -227,7 +227,7 @@ static void SetupCertFilename()
    char *pub_filename = getenv("SQCERT_PUBKEY");
    char *clustername  = getenv("CLUSTERNAME");
    char *homedir  = getenv("HOME");
-   char *sqroot  = getenv("TRAF_HOME");
+   char *sqvar  = getenv("TRAF_VAR");
    char *certdir = getenv("SQCERT_DIR");
 
    // Get the Certificate directory and the filename
@@ -245,9 +245,9 @@ static void SetupCertFilename()
       else
       { // it's a workstation
 
-      if (sqroot != NULL)
+      if (sqvar != NULL)
       {
-         strncpy (privkey_file, sqroot, MS_MON_MAX_PROCESS_PATH);
+         strncpy (privkey_file, sqvar, MS_MON_MAX_PROCESS_PATH);
          privkey_file[MS_MON_MAX_PROCESS_PATH-1] = 0;
       }
       else
diff --git a/core/dbsecurity/scripts/sqcertgen b/core/dbsecurity/scripts/sqcertgen
index b8c57c2..4a79309 100755
--- a/core/dbsecurity/scripts/sqcertgen
+++ b/core/dbsecurity/scripts/sqcertgen
@@ -22,7 +22,7 @@
 # @@@ END COPYRIGHT @@@
 #
 
-CERTDIR=$TRAF_HOME/sqcert
+CERTDIR=$TRAF_VAR/sqcert
 CLUSTNAME=`echo $CLUSTERNAME`
 
 if (test -n "${CLUSTNAME}"); then
@@ -152,6 +152,8 @@ else
     options=$1
 fi
 
+cd $CERTDIR
+
 
 case $options in 
 server|ss|selfsigned)
diff --git a/core/dbsecurity/scripts/update_auth b/core/dbsecurity/scripts/update_auth
index 0f85bca..492e4c4 100755
--- a/core/dbsecurity/scripts/update_auth
+++ b/core/dbsecurity/scripts/update_auth
@@ -57,9 +57,9 @@ while [ $# -gt 0 ]; do
   shift
 done
 
-if [  -z $TRAF_HOME ]; then
+if [  -z $TRAF_VAR ]; then
   echo
-  echo "The TRAF_HOME environment variable does not exist."
+  echo "The TRAF_VAR environment variable does not exist."
   echo "Please ensure sqenv.sh has been sourced, and re-run $script_name."
   echo
   exit 1;
@@ -78,7 +78,7 @@ else
 fi
 
 #Create local folder for storing CA certicates
-SQCACERTS_DIR=$TRAF_HOME/cacerts
+SQCACERTS_DIR=$TRAF_VAR/cacerts
 if [ ! -d "$SQCACERTS_DIR" ]; then
   mkdir -p -m 700 $SQCACERTS_DIR;
 else
@@ -86,7 +86,7 @@ else
 fi
 
 #Create local folder for storing SQ certicates
-SQCERT_DIR=$TRAF_HOME/sqcert
+SQCERT_DIR=$TRAF_VAR/sqcert
 if [ ! -d "$SQCERT_DIR" ]; then
   mkdir -p -m 700 $SQCERT_DIR;
 else
diff --git a/core/sqf/.gitignore b/core/sqf/.gitignore
index f9c7191..350916f 100644
--- a/core/sqf/.gitignore
+++ b/core/sqf/.gitignore
@@ -31,9 +31,6 @@ Linux-x86_64/
 
 # from sql/scripts/makemsg.ksh
 /sql/scripts/SqlciErrors.*
-# from sqenv.sh
-/sql/scripts/mon.env
-/sql/scripts/shell.env
 # from dbsecurity
 /sql/scripts/sqcertgen
 /sql/scripts/update_auth
@@ -50,8 +47,6 @@ Linux-x86_64/
 # sqgen / sqstart
 /logs/
 /sqcert/
-/sql/scripts/sqconfig.db
-/sql/scripts/sqshell.env
 /tmp/
 
 # sql regressions
diff --git a/core/sqf/Makefile b/core/sqf/Makefile
index fe0977a..a21d3a8 100644
--- a/core/sqf/Makefile
+++ b/core/sqf/Makefile
@@ -370,7 +370,7 @@ packageinstaller:
 	chmod +x $(PKG_BIN)
 
 srcpackage:
-	-rm etc/ms.env
+	-rm $(TRAF_VAR)/ms.env
 	tar chzf ${SRC_PKG_TAR} -X build-scripts/package.exclude -X build-scripts/package.exclude.$(SQ_MBTYPE) .
 
 #	Targets to tar/gzip the regression tree
@@ -387,7 +387,7 @@ package-dcs:
 
 #	Targets to tar/gzip the self installer with sources
 srcpackagebin:
-	-rm etc/ms.env
+	-rm $(TRAF_VAR)/ms.env
 	cat $(TRAF_HOME)/sql/scripts/sqinstall > $(SRC_PKG_BIN)
 	echo "__ARCHIVE_BELOW__" >> $(SRC_PKG_BIN)
 	tar chzf - -X build-scripts/package.exclude -X build-scripts/package.exclude.$(SQ_MBTYPE) . >> $(SRC_PKG_BIN)
diff --git a/core/sqf/build-scripts/package.exclude b/core/sqf/build-scripts/package.exclude
index 1a56d80..78891b6 100644
--- a/core/sqf/build-scripts/package.exclude
+++ b/core/sqf/build-scripts/package.exclude
@@ -25,13 +25,10 @@ sql/scripts/gen_app_file.awk
 sql/scripts/gen_sm_app_file.sh
 sql/scripts/gen_sm_map.sh
 sql/scripts/init_bdr.sql 
-sql/scripts/mon.env
 sql/scripts/monitor
 sql/scripts/rmscheck.sql
-sql/scripts/sqshell.env
 sql/scripts/sq_ase.*
 sql/scripts/sq_tse.*
-sql/scripts/sqconfig.db
 sql/scripts/sqipcrm.out
 sql/scripts/sqstart.exit_status
 sql/scripts/sqstop.exit_status
diff --git a/core/sqf/conf/trafodion.udr.config b/core/sqf/conf/trafodion.udr.config
index c1b5841..30c896f 100644
--- a/core/sqf/conf/trafodion.udr.config
+++ b/core/sqf/conf/trafodion.udr.config
@@ -27,7 +27,7 @@
 # TRAFUDRCFG will override this default implementation of the property file.
 # Properties specfied are passed on to the JVM created by the TDM_UDRSERV
 # Can be overridden by env variable TRAF_UDR_JAVA_OPTIONS in 
-# $TRAF_HOME/etc/ms.env
+# $TRAF_VAR/ms.env
 # Incorrect property values or specification syntax can result in TDM_UDRSERV
 # not being able to initialize a JVM.
 # Properties must be specified in a section titled "java".
diff --git a/core/sqf/export/share/man/man1/createhooks.1 b/core/sqf/export/share/man/man1/createhooks.1
index dad675b..6538f81 100644
--- a/core/sqf/export/share/man/man1/createhooks.1
+++ b/core/sqf/export/share/man/man1/createhooks.1
@@ -31,4 +31,4 @@ createhooks \- create hook files
 .B createhooks
 will create hook files.
 .SH FILES
-$TRAF_HOME/etc/ms.env
+$TRAF_VAR/ms.env
diff --git a/core/sqf/export/share/man/man1/sqgen.1 b/core/sqf/export/share/man/man1/sqgen.1
index c5ce087..e685b30 100644
--- a/core/sqf/export/share/man/man1/sqgen.1
+++ b/core/sqf/export/share/man/man1/sqgen.1
@@ -49,7 +49,7 @@ will display help.
 .BI -perf
 will configure for performance benchmarks. 
 .SH FILES GENERATED
-$TRAF_HOME/etc/ms.env
+$TRAF_VAR/ms.env
 $MPI_TMPDIR/cluster.conf
 .LP
 $TRAF_HOME/sql/scripts/gomon.cold
diff --git a/core/sqf/export/share/man/man1/sqinfo.1 b/core/sqf/export/share/man/man1/sqinfo.1
index 55d4eed..d8a47e7 100644
--- a/core/sqf/export/share/man/man1/sqinfo.1
+++ b/core/sqf/export/share/man/man1/sqinfo.1
@@ -60,10 +60,10 @@ will display detailed SQ information.
 .br
 /proc/net/dev
 .br
-$TRAF_HOME/etc/ms.env
+$TRAF_VAR/ms.env
 .br
-$TRAF_HOME/sql/scripts/mon.env
+$TRAF_VAR/mon.env
 .br
-$TRAF_HOME/sql/scripts/shell.env
+$TRAF_VAR/shell.env
 .br
-$TRAF_HOME/sql/scripts/sqconfig
+$TRAF_CONF/sqconfig
diff --git a/core/sqf/monitor/linux/monitor.cxx b/core/sqf/monitor/linux/monitor.cxx
index 799fb61..d14590b 100755
--- a/core/sqf/monitor/linux/monitor.cxx
+++ b/core/sqf/monitor/linux/monitor.cxx
@@ -1375,11 +1375,22 @@ int main (int argc, char *argv[])
     if ( IsAgentMode || IsNameServer )
     {
         MON_Props xprops( true );
+        char *envfile;
+        env = getenv( "TRAF_CONF" );
+        if (env)
+        {
+           envfile = new char [strlen(env)+16];
+           strcpy(envfile, env);
+        } else {
+           envfile = new char [17];
+           strcpy(envfile, ".");
+        }
 #ifdef NAMESERVER_PROCESS
-        xprops.load( "nameserver.env" );
+        strcat(envfile, "/nameserver.env");
 #else
-        xprops.load( "monitor.env" );
+        strcat(envfile, "/monitor.env");
 #endif
+        xprops.load( envfile );
         MON_Smap_Enum xenum( &xprops );
         while ( xenum.more( ) )
         {
diff --git a/core/sqf/monitor/linux/process.cxx b/core/sqf/monitor/linux/process.cxx
index a39a589..c8b544c 100644
--- a/core/sqf/monitor/linux/process.cxx
+++ b/core/sqf/monitor/linux/process.cxx
@@ -2210,7 +2210,10 @@ bool CProcess::Create (CProcess *parent, void* tag, int & result)
     setEnvFromRegistry ( childEnv, nextEnv );
 
     xprops_exe_file = NULL;
-    xprops.load("mon.env");
+    char *envfile = new char [strlen(trafVar_.c_str())+9];
+    strcpy(envfile, trafVar_.c_str());
+    strcat(envfile, "/mon.env");
+    xprops.load(envfile);
     MON_Smap_Enum xenum(&xprops);
     if (xenum.more())
     {
diff --git a/core/sqf/monitor/linux/shell.cxx b/core/sqf/monitor/linux/shell.cxx
index 05369e3..1c80c10 100644
--- a/core/sqf/monitor/linux/shell.cxx
+++ b/core/sqf/monitor/linux/shell.cxx
@@ -2729,8 +2729,8 @@ int copy_config_db( char *node_name )
     char cmd[256];
     int  error = 0;
 
-    sprintf(cmd, "pdcp -p -w %s %s/sql/scripts/sqconfig.db %s/sql/scripts/.", node_name,
-              getenv("TRAF_HOME"), getenv("TRAF_HOME") );
+    sprintf(cmd, "pdcp -p -w %s %s/sqconfig.db %s/.", node_name,
+              getenv("TRAF_VAR"), getenv("TRAF_VAR") );
 
     error = system(cmd);
 
@@ -5610,6 +5610,7 @@ bool start_monitor( char *cmd_tail, bool warmstart, bool reintegrate )
     char np[6];
     char path[MAX_SEARCH_PATH];
     char sqroot[MAX_PROCESS_PATH];
+    char sqvar[MAX_PROCESS_PATH];
     pid_t os_pid;
     const char method_name[] = "start_monitor";
     // Set working directory for monitor if needed
@@ -5756,7 +5757,11 @@ bool start_monitor( char *cmd_tail, bool warmstart, bool reintegrate )
     // do it here so that variables can be overwritten
     char **xvals = NULL;
     MON_Props xprops(true);
-    xprops.load("shell.env");
+    strcpy (sqvar, getenv("TRAF_VAR"));
+    char *envfile = new char [strlen(sqvar)+11];
+    strcpy(envfile, sqvar);
+    strcat(envfile, "/shell.env");
+    xprops.load(envfile);
     MON_Smap_Enum xenum(&xprops);
     int xsize = xprops.size();
     int xinx;
diff --git a/core/sqf/sqenvcom.sh b/core/sqf/sqenvcom.sh
index 987d519..673d40f 100644
--- a/core/sqf/sqenvcom.sh
+++ b/core/sqf/sqenvcom.sh
@@ -226,8 +226,8 @@ fi
 # check for workstation env
 # want to make sure SQ_VIRTUAL_NODES is set in the shell running sqstart
 # so we can determine if we are on a workstation or not
-if [[ -e ${TRAF_HOME}/etc/ms.env ]] ; then
-  VIRT_NODES=$(awk '/SQ_VIRTUAL_NODES=/ { fields=split($0,virt,"=");  if ( fields == 2 ) { virtnodes=virt[2];}} END {print  virtnodes}' < $TRAF_HOME/etc/ms.env)
+if [[ -e ${TRAF_VAR}/ms.env ]] ; then
+  VIRT_NODES=$(awk '/SQ_VIRTUAL_NODES=/ { fields=split($0,virt,"=");  if ( fields == 2 ) { virtnodes=virt[2];}} END {print  virtnodes}' < $TRAF_VAR/ms.env)
   if [[ -n "$VIRT_NODES" ]] ; then
      export SQ_VIRTUAL_NODES="$VIRT_NODES"
   fi
@@ -964,7 +964,7 @@ This is not supported. To change environments, do the following:
   sqstop
   <make any changes, e.g. update Hadoop, HBase, MySQL>
   start a new shell and source in sqenv.sh
-  rm \$TRAF_HOME/etc/ms.env
+  rm \$TRAF_VAR/ms.env
   sqgen
   start a new shell and source in sqenv.sh
   sqstart
diff --git a/core/sqf/sqinfo b/core/sqf/sqinfo
index dd68282..856f3ad 100755
--- a/core/sqf/sqinfo
+++ b/core/sqf/sqinfo
@@ -88,20 +88,20 @@ function DO_ENV_INFO {
 		echo
 		echo "acquiring other environment info..."
 		if [ $sbi = 0 ]; then
-			if [ -r "$TRAF_HOME/sql/scripts/mon.env" ]; then
-				echo "sql/scripts/mon.env:"
-				cat $TRAF_HOME/sql/scripts/mon.env|grep -v '^#'|grep -v '^$'
+			if [ -r "$TRAF_VAR/mon.env" ]; then
+				echo "mon.env:"
+				cat $TRAF_VAR/mon.env|grep -v '^#'|grep -v '^$'
 				echo
 			fi
 		fi
-		if [ -r "$TRAF_HOME/sql/scripts/mon.env" ]; then
-			echo "sql/scripts/mon.env:"
-			cat $TRAF_HOME/sql/scripts/mon.env|grep -v '^#'|grep -v '^$'
+		if [ -r "$TRAF_VAR/mon.env" ]; then
+			echo "mon.env:"
+			cat $TRAF_VAR/mon.env|grep -v '^#'|grep -v '^$'
 			echo
 		fi
-		if [ -r "$TRAF_HOME/sql/scripts/shell.env" ]; then
-			echo "sql/scripts/shell.env:"
-			cat $TRAF_HOME/sql/scripts/shell.env|grep -v '^#'|grep -v '^$'
+		if [ -r "$TRAF_VAR/shell.env" ]; then
+			echo "shell.env:"
+			cat $TRAF_VAR/shell.env|grep -v '^#'|grep -v '^$'
 			echo
 		fi
 	fi
@@ -214,8 +214,8 @@ function DO_SQL_INFO {
 	echo
 	echo "acquiring sql info..."
 
-	if [ "$TRAF_HOME" ]; then
-		cfg=$TRAF_HOME/sql/scripts/sqconfig
+	if [ "$TRAF_CONF" ]; then
+		cfg=$TRAF_CONF/sqconfig
 		if [ -r "$cfg" ]; then
 			echo "cat $cfg:"
 			if [ $full = 1 ]; then
@@ -228,7 +228,7 @@ function DO_SQL_INFO {
 			return
 		fi
 	else
-		echo "\$TRAF_HOME not set"
+		echo "\$TRAF_CONF not set"
 		return
 	fi
 }
diff --git a/core/sqf/sql/scripts/bats/runsqlreg.virtual b/core/sqf/sql/scripts/bats/runsqlreg.virtual
index 6cc6d34..5c91b0d 100755
--- a/core/sqf/sql/scripts/bats/runsqlreg.virtual
+++ b/core/sqf/sql/scripts/bats/runsqlreg.virtual
@@ -24,7 +24,6 @@
 
 # This script rebuilds SQ environment
 
-cd $TRAF_HOME/sql/scripts
 echo $PWD
 echo "***"
 echo "*** Stopping SQ Environment"
@@ -35,7 +34,7 @@ ckillall
 echo "***"
 echo "*** Generating SQ Environment configuration"
 echo "***"
-sqgen sqconfig
+sqgen $TRAF_CONF/sqconfig
 cleandb
 
 echo "***"
diff --git a/core/sqf/sql/scripts/genmon b/core/sqf/sql/scripts/genmon
index a431197..1c401d4 100755
--- a/core/sqf/sql/scripts/genmon
+++ b/core/sqf/sql/scripts/genmon
@@ -21,4 +21,4 @@ echo "Generating mon.env"
 #
 # @@@ END COPYRIGHT @@@
 #
-echo "TRAF_HOME=$TRAF_HOME" > mon.env
+echo "TRAF_HOME=$TRAF_HOME" > $TRAF_VAR/mon.env
diff --git a/core/sqf/sql/scripts/gensq.pl b/core/sqf/sql/scripts/gensq.pl
index 3c89c34..f4b59e3 100755
--- a/core/sqf/sql/scripts/gensq.pl
+++ b/core/sqf/sql/scripts/gensq.pl
@@ -114,7 +114,7 @@ sub printInitialLines {
     printScript(1, "#!/bin/sh \n");
     printTime;
 
-#    $smenv = "$ENV{'SQETC_DIR'}/seamonster.env";
+#    $smenv = "$ENV{'TRAF_VAR'}/seamonster.env";
 #    if ( -e $smenv ) {
 #      print "\nThe SeaMonster environment variable file $smenv exists.\n";
 #      print "The file will not be re-generated.\n\n";
@@ -135,7 +135,7 @@ sub printInitialLines {
 #      close(ETC);
 #    }
 
-    $msenv = "$ENV{'SQETC_DIR'}/ms.env";
+    $msenv = "$ENV{'TRAF_VAR'}/ms.env";
 
     open (ETC,">>$msenv")
         or die("unable to open $msenv");
@@ -223,7 +223,7 @@ sub printOverflowLines {
         return;
     }
 
-    $msenv = "$ENV{'SQETC_DIR'}/ms.env";
+    $msenv = "$ENV{'TRAF_VAR'}/ms.env";
 
     open (ETC,">>$msenv")
         or die("unable to open $msenv");
@@ -558,7 +558,7 @@ sub openFiles {
 sub endGame {
 
     if ($bVirtualNodes == 1) {
-        open (SQSH,">$sqshell")
+        open (SQSH,">$ENV{'TRAF_VAR'}/$sqshell")
             or die("unable to open $sqshell");
         printInitLinesAuxFiles (SQSH);
 
diff --git a/core/sqf/sql/scripts/gomon.cold b/core/sqf/sql/scripts/gomon.cold
index 7a251d4..e72572c 100755
--- a/core/sqf/sql/scripts/gomon.cold
+++ b/core/sqf/sql/scripts/gomon.cold
@@ -23,8 +23,8 @@
 # @@@ END COPYRIGHT @@@
 #
 
-if [ -f $TRAF_HOME/sql/scripts/sqshell.env ]; then
-    . $TRAF_HOME/sql/scripts/sqshell.env
+if [ -f $TRAF_VAR/sqshell.env ]; then
+    . $TRAF_VAR/sqshell.env
 fi
 
 if [[ -z ${TRAF_AGENT} ]]; then
@@ -117,7 +117,7 @@ fi
 sqshell -c node info
 
 # If the 'shell.env' file does not exist, we are in a real cluster
-if [ -e $TRAF_HOME/sql/scripts/sqshell.env ]; then
+if [ -e $TRAF_VAR/sqshell.env ]; then
    sqshell -c set CLUSTERNAME=$CLUSTERNAME
 fi
 
diff --git a/core/sqf/sql/scripts/ilh_traf_restart b/core/sqf/sql/scripts/ilh_traf_restart
index 8ad7517..36de24a 100755
--- a/core/sqf/sql/scripts/ilh_traf_restart
+++ b/core/sqf/sql/scripts/ilh_traf_restart
@@ -30,7 +30,7 @@
 # - Restarts HBase
 # - Repairs HBase (ilh_hbase_repair)
 # - Checks whether HBase is ready (uses ilh_hbcheck)
-# - Deletes the Trafodion env file: $TRAF_HOME/etc/ms.env
+# - Deletes the Trafodion env file: $TRAF_VAR/ms.env
 # - Regenerates Config (sqgen)
 # - Starts up Trafodion (sqstart)
 #
@@ -51,7 +51,7 @@ echo 'This script will do the following:'
 echo ' - Kill the Trafodion env (pkillall)'
 echo " - Kill the HBase env and delete the zookeeper data directory (ilh_cleanhb ${lv_ilh_cleanhb_mode})"
 echo ' - Restart HBase (swstarthbase)'
-echo ' - Delete the env file: $TRAF_HOME/etc/ms.env'
+echo ' - Delete the env file: $TRAF_VAR/ms.env'
 echo ' - sqgen'
 echo ' - sqstart'
 
@@ -98,8 +98,8 @@ echo "Repairing HBase (hbase hbck -repair)"
 ilh_hbase_repair y
 
 echo "--------------------------------------"
-echo "deleting $TRAF_HOME/etc/ms.env"
-rm $TRAF_HOME/etc/ms.env
+echo "deleting $TRAF_VAR/ms.env"
+rm $TRAF_VAR/ms.env
 
 run_util sqgen
 
diff --git a/core/sqf/sql/scripts/ilh_trafinit b/core/sqf/sql/scripts/ilh_trafinit
index 8ee47eb..d1d35af 100755
--- a/core/sqf/sql/scripts/ilh_trafinit
+++ b/core/sqf/sql/scripts/ilh_trafinit
@@ -29,7 +29,7 @@
 #   (uses ilh_cleanhb)
 # - Restarts HBase
 # - Checks whether HBase is ready (uses ilh_hbcheck)
-# - Deletes the Trafodion env file: $TRAF_HOME/etc/ms.env
+# - Deletes the Trafodion env file: $TRAF_VAR/ms.env
 # - Regenerates Config (sqgen)
 # - Starts up Trafodion (sqstart)
 # - Initializes Trafodion (sqlci -> initialize trafodion)
@@ -49,7 +49,7 @@ echo 'This script will do the following:'
 echo ' - Kill the Trafodion env (pkillall)'
 echo ' - Kill the HBase env and Delete the HDFS data directory associated with HBase (ilh_cleanhb 2)'
 echo ' - Restart HBase (swstarthbase)'
-echo ' - Delete the env file: $TRAF_HOME/etc/ms.env'
+echo ' - Delete the env file: $TRAF_VAR/ms.env'
 echo ' - sqgen'
 echo ' - sqstart'
 echo ' - sqlci -> initialize trafodion'
@@ -85,8 +85,8 @@ else
     run_util ilh_hbcheck
 fi
 
-echo "deleting $TRAF_HOME/etc/ms.env"
-rm $TRAF_HOME/etc/ms.env
+echo "deleting $TRAF_VAR/ms.env"
+rm $TRAF_VAR/ms.env
 
 run_util sqgen
 
diff --git a/core/sqf/sql/scripts/install_apache_hadoop b/core/sqf/sql/scripts/install_apache_hadoop
index dbbbd4e..4058bb8 100755
--- a/core/sqf/sql/scripts/install_apache_hadoop
+++ b/core/sqf/sql/scripts/install_apache_hadoop
@@ -881,8 +881,7 @@ EOF
 EOF
 
 
-  mkdir -p $TRAF_HOME/etc
-  SYSTEM_DEFAULTS_TEXT_FILE=$TRAF_HOME/etc/SQSystemDefaults.conf
+  SYSTEM_DEFAULTS_TEXT_FILE=$TRAF_CONF/SQSystemDefaults.conf
 
   # alternative method for open source build, system defaults in a text file
   cat <<EOF >${SYSTEM_DEFAULTS_TEXT_FILE}.temp
diff --git a/core/sqf/sql/scripts/install_local_hadoop b/core/sqf/sql/scripts/install_local_hadoop
index 9a2376b..3f7a4a3 100755
--- a/core/sqf/sql/scripts/install_local_hadoop
+++ b/core/sqf/sql/scripts/install_local_hadoop
@@ -1006,8 +1006,7 @@ EOF
 EOF
 
 
-  mkdir -p $TRAF_HOME/etc
-  SYSTEM_DEFAULTS_TEXT_FILE=$TRAF_HOME/etc/SQSystemDefaults.conf
+  SYSTEM_DEFAULTS_TEXT_FILE=$TRAF_CONF/SQSystemDefaults.conf
 
   # alternative method for open source build, system defaults in a text file
   cat <<EOF >${SYSTEM_DEFAULTS_TEXT_FILE}.temp
diff --git a/core/sqf/sql/scripts/makemsg.ksh b/core/sqf/sql/scripts/makemsg.ksh
index 8079ac1..732eba6 100755
--- a/core/sqf/sql/scripts/makemsg.ksh
+++ b/core/sqf/sql/scripts/makemsg.ksh
@@ -23,7 +23,7 @@
 #
 function GetSQcnfg {
 # Get SQ Node configuration
- TempList=`grep -o 'node-name=.[^A-Za-z].[0-9]*' $TRAF_HOME/sql/scripts/sqconfig | cut -d "=" -f 2 | cut -d ";" -f 1 | sort -u`
+ TempList=`grep -o 'node-name=.[^A-Za-z].[0-9]*' $TRAF_CONF/sqconfig | cut -d "=" -f 2 | cut -d ";" -f 1 | sort -u`
 
  i=0
  for NODE in $TempList
@@ -43,7 +43,7 @@ function GetSQcnfg {
  
  else
      echo
-     echo "Could not parse $TRAF_HOME/sql/scripts/sqconfig file."
+     echo "Could not parse $TRAF_CONF/sqconfig file."
      echo "Please ensure sqenv.sh has been sourced and the sqconfig file is valid.  Then, re-run sqgen."
      echo
      exit 1;
diff --git a/core/sqf/sql/scripts/showConfigDb b/core/sqf/sql/scripts/showConfigDb
index a2c59d0..4201c4f 100755
--- a/core/sqf/sql/scripts/showConfigDb
+++ b/core/sqf/sql/scripts/showConfigDb
@@ -44,7 +44,7 @@ function monRegClusterData
 {
 
 # Monitor registry: cluster keys and values
-sqlite3 sqconfig.db <<EOF
+sqlite3 $TRAF_VAR/sqconfig.db <<EOF
 .separator ""
 .headers on
 .mode list
@@ -59,7 +59,7 @@ function monNodeSpecificConfig
 
 # Node configuration: for specific node
 
-sqlite3 sqconfig.db <<EOF
+sqlite3 $TRAF_VAR/sqconfig.db <<EOF
 .separator ""
 .headers on
 .mode list
@@ -94,7 +94,7 @@ function monNodeConfig
 
 # Node configuration: for all nodes
 
-sqlite3 sqconfig.db <<EOF
+sqlite3 $TRAF_VAR/sqconfig.db <<EOF
 .separator ""
 .headers on
 .mode list
@@ -110,7 +110,7 @@ select "nid=", l.lNid \
 EOF
 
 echo "Spare nodes:"
-sqlite3 sqconfig.db <<EOF
+sqlite3 $TRAF_VAR/sqconfig.db <<EOF
 .separator ""
 .headers on
 .mode list
@@ -124,7 +124,7 @@ select "pnid=", s.pNid \
 EOF
 
 echo "Excluded cores nodes:"
-sqlite3 sqconfig.db <<EOF
+sqlite3 $TRAF_VAR/sqconfig.db <<EOF
 .separator ""
 .headers on
 .mode list
@@ -143,7 +143,7 @@ function monLNodeSpecificConfig
 
 # Logical Node configuration: for specific node
 
-sqlite3 sqconfig.db <<EOF
+sqlite3 $TRAF_VAR/sqconfig.db <<EOF
 .separator ""
 .headers on
 .mode list
@@ -164,7 +164,7 @@ function monLNodeConfig
 
 # Node configuration: for all nodes
 
-sqlite3 sqconfig.db <<EOF
+sqlite3 $TRAF_VAR/sqconfig.db <<EOF
 .separator ""
 .headers on
 .mode list
@@ -184,7 +184,7 @@ function monSNodeSpecificConfig
 
 # Spare Node configuration: for specific node
 
-sqlite3 sqconfig.db <<EOF
+sqlite3 $TRAF_VAR/sqconfig.db <<EOF
 .separator ""
 .headers on
 .mode list
@@ -204,7 +204,7 @@ function monSNodeConfig
 
 # Spare Node configuration: for all nodes
 
-sqlite3 sqconfig.db <<EOF
+sqlite3 $TRAF_VAR/sqconfig.db <<EOF
 .separator ""
 .headers on
 .mode list
@@ -223,7 +223,7 @@ function monPNodeSpecificConfig
 
 # Physical Node configuration: for specific node
 
-sqlite3 sqconfig.db <<EOF
+sqlite3 $TRAF_VAR/sqconfig.db <<EOF
 .separator ""
 .headers on
 .mode list
@@ -242,7 +242,7 @@ function monPNodeConfig
 
 # Physical Node configuration: for all nodes
 
-sqlite3 sqconfig.db <<EOF
+sqlite3 $TRAF_VAR/sqconfig.db <<EOF
 .separator ""
 .headers on
 .mode list
@@ -260,7 +260,7 @@ function monRegSpecificProcData
 
 # Monitor registry: process keys and values for a specific process
 
-sqlite3 sqconfig.db <<EOF
+sqlite3 $TRAF_VAR/sqconfig.db <<EOF
 .separator ""
 .headers on
 .mode list
@@ -274,7 +274,7 @@ function monRegProcData
 {
 
 # Monitor registry: process keys and values
-sqlite3 sqconfig.db <<EOF
+sqlite3 $TRAF_VAR/sqconfig.db <<EOF
 .separator ""
 .headers on
 .mode list
@@ -287,7 +287,7 @@ EOF
 function persistentData
 {
 
-sqlite3 sqconfig.db <<EOF
+sqlite3 $TRAF_VAR/sqconfig.db <<EOF
 .headers on
 select * from monRegPersistData;
 EOF
@@ -297,7 +297,7 @@ EOF
 function uniqueStrings
 {
 
-sqlite3 sqconfig.db <<EOF
+sqlite3 $TRAF_VAR/sqconfig.db <<EOF
 .headers on
 select * from monRegUniqueStrings;
 EOF
diff --git a/core/sqf/sql/scripts/sqconfig b/core/sqf/sql/scripts/sqconfig
index c45896f..e5a126c 100644
--- a/core/sqf/sql/scripts/sqconfig
+++ b/core/sqf/sql/scripts/sqconfig
@@ -44,6 +44,6 @@ end name-server
 #
 ###############################################################################
 begin overflow
-hdd $TRAF_HOME/tmp
+hdd $TRAF_VAR
 #ssd /ssd/directory
 end overflow
diff --git a/core/sqf/sql/scripts/sqconfigdb.pm b/core/sqf/sql/scripts/sqconfigdb.pm
index 517a0c8..567639c 100644
--- a/core/sqf/sql/scripts/sqconfigdb.pm
+++ b/core/sqf/sql/scripts/sqconfigdb.pm
@@ -363,7 +363,7 @@ sub openDb {
                   RaiseError => 1,
                   PrintError => 0,
                   ShowErrorStatement => 1};
-    $DBH = DBI->connect("dbi:SQLite:dbname=sqconfig.db","","",$dbargs);
+    $DBH = DBI->connect("dbi:SQLite:dbname=$ENV{'TRAF_VAR'}/sqconfig.db","","",$dbargs);
 #   Disable database synchronization (fsync) because it slows down writes
 #   too much.
     $DBH->do("PRAGMA synchronous = OFF");
diff --git a/core/sqf/sql/scripts/sqcore b/core/sqf/sql/scripts/sqcore
index abe0838..fa5ceeb 100755
--- a/core/sqf/sql/scripts/sqcore
+++ b/core/sqf/sql/scripts/sqcore
@@ -134,7 +134,7 @@ fi
 # The following can be used to pull the database locations from the sqconfig file,
 # which assumes that the file is correctly configured. Note, that if used the zero-based
 # node calculation should be un-commented from the below "if" statement.
-#dirlist=`grep database $TRAF_HOME/sql/scripts/sqconfig | /bin/gawk '{print $2"$"$3"/"$1}'; $SQ_PDSH -a "find -L $TRAF_HOME/sql -name core\.\* | /bin/gawk -F\/core '{print \\\$1}' | uniq" | /bin/gawk '{sub(":",""); print substr($1,2)"$"$2}'`
+#dirlist=`grep database $TRAF_CONF/sqconfig | /bin/gawk '{print $2"$"$3"/"$1}'; $SQ_PDSH -a "find -L $TRAF_HOME/sql -name core\.\* | /bin/gawk -F\/core '{print \\\$1}' | uniq" | /bin/gawk '{sub(":",""); print substr($1,2)"$"$2}'`
 
 MY_NODES_PRM=" -a "
 if [ -n "$MY_NODES" ];then
diff --git a/core/sqf/sql/scripts/sqgen b/core/sqf/sql/scripts/sqgen
index 768f562..a851a8d 100755
--- a/core/sqf/sql/scripts/sqgen
+++ b/core/sqf/sql/scripts/sqgen
@@ -23,15 +23,17 @@
 #
 # sqgen script - generates various files
 
+SQCONFIG_FILE=$TRAF_CONF/sqconfig
+
 function Usage {
     script_name=`/bin/basename $0`
     echo
-    echo $script_name generates various Trafodion files in the $TRAF_HOME/sql/scripts directory.
+    echo $script_name generates various Trafodion files in the $TRAF_VAR directory.
     echo
     echo "Usage: $script_name [ -? | -h ] [<sqconfig_filename>]"
     echo "  -?    Help"
     echo "  -h    Help"
-    echo "  <sqconfig_filename> Name of the SQ config file (in $TRAF_HOME/sql/scripts directory)(defaults to 'sqconfig')"
+    echo "  <sqconfig_filename> Name of the SQ config file (defaults to $SQCONFIG_FILE)"
     echo
     exit 1;
 }
@@ -40,7 +42,7 @@ function Usage {
 
 function GetSQcnfg {
    # Get SQ Node configuration
-   TempList=`grep -o 'node-name=.[A-Za-z0-9\.\-]*' $TRAF_HOME/sql/scripts/sqconfig | cut -d "=" -f 2 | cut -d ";" -f 1 | sort -u`
+   TempList=`grep -o 'node-name=.[A-Za-z0-9\.\-]*' $SQCONFIG_FILE | cut -d "=" -f 2 | cut -d ";" -f 1 | sort -u`
 
    i=0
    for NODE in $TempList
@@ -58,7 +60,7 @@ function GetSQcnfg {
       echo "${ExNodeList[@]}"
    else
       echo
-      echo "Could not parse $TRAF_HOME/sql/scripts/sqconfig file."
+      echo "Could not parse $SQCONFIG_FILE file."
       echo "Please ensure sqenv.sh has been sourced and the sqconfig file is valid.  Then, re-run sqgen."
       echo
       exit 1;
@@ -71,8 +73,7 @@ function GetSQcnfg {
 
 FT_FLAG=1
 PERF_FLAG=0
-SQCONFIG_FILE=sqconfig
-SQCONFIG_DB_FILE=sqconfig.db
+SQCONFIG_DB_FILE=$TRAF_VAR/sqconfig.db
 
 if [ -z $TRAF_HOME ]; then
     echo
@@ -177,9 +178,14 @@ while [ $# != 0 ]
     shift
   done
 
-export SQETC_DIR=$TRAF_HOME/etc
+if [[ ! -f $SQCONFIG_FILE ]]
+then
+  echo "Using default sqconfig file"
+  cp -f $TRAF_HOME/sql/scripts/sqconfig $SQCONFIG_FILE
+fi
+
 export SQLOG_DIR=$TRAF_LOG
-mkdir -p $SQETC_DIR
+mkdir -p $TRAF_VAR
 mkdir -p $SQLOG_DIR
 mkdir -p $MPI_TMPDIR
 mkdir -p $MPI_TMPDIR/tmp
@@ -200,8 +206,8 @@ if [[ -z ${TRAF_AGENT} ]]; then
         # Clean HBase classpath cache file on all nodes
         $PDSH -w ${ExNodeList[@]} -x `uname -n` $PDSH_SSH_CMD rm -rf $TRAF_VAR/hbase_classpath
 
-        echo "$PDSH -w ${ExNodeList[@]} -x `uname -n` $PDSH_SSH_CMD mkdir -p $SQETC_DIR "
-        $PDSH -w ${ExNodeList[@]} -x `uname -n` $PDSH_SSH_CMD mkdir -p $SQETC_DIR
+        echo "$PDSH -w ${ExNodeList[@]} -x `uname -n` $PDSH_SSH_CMD mkdir -p $TRAF_VAR "
+        $PDSH -w ${ExNodeList[@]} -x `uname -n` $PDSH_SSH_CMD mkdir -p $TRAF_VAR
         
         echo "$PDSH -w ${ExNodeList[@]} -x `uname -n` $PDSH_SSH_CMD mkdir -p $SQLOG_DIR "
         $PDSH -w ${ExNodeList[@]} -x `uname -n` $PDSH_SSH_CMD mkdir -p $SQLOG_DIR
@@ -219,17 +225,17 @@ if [[ -z ${TRAF_AGENT} ]]; then
 fi
 
 SQSCRIPT_FILE=./gomon
-SQESPENV_FILE=$TRAF_HOME/sql/scripts/tdm_arkesp.env
+SQESPENV_FILE=$TRAF_VAR/tdm_arkesp.env
 
 echo
-if [ -f $SQETC_DIR/ms.env ]; then
-    echo "The SQ environment variable file $SQETC_DIR/ms.env exists."
+if [ -f $TRAF_VAR/ms.env ]; then
+    echo "The SQ environment variable file $TRAF_VAR/ms.env exists."
     echo "The file will not be re-generated."
     echo
 else
-    echo "Generating SQ environment variable file: $SQETC_DIR/ms.env"
+    echo "Generating SQ environment variable file: $TRAF_VAR/ms.env"
     echo
-    ./genms > $SQETC_DIR/ms.env
+    ./genms > $TRAF_VAR/ms.env
     lv_retcode=$?
     if [[ $lv_retcode != 0 ]]; then 
         echo "Error $lv_retcode while executing genms. Exiting..."
@@ -237,7 +243,7 @@ else
     fi
 fi
 
-./gensqstatem2lenv > $SQETC_DIR/sqstatem2l.env
+./gensqstatem2lenv > $TRAF_VAR/sqstatem2l.env
 
 # Create configuration database tables
 sqlite3 -init createConfigDb $SQCONFIG_DB_FILE <<eof 
@@ -254,24 +260,24 @@ sq_seamonster=$SQ_SEAMONSTER
 if [ -f $SQESPENV_FILE ]; then
     if [[ $sq_seamonster == 1 ]]; then 
         echo
-        echo "Enabling tdm_arkesp.env file in $TRAF_HOME/etc/ms.env"
-        echo "cat $TRAF_HOME/etc/ms.env | sed -e "s@^# SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@" > $TRAF_HOME/etc/ms.env.TEMP"
-        if [ -f $TRAF_HOME/etc/ms.env.TEMP ]; then
-            rm $TRAF_HOME/etc/ms.env.TEMP
+        echo "Enabling tdm_arkesp.env file in $TRAF_VAR/ms.env"
+        echo "cat $TRAF_VAR/ms.env | sed -e "s@^# SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@" > $TRAF_VAR/ms.env.TEMP"
+        if [ -f $TRAF_VAR/ms.env.TEMP ]; then
+            rm $TRAF_VAR/ms.env.TEMP
         fi
-        cat $TRAF_HOME/etc/ms.env | sed -e "s@^# SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@" > $TRAF_HOME/etc/ms.env.TEMP
-        cp $TRAF_HOME/etc/ms.env.TEMP $TRAF_HOME/etc/ms.env
-        rm $TRAF_HOME/etc/ms.env.TEMP
+        cat $TRAF_VAR/ms.env | sed -e "s@^# SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@" > $TRAF_VAR/ms.env.TEMP
+        cp $TRAF_VAR/ms.env.TEMP $TRAF_VAR/ms.env
+        rm $TRAF_VAR/ms.env.TEMP
     else
         echo
-        echo "Disabling tdm_arkesp.env file in $TRAF_HOME/etc/ms.env"
-        echo "cat $TRAF_HOME/etc/ms.env | sed -e "s@^SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@# SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@" > $TRAF_HOME/etc/ms.env.TEMP"
-        if [ -f $TRAF_HOME/etc/ms.env.TEMP ]; then
-            rm $TRAF_HOME/etc/ms.env.TEMP
+        echo "Disabling tdm_arkesp.env file in $TRAF_VAR/ms.env"
+        echo "cat $TRAF_VAR/ms.env | sed -e "s@^SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@# SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@" > $TRAF_VAR/ms.env.TEMP"
+        if [ -f $TRAF_VAR/ms.env.TEMP ]; then
+            rm $TRAF_VAR/ms.env.TEMP
         fi
-        cat $TRAF_HOME/etc/ms.env | sed -e "s@^SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@# SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@" > $TRAF_HOME/etc/ms.env.TEMP
-        cp $TRAF_HOME/etc/ms.env.TEMP $TRAF_HOME/etc/ms.env
-        rm $TRAF_HOME/etc/ms.env.TEMP
+        cat $TRAF_VAR/ms.env | sed -e "s@^SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@# SQ_PROPS_TDM_ARKESP=tdm_arkesp.env@" > $TRAF_VAR/ms.env.TEMP
+        cp $TRAF_VAR/ms.env.TEMP $TRAF_VAR/ms.env
+        rm $TRAF_VAR/ms.env.TEMP
     fi
 fi
 
@@ -282,22 +288,22 @@ if [[ -z ${TRAF_AGENT} ]]; then
         echo
         echo "Copying the generated files to all the nodes in the cluster"
         echo
-        echo "Copying $SQETC_DIR/ms.env to $SQETC_DIR of all the nodes"
-        echo "$PDCP -w ${ExNodeList[@]} -x `uname -n` $SQETC_DIR/ms.env   $SQETC_DIR "
-        $PDCP -w ${ExNodeList[@]} -x `uname -n` $SQETC_DIR/ms.env   $SQETC_DIR
+        echo "Copying $TRAF_VAR/ms.env to $TRAF_VAR of all the nodes"
+        echo "$PDCP -w ${ExNodeList[@]} -x `uname -n` $TRAF_VAR/ms.env   $TRAF_VAR "
+        $PDCP -w ${ExNodeList[@]} -x `uname -n` $TRAF_VAR/ms.env   $TRAF_VAR
 
 
         echo
-        echo "Copying $SQETC_DIR/seamonster.env to $SQETC_DIR of all the nodes"
-        echo "$PDCP -w ${ExNodeList[@]} -x `uname -n` $SQETC_DIR/seamonster.env   $SQETC_DIR "
-        $PDCP -w ${ExNodeList[@]} -x `uname -n` $SQETC_DIR/seamonster.env   $SQETC_DIR
+        echo "Copying $TRAF_VAR/seamonster.env to $TRAF_VAR of all the nodes"
+        echo "$PDCP -w ${ExNodeList[@]} -x `uname -n` $TRAF_VAR/seamonster.env   $TRAF_VAR "
+        $PDCP -w ${ExNodeList[@]} -x `uname -n` $TRAF_VAR/seamonster.env   $TRAF_VAR
 
         if [[ $sq_seamonster == 1 ]]; then 
             if [ -f $SQESPENV_FILE ]; then
                 echo
-                echo "Copying $SQESPENV_FILE to $TRAF_HOME/sql/scripts of all the nodes"
-                echo "$PDCP -w ${ExNodeList[@]} -x `uname -n` $SQESPENV_FILE   $TRAF_HOME/sql/scripts "
-                $PDCP -w ${ExNodeList[@]} -x `uname -n` $SQESPENV_FILE   $TRAF_HOME/sql/scripts
+                echo "Copying $SQESPENV_FILE to $TRAF_VAR of all the nodes"
+                echo "$PDCP -w ${ExNodeList[@]} -x `uname -n` $SQESPENV_FILE   $TRAF_VAR "
+                $PDCP -w ${ExNodeList[@]} -x `uname -n` $SQESPENV_FILE   $TRAF_VAR
             fi
         fi
 
diff --git a/core/sqf/sql/scripts/sqshell b/core/sqf/sql/scripts/sqshell
index 4f9e6fe..d5bc173 100755
--- a/core/sqf/sql/scripts/sqshell
+++ b/core/sqf/sql/scripts/sqshell
@@ -22,8 +22,8 @@
 # @@@ END COPYRIGHT @@@
 #
 
-if [ -f $TRAF_HOME/sql/scripts/sqshell.env ]; then
-    . $TRAF_HOME/sql/scripts/sqshell.env
+if [ -f $TRAF_VAR/sqshell.env ]; then
+    . $TRAF_VAR/sqshell.env
 fi
 
 shell $1 $2 $3 $4 $5 $6 $7 $8 $9
diff --git a/core/sqf/sql/scripts/sqstart b/core/sqf/sql/scripts/sqstart
index d75a3c1..aaf9bfe 100755
--- a/core/sqf/sql/scripts/sqstart
+++ b/core/sqf/sql/scripts/sqstart
@@ -425,7 +425,7 @@ if [[ -z ${TRAF_AGENT} ]]; then
     $SQPDSHA "rm -rf $TRAF_VAR/hbase_classpath"
 
     # Clear unique strings
-    $SQPDSHA "cd $TRAF_HOME/sql/scripts; utilConfigDb -u"
+    $SQPDSHA "cd $TRAF_VAR; utilConfigDb -u"
 
     echoLog "Executing sqipcrm (output to sqipcrm.out)"
     sqipcrm > $TRAF_LOG/sqipcrm.out 2>&1
@@ -477,8 +477,8 @@ let lv_num_checks=0
 #Long recoveries on a cluster could delay TX services
 let lv_max_checks=600
 # Check if resource is a work station
-if [[ -e ${TRAF_HOME}/etc/ms.env ]] ; then
-   VIRT_NODES=`awk '/SQ_VIRTUAL_NODES=/ { fields=split($0,virt,"=");  if ( fields == 2 ) { virtnodes=virt[2];}} END {print  virtnodes}' < $TRAF_HOME/etc/ms.env`
+if [[ -e ${TRAF_VAR}/ms.env ]] ; then
+   VIRT_NODES=`awk '/SQ_VIRTUAL_NODES=/ { fields=split($0,virt,"=");  if ( fields == 2 ) { virtnodes=virt[2];}} END {print  virtnodes}' < $TRAF_VAR/ms.env`
    if [[ -n "$VIRT_NODES" ]] ; then
       #Some utilities on workstations will timeout if we wait too long
       lv_max_checks=360
diff --git a/core/sqf/sql/scripts/sqstop b/core/sqf/sql/scripts/sqstop
index 7facb57..fb7fe11 100755
--- a/core/sqf/sql/scripts/sqstop
+++ b/core/sqf/sql/scripts/sqstop
@@ -203,17 +203,17 @@ $L_PDSH rm -f /dev/shm/sem.rms* 2>/dev/null
 # Clean up Floating IP bound
 if (test -n "${CLUSTERNAME}"); then
 	# Check whether floating ip is configured.
-	gv_floating_ip=`grep -i "begin floating_ip" $TRAF_HOME/sql/scripts/sqconfig | grep -v '^#'`
+	gv_floating_ip=`grep -i "begin floating_ip" $TRAF_CONF/sqconfig | grep -v '^#'`
 	if [ -n "$gv_floating_ip" ]; then
 		echoLog "Clean up Floating IP..."
 
 		cmd_timeout="-u 30"
 
 		# Get floating ip addresses.
-		gv_float_external_ip=`sed -n '/begin floating_ip/,/end floating_ip/p' $TRAF_HOME/sql/scripts/sqconfig | grep -v '^#' | grep external-ip | awk 'BEGIN{FS=";"}{split($3, ary, "="); print ary[2];}'`
-		gv_float_external_interface=`sed -n '/begin floating_ip/,/end floating_ip/p' $TRAF_HOME/sql/scripts/sqconfig | grep -v '^#' | grep external-ip | awk 'BEGIN{FS=";"}{split($2, ary, "="); print ary[2];}'`
-		gv_float_internal_ip=`sed -n '/begin floating_ip/,/end floating_ip/p' $TRAF_HOME/sql/scripts/sqconfig | grep -v '^#' | grep internal-ip | awk 'BEGIN{FS=";"}{split($3, ary, "="); print ary[2];}'`
-		gv_float_internal_interface=`sed -n '/begin floating_ip/,/end floating_ip/p' $TRAF_HOME/sql/scripts/sqconfig | grep -v '^#' | grep internal-ip | awk 'BEGIN{FS=";"}{split($2, ary, "="); print ary[2];}'`
+		gv_float_external_ip=`sed -n '/begin floating_ip/,/end floating_ip/p' $TRAF_CONF/sqconfig | grep -v '^#' | grep external-ip | awk 'BEGIN{FS=";"}{split($3, ary, "="); print ary[2];}'`
+		gv_float_external_interface=`sed -n '/begin floating_ip/,/end floating_ip/p' $TRAF_CONF/sqconfig | grep -v '^#' | grep external-ip | awk 'BEGIN{FS=";"}{split($2, ary, "="); print ary[2];}'`
+		gv_float_internal_ip=`sed -n '/begin floating_ip/,/end floating_ip/p' $TRAF_CONF/sqconfig | grep -v '^#' | grep internal-ip | awk 'BEGIN{FS=";"}{split($3, ary, "="); print ary[2];}'`
+		gv_float_internal_interface=`sed -n '/begin floating_ip/,/end floating_ip/p' $TRAF_CONF/sqconfig | grep -v '^#' | grep internal-ip | awk 'BEGIN{FS=";"}{split($2, ary, "="); print ary[2];}'`
 
 		# Check and get all the nodes that the ext/int IP address have been set. And do the unbind.
 		
diff --git a/core/sqf/sql/scripts/sqsystem.pm b/core/sqf/sql/scripts/sqsystem.pm
index f44144b..c17c08d 100644
--- a/core/sqf/sql/scripts/sqsystem.pm
+++ b/core/sqf/sql/scripts/sqsystem.pm
@@ -40,10 +40,10 @@ sub isProd
 
 sub isSingleNode
 {
-   my $TRAF_HOME = $ENV{'TRAF_HOME'};
+   my $TRAF_CONF = $ENV{'TRAF_CONF'};
 
    # Get the number of nodes in the instance
-   my $TempList = `grep 'node-name=.[^A-Za-z].[0-9]*' $TRAF_HOME/sql/scripts/sqconfig | grep -v "\#" | cut -d"=" -f3 | cut -d";" -f1 | sort -u`;
+   my $TempList = `grep 'node-name=.[^A-Za-z].[0-9]*' $TRAF_CONF/sqconfig | grep -v "\#" | cut -d"=" -f3 | cut -d";" -f1 | sort -u`;
    if (!$TempList)
      {# Single-node development system
       return 1;  # true
diff --git a/core/sqf/sql/scripts/trafnodestatus b/core/sqf/sql/scripts/trafnodestatus
index 86e7d52..cf32e8a 100755
--- a/core/sqf/sql/scripts/trafnodestatus
+++ b/core/sqf/sql/scripts/trafnodestatus
@@ -64,10 +64,10 @@ if [[ -z $TRAF_HOME ]]; then
     traf_exit 5;
 fi
 
-if [[ -z $SQSCRIPTS_DIR ]]; then
-    SQSCRIPTS_DIR=$TRAF_HOME/sql/scripts
+if [[ -z $SQVAR_DIR ]]; then
+    SQVAR_DIR=$TRAF_VAR
 fi
-SQCONFIGDB_FILE="$SQSCRIPTS_DIR/sqconfig.db"
+SQCONFIGDB_FILE="$SQVAR_DIR/sqconfig.db"
 if [[ ! -e ${SQCONFIGDB_FILE} ]]; then
     traf_echo "Cannot find the Trafodion configuration DB file ${SQCONFIGDB_FILE}"
     traf_echo "Please execute sqgen to generate this file."
diff --git a/core/sqf/src/seabed/src/env.cpp b/core/sqf/src/seabed/src/env.cpp
index 9b576b1..a7ed909 100644
--- a/core/sqf/src/seabed/src/env.cpp
+++ b/core/sqf/src/seabed/src/env.cpp
@@ -69,6 +69,9 @@ const char *gp_ms_env_sq_msgflow         = "SQ_MSGFLOW";
 const char *gp_ms_env_sq_snapshot_dir    = "SQ_SNAPSHOT_DIR";
 const char *gp_ms_env_sq_trans_sock      = "SQ_TRANS_SOCK";
 const char *gp_ms_env_sq_root            = "TRAF_HOME";
+const char *gp_ms_env_sq_conf            = "TRAF_CONF";
+const char *gp_ms_env_sq_log             = "TRAF_LOG";
+const char *gp_ms_env_sq_var             = "TRAF_VAR";
 const char *gp_ms_env_sq_vnid            = "SQ_VIRTUAL_NID";
 const char *gp_ms_env_sq_vnodes          = "SQ_VIRTUAL_NODES";
 const char *gp_ms_env_streams_max        = "MS_STREAMS_MAX";
diff --git a/core/sqf/src/seabed/src/env.h b/core/sqf/src/seabed/src/env.h
index 2730ec1..4a39d1b 100644
--- a/core/sqf/src/seabed/src/env.h
+++ b/core/sqf/src/seabed/src/env.h
@@ -69,6 +69,9 @@ extern const char *gp_ms_env_sq_ic;
 extern const char *gp_ms_env_sq_msgflow;
 extern const char *gp_ms_env_sq_snapshot_dir;
 extern const char *gp_ms_env_sq_root;
+extern const char *gp_ms_env_sq_conf;
+extern const char *gp_ms_env_sq_log;
+extern const char *gp_ms_env_sq_var;
 extern const char *gp_ms_env_sq_trans_mpi;
 extern const char *gp_ms_env_sq_trans_sm;
 extern const char *gp_ms_env_sq_trans_sock;
diff --git a/core/sqf/src/seabed/src/ms.cpp b/core/sqf/src/seabed/src/ms.cpp
index 28db69b..43ce18c 100644
--- a/core/sqf/src/seabed/src/ms.cpp
+++ b/core/sqf/src/seabed/src/ms.cpp
@@ -930,10 +930,10 @@ const char *ms_getenv_str(const char *pp_key) {
     if (!gv_ms_env_loaded) {
         if (!gv_ms_env.load(gp_config_arg_file)) { // try to load arg config
             if (!gv_ms_env.load(gp_config_file)) { // try to load default config
-                char *lp_root = getenv(gp_ms_env_sq_root);
-                if (lp_root != NULL) {
+                char *lp_var = getenv(gp_ms_env_sq_var);
+                if (lp_var != NULL) {
                     SB_Buf_Lline lv_file;
-                    sprintf(&lv_file, "%s/etc/%s", lp_root, gp_config_file);
+                    sprintf(&lv_file, "%s/%s", lp_var, gp_config_file);
                     gv_ms_env.load(&lv_file);
                 }
             }
@@ -1605,10 +1605,10 @@ void msg_init_env_load_exe(const char *pp_exe, SB_Props *pp_env) {
     SB_Props lv_exe_env(true);
 
     if (!lv_exe_env.load(pp_exe)) {
-        char *lp_root = getenv(gp_ms_env_sq_root);
-        if (lp_root != NULL) {
+        char *lp_var = getenv(gp_ms_env_sq_var);
+        if (lp_var != NULL) {
             SB_Buf_Lline lv_file;
-            sprintf(&lv_file, "%s/etc/%s", lp_root, pp_exe);
+            sprintf(&lv_file, "%s/%s", lp_var, pp_exe);
             lv_exe_env.load(&lv_file);
         }
     }
diff --git a/core/sqf/src/seabed/test/Makefile b/core/sqf/src/seabed/test/Makefile
index 0b5e13b..6b1e47f 100644
--- a/core/sqf/src/seabed/test/Makefile
+++ b/core/sqf/src/seabed/test/Makefile
@@ -995,7 +995,7 @@ $(OUTDIR)/tcheck.o: tcheck.cpp
 	$(RCXXINCLUDESSRC)
 
 testfiles:
-	@if [ ! -r sqconfig.db ]; then \
+	@if [ ! -r $(TRAF_VAR)/sqconfig.db ]; then \
 		echo "creating sqconfig.db"; \
 		./gocleandb; \
 	fi
@@ -1044,7 +1044,7 @@ clean:
 	@grep 'HOOK_ENABLE=1' ms.env >/dev/null 2>/dev/null; if [ $$? == 0 ]; then echo "touch c s"; touch c s; fi
 
 cleanall: clean
-	$(RM) -fr $(BUILD_PLAT) stdout_* t9thread.rh6x.supp sqconfig.db
+	$(RM) -fr $(BUILD_PLAT) stdout_* t9thread.rh6x.supp $(TRAF_VAR)/sqconfig.db
 
 cleaner: clean
 	$(RM) *~
diff --git a/core/sqf/src/seabed/test/go69mon b/core/sqf/src/seabed/test/go69mon
index c7ec5d6..fa94d9c 100755
--- a/core/sqf/src/seabed/test/go69mon
+++ b/core/sqf/src/seabed/test/go69mon
@@ -22,7 +22,7 @@
 
 if [ "$1" = "-start" ]; then
 export SQ_SHELL_NOCWD=1
-export SQ_CONFIGDB=$PWD/sqconfig.db
+export SQ_CONFIGDB=$TRAF_VAR/sqconfig.db
 shift
 echo "********* run monitor *********"
 shell <<eof
diff --git a/core/sqf/src/seabed/test/gocleandb b/core/sqf/src/seabed/test/gocleandb
index a7adb65..a53e65e 100755
--- a/core/sqf/src/seabed/test/gocleandb
+++ b/core/sqf/src/seabed/test/gocleandb
@@ -21,5 +21,5 @@
 #
 # @@@ END COPYRIGHT @@@
 
-rm -f sqconfig.db
-sqlite3 sqconfig.db < $TRAF_HOME/sql/scripts/createConfigDb
+rm -f $TRAF_VAR/sqconfig.db
+sqlite3 $TRAF_VAR/sqconfig.db < $TRAF_HOME/sql/scripts/createConfigDb
diff --git a/core/sqf/src/seabed/test/gosetup b/core/sqf/src/seabed/test/gosetup
index c910e03..619606b 100755
--- a/core/sqf/src/seabed/test/gosetup
+++ b/core/sqf/src/seabed/test/gosetup
@@ -68,7 +68,7 @@ if [ "$cluster" = "-cluster" ]; then
 		host1=`gohost 1`
 		host2=`gohost 2`
 		gocleanport
-		pdcp -w $host2 sqconfig.db $PWD/sqconfig.db
+		pdcp -w $host2 sqconfig.db $TRAF_VAR/sqconfig.db
 	fi
 fi
 if [ "$clustern" = "-cluster" ]; then
@@ -77,12 +77,12 @@ if [ "$clustern" = "-cluster" ]; then
 	if [ $keep = 0 ]; then
 		./godb 6
 		gocleanport
-		nodes=`SQ_CONFIGDB=$PWD/sqconfig.db trafconf -wname`
-		pdcp $nodes sqconfig.db $PWD/sqconfig.db
+		nodes=`SQ_CONFIGDB=$TRAF_VAR/sqconfig.db trafconf -wname`
+		pdcp $nodes sqconfig.db $TRAF_VAR/sqconfig.db
 	fi
 fi
 if [ "$SQ_VIRTUAL_NODES" != "1" ]; then
 	nid0="nid 0"
 fi
 export SQ_SHELL_NOCWD=1
-export SQ_CONFIGDB=$PWD/sqconfig.db
+export SQ_CONFIGDB=$TRAF_VAR/sqconfig.db
diff --git a/core/sqf/src/seabed/test/gosetupcl3 b/core/sqf/src/seabed/test/gosetupcl3
index 90151ce..80b932d 100755
--- a/core/sqf/src/seabed/test/gosetupcl3
+++ b/core/sqf/src/seabed/test/gosetupcl3
@@ -23,8 +23,8 @@
 . ./gosetup
 ./godb 3
 if [ "$cluster" = "-cluster" ]; then
-	nodes=`SQ_CONFIGDB=$PWD/sqconfig.db trafconf -wname`
-	pdcp $nodes sqconfig.db $PWD/sqconfig.db
+	nodes=`SQ_CONFIGDB=$TRAF_VAR/sqconfig.db trafconf -wname`
+	pdcp $nodes sqconfig.db $TRAF_VAR/sqconfig.db
 else
 	export SQ_VIRTUAL_NODES=3
 	export SQ_VIRTUAL_NID=0
diff --git a/core/sqf/src/tm/tools/run_dtmci b/core/sqf/src/tm/tools/run_dtmci
index 81570a7..abbafc3 100755
--- a/core/sqf/src/tm/tools/run_dtmci
+++ b/core/sqf/src/tm/tools/run_dtmci
@@ -27,14 +27,14 @@ argList = sys.argv
 execNode = 0
 
 def isDev():
-	mySQROOT = ''
+	mySQVAR = ''
 	try:
-		mySQROOT = os.environ['TRAF_HOME']
+		mySQVAR = os.environ['TRAF_VAR']
 	except:
 		print "ERROR: $TRAF_HOME variable not set.  Please setup SeaQuest environment."
 		exit(1)
 
-	sqconfig = "%s/sql/scripts/sqconfig" % mySQROOT
+	sqconfig = "%s/sqconfig" % mySQVAR
 	grepCommand = ['grep', 'node-name=.[^A-Za-z].[0-9]*', sqconfig]
 
 	proc = subprocess.Popen(grepCommand, stdout = subprocess.PIPE, shell=False)
diff --git a/core/sqf/src/trafconf/tcdbsqlite.cpp b/core/sqf/src/trafconf/tcdbsqlite.cpp
index 96ac1c4..43cdc42 100644
--- a/core/sqf/src/trafconf/tcdbsqlite.cpp
+++ b/core/sqf/src/trafconf/tcdbsqlite.cpp
@@ -1370,7 +1370,7 @@ int CTcdbSqlite::Initialize( void )
     else
     {
         snprintf( dbase, sizeof(dbase)
-                , "%s/sql/scripts/sqconfig.db", getenv("TRAF_HOME"));
+                , "%s/sqconfig.db", getenv("TRAF_VAR"));
     }
     if (TcTraceSettings & (TC_TRACE_REGISTRY | TC_TRACE_REQUEST | TC_TRACE_INIT))
     {
diff --git a/core/sqf/tools/sqtools.sh b/core/sqf/tools/sqtools.sh
index 2839332..c6efb11 100644
--- a/core/sqf/tools/sqtools.sh
+++ b/core/sqf/tools/sqtools.sh
@@ -449,7 +449,7 @@ function sqsavelogs {
     cp -p $TRAF_LOG/stdout_* ${lv_stdout_dir_name}
 
     lv_config_dir_name=${lv_copy_to_dir}/sqconfig_db
-    cp -p $TRAF_HOME/sql/scripts/sqconfig.db ${lv_config_dir_name}/${lv_node}_sqconfig.db
+    cp -p $TRAF_VAR/sqconfig.db ${lv_config_dir_name}/${lv_node}_sqconfig.db
 
     sqsave_linux_info ${lv_linux_collection_dir}/linux
 
@@ -610,12 +610,12 @@ function sqcollectlogs {
 
     cp -p $TRAF_HOME/sqenv.sh .
     cp -p $TRAF_HOME/sqenvcom.sh .
-    cp -p $TRAF_HOME/etc/ms.env .
+    cp -p $TRAF_VAR/ms.env .
     cp -p $TRAF_HOME/sql/scripts/gomon.cold .
     cp -p $TRAF_HOME/sql/scripts/gomon.warm .
-    cp -p $TRAF_HOME/sql/scripts/sqconfig .
-    cp -p $TRAF_HOME/sql/scripts/mon.env . 2>/dev/null
-    cp -p $TRAF_HOME/sql/scripts/shell.env . 2>/dev/null
+    cp -p $TRAF_CONF/sqconfig .
+    cp -p $TRAF_VAR/mon.env . 2>/dev/null
+    cp -p $TRAF_VAR/shell.env . 2>/dev/null
     cd ..
 #   end configuration info
 
diff --git a/core/sql/bin/ex_esp_main.cpp b/core/sql/bin/ex_esp_main.cpp
index cadfa88..5dbc8e1 100644
--- a/core/sql/bin/ex_esp_main.cpp
+++ b/core/sql/bin/ex_esp_main.cpp
@@ -557,7 +557,7 @@ void EspGuaControlConnection::actOnSystemMessage(
         {
           /*
           Coverage notes: to test this code in a dev regression requires
-          changing $TRAF_HOME/etc/ms.env, so I made a manual test on
+          changing $TRAF_VAR/ms.env, so I made a manual test on
           May 11, 2012 to verify this code.
           */
           char myName[20];
diff --git a/core/sql/cli/SessionDefaults.cpp b/core/sql/cli/SessionDefaults.cpp
index 84be26f..7323755 100644
--- a/core/sql/cli/SessionDefaults.cpp
+++ b/core/sql/cli/SessionDefaults.cpp
@@ -692,8 +692,8 @@ Lng32 SessionDefaults::readFromDefaultsTable(CliGlobals * cliGlobals)
 {
   // Read system defaults from configuration file
   // keep this name in sync with file sqlcomp/nadefaults.cpp
-  NAString confFile(getenv("TRAF_HOME"));
-  confFile += "/etc/SQSystemDefaults.conf";
+  NAString confFile(getenv("TRAF_CONF"));
+  confFile += "/SQSystemDefaults.conf";
 
   FILE *f = fopen(confFile, "r");
 
diff --git a/core/sql/common/ComMisc.cpp b/core/sql/common/ComMisc.cpp
index 3ea50d5..e10f3c6 100644
--- a/core/sql/common/ComMisc.cpp
+++ b/core/sql/common/ComMisc.cpp
@@ -377,7 +377,7 @@ Int32  ComGenerateUdrCachedLibName(NAString libname,Int64 redeftime, NAString sc
   if (userid.length()!=0)       
     {
 
-      cachedLibPath = getenv("TRAF_HOME") ;
+      cachedLibPath = getenv("TRAF_VAR") ;
       cachedLibPath += "/udr";
       if ( stat(cachedLibPath, &statbuf) != 0)
          {
@@ -422,7 +422,7 @@ Int32  ComGenerateUdrCachedLibName(NAString libname,Int64 redeftime, NAString sc
     }
   else
     {
-      cachedLibPath = getenv("TRAF_HOME") ;
+      cachedLibPath = getenv("TRAF_VAR") ;
       cachedLibPath += "/udr";
       if ( stat(cachedLibPath, &statbuf) != 0)
          {
diff --git a/core/sql/common/Ipc.cpp b/core/sql/common/Ipc.cpp
index 06b0ad9..3735730 100644
--- a/core/sql/common/Ipc.cpp
+++ b/core/sql/common/Ipc.cpp
@@ -606,7 +606,7 @@ void IpcServer::logEspRelease(const char * filename, int lineNum,
   {
     /*
     Coverage notes: to test this code in a dev regression requires
-    changing $TRAF_HOME/etc/ms.env.  However, it was tested in
+    changing $TRAF_VAR/ms.env.  However, it was tested in
     stress test on May 10, 2012.
     */
     char logMsg[500];
@@ -1624,7 +1624,7 @@ WaitReturnStatus IpcSetOfConnections::waitOnSet(IpcTimeout timeout,
                             /*
                             Coverage notes: to test this code in a dev 
                             regression requires changing 
-                            $TRAF_HOME/etc/ms.env.  However, it was 
+                            $TRAF_VAR/ms.env.  However, it was 
                             tested in stress test on 
                             May 10, 2012.
                             */
diff --git a/core/sql/lib_mgmt/src/main/java/org/trafodion/libmgmt/FileMgmt.java b/core/sql/lib_mgmt/src/main/java/org/trafodion/libmgmt/FileMgmt.java
index 990fe1f..499239d 100644
--- a/core/sql/lib_mgmt/src/main/java/org/trafodion/libmgmt/FileMgmt.java
+++ b/core/sql/lib_mgmt/src/main/java/org/trafodion/libmgmt/FileMgmt.java
@@ -614,7 +614,7 @@ public class FileMgmt {
         }
 
         static String getLocalLibDirName(String userName) throws SQLException {
-		String root = System.getenv("TRAF_HOME");
+		String root = System.getenv("TRAF_VAR");
 		if (root == null || "".equals(root.trim())) {
 			LOG.error("Cant get your traf installation path!");
 			throw new SQLException("Cant get your traf installation path!");
diff --git a/core/sql/lib_mgmt/src/main/java/org/trafodion/libmgmt/JDBCUDR.java b/core/sql/lib_mgmt/src/main/java/org/trafodion/libmgmt/JDBCUDR.java
index e75f603..767ff60 100644
--- a/core/sql/lib_mgmt/src/main/java/org/trafodion/libmgmt/JDBCUDR.java
+++ b/core/sql/lib_mgmt/src/main/java/org/trafodion/libmgmt/JDBCUDR.java
@@ -27,7 +27,7 @@ under the License.
  *
  * select ... from udf(JDBC(
  *    <name of JDBC driver jar>, // file name of the JDBC driver jar, stored
- *                               // in $TRAF_HOME/udr/public/external_libs
+ *                               // in $TRAF_VAR/udr/public/external_libs
  *    <name of JDBC driver class in the jar>,
  *    <connection string>,
  *    <user name>,
@@ -98,7 +98,7 @@ class JDBCUDR extends UDR
             Path driverJarPath = Paths.get(driverJar_);
 
             // for security reasons, we sandbox the allowed driver jars
-            // into $TRAF_HOME/udr/public/external_libs
+            // into $TRAF_VAR/udr/public/external_libs
             driverJarPath = driverJarPath.normalize();
             if (driverJarPath.isAbsolute())
               {
diff --git a/core/sql/lib_mgmt/src/main/java/org/trafodion/libmgmt/SyncLibUDF.java b/core/sql/lib_mgmt/src/main/java/org/trafodion/libmgmt/SyncLibUDF.java
index 523f964..a91b860 100644
--- a/core/sql/lib_mgmt/src/main/java/org/trafodion/libmgmt/SyncLibUDF.java
+++ b/core/sql/lib_mgmt/src/main/java/org/trafodion/libmgmt/SyncLibUDF.java
@@ -95,8 +95,8 @@ public class SyncLibUDF extends UDR {
         // in those cases, since all the virtual nodes share the same node.
         String cmd[] = new String[] { "grep",
                                       "^[ \t]*_virtualnodes ",
-                                      System.getenv("TRAF_HOME") +
-                                      "/sql/scripts/sqconfig" };
+                                      System.getenv("TRAF_CONF") +
+                                      "/sqconfig" };
 
         try {
             Process p = Runtime.getRuntime().exec(cmd);
diff --git a/core/sql/regress/tools/runallsb b/core/sql/regress/tools/runallsb
index 646e04e..7ec3c2c 100755
--- a/core/sql/regress/tools/runallsb
+++ b/core/sql/regress/tools/runallsb
@@ -127,7 +127,7 @@ fi
 #
 
 # Check if resource is a cluster
-SQCONFIG=$TRAF_HOME/sql/scripts/sqconfig
+SQCONFIG=$TRAF_CONF/sqconfig
 CONN_NODE=$(grep -v '^#' $SQCONFIG | grep -m 1 connection | sed -e "s@node-name=\(n[0-9]*\);.*@\1@" | cut -d ';' -f2)
 
 # if CONN_NODE is empty then resource is a workstation otherwise resource is a cluster
diff --git a/core/sql/regress/udr/TEST102 b/core/sql/regress/udr/TEST102
index ce89a37..5bc810f 100644
--- a/core/sql/regress/udr/TEST102
+++ b/core/sql/regress/udr/TEST102
@@ -125,9 +125,9 @@ call "_LIBMGR_".putfile('abcd', 'udr_test102_1', 1, 1, 0);
 
 -- expect two lines with the contents of the two files below
 log;
-sh cat $$TRAF_HOME$$/udr/lib/DB__ROOT/udr_test102_1 >>LOG102;
+sh cat $$TRAF_VAR$$/udr/lib/DB__ROOT/udr_test102_1 >>LOG102;
 sh echo " " >>LOG102;
-sh cat $$TRAF_HOME$$/udr/lib/DB__ROOT/udr_test102_3 >>LOG102;
+sh cat $$TRAF_VAR$$/udr/lib/DB__ROOT/udr_test102_3 >>LOG102;
 sh echo " " >>LOG102;
 log LOG102;
 
diff --git a/core/sql/sqlcomp/nadefaults.cpp b/core/sql/sqlcomp/nadefaults.cpp
index f4e3f80..831d313 100644
--- a/core/sql/sqlcomp/nadefaults.cpp
+++ b/core/sql/sqlcomp/nadefaults.cpp
@@ -3603,7 +3603,7 @@ void NADefaults::initCurrentDefaultsWithDefaultDefaults()
     // On SQ, the way to get an envvar from inside a un-attached process
     // is to use the msg_getenv_str() call and set the env inside
     // the SQ_PROP_ property file. In this case the property
-    // file is $TRAF_HOME/etc/SQ_PROP_tdm_arkcmp which contains the line
+    // file is $TRAF_CONF/tdm_arkcmp.env which contains the line
     // "SQLMX_REGRESS=1". This file was generated by tools/setuplnxenv.
    //    resetNeoDefaults = (msg_getenv_str("SQLMX_REGRESS") != NULL);
     resetNeoDefaults = (getenv("SQLMX_REGRESS") != NULL);
@@ -4302,8 +4302,8 @@ void NADefaults::readFromSQLTables(Provenance overwriteIfNotYet, Int32 errOrWarn
     {
       // Read system defaults from configuration file.
       // keep this name in sync with file cli/SessionDefaults.cpp
-      NAString confFile(getenv("TRAF_HOME"));
-      confFile += "/etc/SQSystemDefaults.conf";
+      NAString confFile(getenv("TRAF_CONF"));
+      confFile += "/SQSystemDefaults.conf";
       readFromFlatFile(confFile, overwriteIfNotYet, errOrWarn);  
       tablesRead_.insert(confFile);           
 
diff --git a/core/sql/sqludr/SqlUdrPredefLogReader.cpp b/core/sql/sqludr/SqlUdrPredefLogReader.cpp
index dac87c5..4d3893c 100644
--- a/core/sql/sqludr/SqlUdrPredefLogReader.cpp
+++ b/core/sql/sqludr/SqlUdrPredefLogReader.cpp
@@ -444,7 +444,7 @@ void ReadCppEventsUDFInterface::describeDesiredDegreeOfParallelism(
 {
   // check for configurations with virtual nodes. Run the UDF serially
   // in those cases, since all the virtual nodes share the same node.
-  int usesNoVirtualNodes = system("grep '^[ \t]*_virtualnodes ' $TRAF_HOME/sql/scripts/sqconfig >/dev/null");
+  int usesNoVirtualNodes = system("grep '^[ \t]*_virtualnodes ' $TRAF_CONF/sqconfig >/dev/null");
 
   if (usesNoVirtualNodes != 0 || useParallelExecForVirtualNodes_)
     // this TMUDF needs to run once on each node, since every
diff --git a/core/sql/src/main/java/org/trafodion/sql/udr/LmUtility.java b/core/sql/src/main/java/org/trafodion/sql/udr/LmUtility.java
index 407d76f..af31f85 100644
--- a/core/sql/src/main/java/org/trafodion/sql/udr/LmUtility.java
+++ b/core/sql/src/main/java/org/trafodion/sql/udr/LmUtility.java
@@ -961,7 +961,7 @@ public class LmUtility {
      **/
     public static Path getSandboxRoot()
     {
-        return Paths.get(System.getenv("TRAF_HOME"), "udr");
+        return Paths.get(System.getenv("TRAF_VAR"), "udr");
     }
 
     /**
@@ -978,7 +978,7 @@ public class LmUtility {
         if (userid == null || userid.length() == 0)
             return getSandboxRootForUser(getPublicUserId());
 
-        return Paths.get(System.getenv("TRAF_HOME"), "udr", userid);
+        return Paths.get(System.getenv("TRAF_VAR"), "udr", userid);
     }
 
     /**
@@ -995,7 +995,7 @@ public class LmUtility {
         if (userid == null || userid.length() == 0)
             return getExternalLibsDirForUser(getPublicUserId());
 
-        return Paths.get(System.getenv("TRAF_HOME"), "udr", userid, "external_libs");
+        return Paths.get(System.getenv("TRAF_VAR"), "udr", userid, "external_libs");
     }
 
     static class JarFilter implements FilenameFilter {
diff --git a/core/sql/ustat/USAS.sh b/core/sql/ustat/USAS.sh
index 19a065f..c9f1e9d 100644
--- a/core/sql/ustat/USAS.sh
+++ b/core/sql/ustat/USAS.sh
@@ -458,11 +458,11 @@ AutoTempTable="NEO.PUBLIC_ACCESS_SCHEMA.USTAT_AUTO_TMP_TABLES"
   # First find the total number of SQL storage nodes.
   # this line greps for the node-id text line in sqconfig file, looking for
   # storage nodes. The logical node names are stored in $nodes.
-  nodes=$(grep "^node-id=" $TRAF_HOME/sql/scripts/sqconfig | grep storage | cut -d ';' -f 2 | cut -d '=' -f 2)
+  nodes=$(grep "^node-id=" $TRAF_CONF/sqconfig | grep storage | cut -d ';' -f 2 | cut -d '=' -f 2)
 
 
   # grep the number of cores per SQ node
-  cores=$(grep "^node-id=" $TRAF_HOME/sql/scripts/sqconfig | grep storage | cut -d ';' -f 3 | cut -d '=' -f 2 | cut -d '-' -f 2)
+  cores=$(grep "^node-id=" $TRAF_CONF/sqconfig | grep storage | cut -d ';' -f 3 | cut -d '=' -f 2 | cut -d '-' -f 2)
 
   #
   # Uncomment and modify the following two variables to unit test special cases. 
@@ -472,16 +472,16 @@ AutoTempTable="NEO.PUBLIC_ACCESS_SCHEMA.USTAT_AUTO_TMP_TABLES"
   #cores="7 7"
   #nodes="n3 n4"
 
-  headnodes=$(grep "^node-id=" $TRAF_HOME/sql/scripts/sqconfig | grep connection | cut -d ';' -f 2 | cut -d '=' -f 2)
+  headnodes=$(grep "^node-id=" $TRAF_CONF/sqconfig | grep connection | cut -d ';' -f 2 | cut -d '=' -f 2)
 
   # If no storage text line exists as in workstation environment, grep for
   # _virtualnodes.
   if [ "$nodes" = "" ]; then
-    nodes=$(grep "^_virtualnodes" $TRAF_HOME/sql/scripts/sqconfig)
+    nodes=$(grep "^_virtualnodes" $TRAF_CONF/sqconfig)
   
     # We can not find node text line. Bail out.
     if [ "$nodes" = "" ]; then
-       log "Ill-formatted sqconfig file at $TRAF_HOME/sql/scripts."
+       log "Ill-formatted sqconfig file at $TRAF_CONF"
        log "Exit the USAS.sh script."
       
        # In the future, we can hook up this exit with SQ version of EMS log.
diff --git a/docs/cqd_reference/src/asciidoc/_chapters/query_execution.adoc b/docs/cqd_reference/src/asciidoc/_chapters/query_execution.adoc
index 3391fed..2b74bf0 100644
--- a/docs/cqd_reference/src/asciidoc/_chapters/query_execution.adoc
+++ b/docs/cqd_reference/src/asciidoc/_chapters/query_execution.adoc
@@ -256,7 +256,7 @@ Multiple locations can be specified, separated by a colon. For example, /tmp/scr
 * Specify this location at installation time.
 
 +
-Currently the scratch directory locations are set at installation time. The code that manages scratch and temporary files reads environment variables in $TRAF_HOME/etc/ms.env to determine where to create scratch files.
+Currently the scratch directory locations are set at installation time. The code that manages scratch and temporary files reads environment variables in $TRAF_VAR/ms.env to determine where to create scratch files.
 
 +
 The CQD overrides the STFS_HDD_LOCATION (disk) and STFS_SSD_LOCATION (SSD disk) environment variables. 
@@ -274,7 +274,7 @@ The directories MUST exist on every node and the Trafodion user must have permis
 * If the scratch directory location is not set at installation time, this CQD is valid only for the duration of the session.
 
 +
-These settings will not be stored in $TRAF_HOME/etc/ms.env and will override the environment variables settings as long as the CQD is in effect.
+These settings will not be stored in $TRAF_VAR/ms.env and will override the environment variables settings as long as the CQD is in effect.
 
 | *Production Usage*          | Please contact {project-support}.
 | *Impact*                    |