Skip to content

Commit e1016f5

Browse files
authored
PHOENIX-7523 Parse hbase-env.sh in PQS scripts, and and fall back to HBASE_OPTS in queryserver.py (#176)
1 parent 574a797 commit e1016f5

File tree

2 files changed

+16
-16
lines changed

2 files changed

+16
-16
lines changed

bin/phoenix_queryserver_utils.py

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import fnmatch
2424
import re
2525
import subprocess
26+
import sys
2627

2728
def find(pattern, classPaths):
2829
paths = classPaths.split(os.pathsep)
@@ -179,18 +180,26 @@ def setPath():
179180
logging_jar += ":"+findFileInPathWithoutRecursion(LOGGING_JAR_PATTERN2, os.path.join(current_dir, "..","lib"))
180181
logging_jar += ":"+findFileInPathWithoutRecursion(LOGGING_JAR_PATTERN3, os.path.join(current_dir, "..","lib"))
181182

182-
__set_java_home()
183+
__read_hbase_env()
184+
__set_java()
183185
__set_jvm_flags()
184186
return ""
185187

186188

187-
def __set_java_home():
189+
def __set_java():
188190
global hbase_env
189191
global java_home
190192
global java
191193
java_home = os.getenv('JAVA_HOME')
192-
java = 'java'
194+
if java_home:
195+
java = os.path.join(java_home, 'bin', 'java')
196+
else:
197+
java = 'java'
193198

199+
200+
def __read_hbase_env():
201+
if os.getenv("SKIP_HBASE_ENV"):
202+
return ""
194203
# HBase configuration folder path (where hbase-site.xml reside) for
195204
# HBase/Phoenix client side property override
196205
hbase_config_path = hbase_conf_dir
@@ -208,18 +217,11 @@ def __set_java_home():
208217
sys.stderr.write("hbase-env file unknown on platform {}{}".format(os.name, os.linesep))
209218
sys.exit(-1)
210219

211-
hbase_env = {}
212220
if os.path.isfile(hbase_env_path):
213221
p = subprocess.Popen(hbase_env_cmd, stdout = subprocess.PIPE)
214222
for x in p.stdout:
215223
(k, _, v) = tryDecode(x).partition('=')
216-
hbase_env[k.strip()] = v.strip()
217-
218-
if 'JAVA_HOME' in hbase_env:
219-
java_home = hbase_env['JAVA_HOME']
220-
221-
if java_home:
222-
java = os.path.join(java_home, 'bin', 'java')
224+
os.environ[k.strip()] = v.strip()
223225

224226
return ""
225227

@@ -293,5 +295,4 @@ def common_sqlline_args(parser):
293295
print("java_home:", java_home)
294296
print("java:", java)
295297
print("jvm_module_flags:", jvm_module_flags)
296-
print("hbase_env:", hbase_env)
297298

bin/queryserver.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -92,10 +92,9 @@ def tryQuote(unquoted_input):
9292
phoenix_pid_file = '%s.pid' % phoenix_file_basename
9393

9494
tmp_dir = os.path.join(tempfile.gettempdir(), 'phoenix')
95-
hbase_env = phoenix_queryserver_utils.hbase_env
96-
opts = os.getenv('PHOENIX_QUERYSERVER_OPTS') or hbase_env.get('PHOENIX_QUERYSERVER_OPTS') or ''
97-
pid_dir = os.getenv('PHOENIX_QUERYSERVER_PID_DIR') or hbase_env.get('HBASE_PID_DIR') or tmp_dir
98-
log_dir = os.getenv('PHOENIX_QUERYSERVER_LOG_DIR') or hbase_env.get('HBASE_LOG_DIR') or tmp_dir
95+
opts = os.getenv('PHOENIX_QUERYSERVER_OPTS') or os.getenv('HBASE_OPTS') or ''
96+
pid_dir = os.getenv('PHOENIX_QUERYSERVER_PID_DIR') or os.getenv('HBASE_PID_DIR') or tmp_dir
97+
log_dir = os.getenv('PHOENIX_QUERYSERVER_LOG_DIR') or os.getenv('HBASE_LOG_DIR') or tmp_dir
9998
pid_file_path = os.path.join(pid_dir, phoenix_pid_file)
10099
log_file_path = os.path.join(log_dir, phoenix_log_file)
101100
out_file_path = os.path.join(log_dir, phoenix_out_file)

0 commit comments

Comments
 (0)