Github user joshelser commented on a diff in the pull request:
https://github.com/apache/phoenix/pull/311#discussion_r204795871
--- Diff: bin/traceserver.py ---
@@ -116,8 +116,10 @@
# " -Xdebug
-Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=n " + \
# " -XX:+UnlockCommercialFeatures -XX:+FlightRecorder
-XX:FlightRecorderOptions=defaultrecording=true,dumponexit=true" + \
-java_cmd = '%(java)s $PHOENIX_OPTS ' + \
- '-cp ' + hbase_config_path + os.pathsep +
phoenix_utils.phoenix_traceserver_jar + os.pathsep +
phoenix_utils.phoenix_client_jar + \
+java_cmd = '%(java)s ' + \
--- End diff --
The issue is that subprocess doesn't handle shell variable expansion "in
the command". Subprocess has API to provide an environment to the process being
run.
`$PHOENIX_OPTS` and `$PHOENIX_TRACESERVER_OPTS` should be placed into the
subprocess's environment, not just dropped.
---