[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15354711#comment-15354711 ] Alicia Ying Shu commented on PHOENIX-2931: -- [~elserj] Thanks! > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.8.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931-v3.patch, PHOENIX-2931-v4.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15354600#comment-15354600 ] Josh Elser commented on PHOENIX-2931: - Two more nits: {code} -print "Zookeeper not specified. \nUsage: sqlline.py \ - \nExample: \n 1. sqlline.py localhost:2181:/hbase \n 2. sqlline.py \ -localhost:2181:/hbase ../examples/stock_symbol.sql" -sys.exit() +def printUsage(): +print "\nUsage: sqlline.py [zookeeper_quorum_port] \ {code} {{zookeeper_quorum_port}} seems inaccurate. I think the original {{zookeeper}} is better. {code} -if len(sys.argv) > 2: -sqlfile = "--run=" + phoenix_utils.shell_quote([sys.argv[2]]) +sqlfile = "" +zookeeper = "" # HBase configuration folder path (where hbase-site.xml reside) for # HBase/Phoenix client side property override hbase_config_path = os.getenv('HBASE_CONF_DIR', phoenix_utils.current_dir) +if len(sys.argv) == 2: +if os.path.isfile(sys.argv[1]): +sqlfile = sys.argv[1] +else: +zookeeper = sys.argv[1] + +if len(sys.argv) == 3: +if os.path.isfile(sys.argv[1]): +printUsage() +else: +zookeeper = sys.argv[1] +sqlfile = sys.argv[2] + +if sqlfile: +sqlfile = "--run=" + sqlfile + {code} It seems like you dropped an {{phoenix_utils.shell_quote}} invocation on {{sqlfile}}. I can fix both of these on commit if you agree, [~aliciashu]. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.9.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931-v3.patch, PHOENIX-2931-v4.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15353885#comment-15353885 ] James Taylor commented on PHOENIX-2931: --- Would you mind committing this, [~elserj] if you're good with it for 4.8? > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.9.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931-v3.patch, PHOENIX-2931-v4.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15348934#comment-15348934 ] Hadoop QA commented on PHOENIX-2931: {color:red}-1 overall{color}. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12813144/PHOENIX-2931-v4.patch against master branch at commit a44387358d6b58b77358a42f38c5baac9e2ab527. ATTACHMENT ID: 12813144 {color:green}+1 @author{color}. The patch does not contain any @author tags. {color:green}+1 tests included{color}. The patch appears to include 3 new or modified tests. {color:green}+1 javac{color}. The applied patch does not increase the total number of javac compiler warnings. {color:red}-1 javadoc{color}. The javadoc tool appears to have generated 34 warning messages. {color:green}+1 release audit{color}. The applied patch does not increase the total number of release audit warnings. {color:green}+1 lineLengths{color}. The patch does not introduce lines longer than 100 {color:green}+1 core tests{color}. The patch passed unit tests in . Test results: https://builds.apache.org/job/PreCommit-PHOENIX-Build/417//testReport/ Javadoc warnings: https://builds.apache.org/job/PreCommit-PHOENIX-Build/417//artifact/patchprocess/patchJavadocWarnings.txt Console output: https://builds.apache.org/job/PreCommit-PHOENIX-Build/417//console This message is automatically generated. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.9.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931-v3.patch, PHOENIX-2931-v4.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15348822#comment-15348822 ] Alicia Ying Shu commented on PHOENIX-2931: -- Thanks. Uploaded revised patch > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.9.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931-v3.patch, PHOENIX-2931-v4.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15348671#comment-15348671 ] Josh Elser commented on PHOENIX-2931: - bq. It is for psql command line that users need to have at least one input file and connection string is not required. It would be printed on the screen. Ah, my bad. I thought this was about the earlier discussion to allow many files for sqlline. bq. No need to use $. I followed the existing multi-line style. Tried other ways but this gives me the best format. Changed to use sys.exit(-1). Ok. +1 from me then. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.9.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931-v3.patch, PHOENIX-2931-v4.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15348660#comment-15348660 ] Alicia Ying Shu commented on PHOENIX-2931: -- [~elserj] Thanks for the review. No need to use $. I followed the existing multi-line style. Tried other ways but this gives me the best format. Changed to use sys.exit(-1). {code} +usageError("At least one input file must be supplied", options); {code} It is for psql command line that users need to have at least one input file and connection string is not required. It would be printed on the screen. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.9.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931-v3.patch, PHOENIX-2931-v4.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15348393#comment-15348393 ] Josh Elser commented on PHOENIX-2931: - {noformat} -if len(sys.argv) < 2: -print "Zookeeper not specified. \nUsage: sqlline.py \ - \nExample: \n 1. sqlline.py localhost:2181:/hbase \n 2. sqlline.py \ -localhost:2181:/hbase ../examples/stock_symbol.sql" +def printUsage(): +print "\nUsage: sqlline.py $[zookeeper_quorum_port] \ +$[optional_sql_file] \nExample: \n 1. sqlline.py \n \ +2. sqlline.py localhost:2181:/hbase \n 3. sqlline.py \ +localhost:2181:/hbase ../examples/stock_symbol.sql \n \ +4. sqlline.py ../examples/stock_symbol.sql" sys.exit() {noformat} 1. I would prefer {{sqlline.py \[zookeeper_quorum_port\] \[optional_sql_file\]}}. I've never see the {{$\[name\]}} notation to indicate an optional argument. 2. Nit: there are better ways to create multi-line strings: http://stackoverflow.com/questions/10660435/pythonic-way-to-create-a-long-multi-line-string 3. Nit: provide an argument to {{sys.exit()}} so that the return code isn't {{0}}. This was an abnormal exit of the script. {noformat} List argList = Lists.newArrayList(cmdLine.getArgList()); if (argList.isEmpty()) { -usageError("Connection string to HBase must be supplied", options); +usageError("At least one input file must be supplied", options); } {noformat} This documentation is wrong now, isn't it? The usage says only one file is accepted. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.9.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931-v3.patch, PHOENIX-2931-v4.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15348360#comment-15348360 ] Josh Elser commented on PHOENIX-2931: - Yeah, i'll take a look this morning, [~enis]. Thanks for the ping. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.9.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931-v3.patch, PHOENIX-2931-v4.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15347529#comment-15347529 ] Enis Soztutar commented on PHOENIX-2931: +1. [~elserj] you also want to take a look? > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.9.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931-v3.patch, PHOENIX-2931-v4.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15347404#comment-15347404 ] Alicia Ying Shu commented on PHOENIX-2931: -- [~enis] Thanks for the review! Uploaded a patch > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.9.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931-v3.patch, PHOENIX-2931-v4.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15346748#comment-15346748 ] Alicia Ying Shu commented on PHOENIX-2931: -- [~enis] Go through the parsing again is a sanity check to make sure the specifications of the connection information are correct. It is helpful. I think we should keep. As for the principal and keytab, very likely users will not put them in hbase-site.xml for security reasons. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.9.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931-v3.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15345161#comment-15345161 ] Enis Soztutar commented on PHOENIX-2931: Thanks Alicia, this is looking better. bq. This part of code is used by psql.py. If we did not provide connection string in the command line, the first arg would be a file. There is no guarantee the first one is a connection string. We are already checking whether the arg ends with .csv or .sql above. So my suggestion just simplifies the above, you don't have to have parameter named "j". Can you please try it like this: {code} int i = 0; // remove j here for (String arg : argList) { if (execCmd.isUpgrade || arg.endsWith(CSV_FILE_EXT) || arg.endsWith(SQL_FILE_EXT)) { inputFiles.add(arg); } else { if (i ==0) { execCmd.connectionString = arg; } else { usageError("Don't know how to interpret argument '" + arg + "'", options); } } i++; } // remove if (j > 0) check {code} I've just noticed two more things. - in ConnectionInfo.create(), we are constructing the JDBC string by concatenating, only to be parsed back immediately again to be returned as a ConnectionInfo object. We should instead directly return ConnectionInfo created from default configuration. - ConnectionInfo can carry the principal and keytab as well. [~elserj] do you know whether there are corresponding hbase-site.xml properties for these? Can we obtain them in any way for the client side if it does not come from the URL? > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.9.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931-v3.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15345137#comment-15345137 ] Hadoop QA commented on PHOENIX-2931: {color:red}-1 overall{color}. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12812593/PHOENIX-2931-v3.patch against master branch at commit bfda226ee2c89dd57a5d3a6fa4552980775bc525. ATTACHMENT ID: 12812593 {color:green}+1 @author{color}. The patch does not contain any @author tags. {color:green}+1 tests included{color}. The patch appears to include 3 new or modified tests. {color:green}+1 javac{color}. The applied patch does not increase the total number of javac compiler warnings. {color:red}-1 javadoc{color}. The javadoc tool appears to have generated 34 warning messages. {color:green}+1 release audit{color}. The applied patch does not increase the total number of release audit warnings. {color:red}-1 lineLengths{color}. The patch introduces the following lines longer than 100: +$[optional_sql_file] \nExample: 1. sqlline.py 2. sqlline.py localhost:2181:/hbase 3. sqlline.py \ +usageError("Connection string to HBase must be supplied before input files", options); {color:green}+1 core tests{color}. The patch passed unit tests in . {color:red}-1 core zombie tests{color}. There are 1 zombie test(s): Test results: https://builds.apache.org/job/PreCommit-PHOENIX-Build/409//testReport/ Javadoc warnings: https://builds.apache.org/job/PreCommit-PHOENIX-Build/409//artifact/patchprocess/patchJavadocWarnings.txt Console output: https://builds.apache.org/job/PreCommit-PHOENIX-Build/409//console This message is automatically generated. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.9.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931-v3.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15344986#comment-15344986 ] Alicia Ying Shu commented on PHOENIX-2931: -- [~enis] Thanks for the review. I have made the following modifications: * Removed the printlns and test related checking. Added a log for debug. * Moved getDefaultConnectionString() to driver codes as a private method. As said, in PhoenixRuntime we only parse the command line. We add the connection string in driver later. Will upload a revised patch > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.8.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15343134#comment-15343134 ] Alicia Ying Shu commented on PHOENIX-2931: -- No change in PhoenixEmbeddedDriverTest.testNegativeGetConnectionInfo(). Those are not supported connection strings. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.8.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15343095#comment-15343095 ] Alicia Ying Shu commented on PHOENIX-2931: -- >We already check whether it is a file or not above, no? The suggestion >simplifies the logic for handling the case where arg does not end with .csv or >.sql. No. Here we only parse the command line. We add the connection string in driver later. Also will move getDefaultConnectionString() to driver codes as a private method. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.8.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15343086#comment-15343086 ] Alicia Ying Shu commented on PHOENIX-2931: -- We need system tests for this. I do not think we have enough time for system testing. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.8.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15342839#comment-15342839 ] Ankit Singhal commented on PHOENIX-2931: By Today EOD most probably. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.8.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15342834#comment-15342834 ] Enis Soztutar commented on PHOENIX-2931: bq. The intention of this print statement was when users did not provide connection string in the command line, we could see it was getting from default explicitly. Of cause this info can be found from connection starting up print. You cannot have System.out.println() as a debug statement. Please remove. bq. jdbc:phoenix:null came from psql command line if we did not provide the connection string. jdbc:phoenix;test=true came from PhoenixEmbeddedDriverTest. You cannot have production code having test-related code like this. We should not pass "null" as the connection string, it should be empty string. bq. This part of code is used by psql.py. If we did not provide connection string in the command line, the first arg would be a file. There is no guarantee the first one is a connection string. We already check whether it is a file or not above, no? The suggestion simplifies the logic for handling the case where arg does not end with .csv or .sql. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.8.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15342838#comment-15342838 ] Alicia Ying Shu commented on PHOENIX-2931: -- [~ankit.singhal] Yes. If we could get it in. When is 4.8 due? > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.8.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15342833#comment-15342833 ] Alicia Ying Shu commented on PHOENIX-2931: -- [~enis] Thanks for the comments. See above. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.8.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15342819#comment-15342819 ] Ankit Singhal commented on PHOENIX-2931: Hi [~ayingshu], do you need this in 4.8? > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.8.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15342810#comment-15342810 ] Alicia Ying Shu commented on PHOENIX-2931: -- >Please remove System.out.println() statements. The intention of this print statement was when users did not provide connection string in the command line, we could see it was getting from default explicitly. Of cause this info can be found from connection starting up print. > Why jdbc:phoenix:null and jdbc:phoenix;test=true? jdbc:phoenix:null came from psql command line if we did not provide the connection string. jdbc:phoenix;test=true came from PhoenixEmbeddedDriverTest. {code} if (i ==0) { execCmd.connectionString = arg; } else { usageError("Don't know how to interpret argument '" + arg + "'", options); } {code} This part of code is used by psql.py. If we did not provide connection string in the command line, the first arg would be a file. There is no guarantee the first one is a connection string. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.8.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15342729#comment-15342729 ] Enis Soztutar commented on PHOENIX-2931: Please remove System.out.println() statements. Why {{jdbc:phoenix:null}} and {{jdbc:phoenix;test=true}}? getDefaultConnectionString() does not seem to belong in HBaseFactoryProvider. For below: {code} +execCmd.connectionString = arg; +j = i; .. +if (j > 0) { +usageError("Connection string to HBase must be supplied before input files", options); } {code} You can just do a much simpler thing: {code} if (i ==0) { execCmd.connectionString = arg; } else { usageError("Don't know how to interpret argument '" + arg + "'", options); } Tests work with the changes? PhoenixEmbeddedDriverTest.testNegativeGetConnectionInfo() needs to be changed? > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.8.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15342698#comment-15342698 ] Hadoop QA commented on PHOENIX-2931: {color:red}-1 overall{color}. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12812276/PHOENIX-2931-v2.patch against master branch at commit 9e03a48fb3c76f4a53c11fc6ede21ad573f80157. ATTACHMENT ID: 12812276 {color:green}+1 @author{color}. The patch does not contain any @author tags. {color:green}+1 tests included{color}. The patch appears to include 3 new or modified tests. {color:green}+1 javac{color}. The applied patch does not increase the total number of javac compiler warnings. {color:red}-1 javadoc{color}. The javadoc tool appears to have generated 34 warning messages. {color:green}+1 release audit{color}. The applied patch does not increase the total number of release audit warnings. {color:red}-1 lineLengths{color}. The patch introduces the following lines longer than 100: +$[optional_sql_file] \nExample: 1. sqlline.py 2. sqlline.py localhost:2181:/hbase 3. sqlline.py \ +usageError("Connection string to HBase must be supplied before input files", options); {color:red}-1 core tests{color}. The patch failed these unit tests: ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.AppendOnlySchemaIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.AutoPartitionViewsIT Test results: https://builds.apache.org/job/PreCommit-PHOENIX-Build/404//testReport/ Javadoc warnings: https://builds.apache.org/job/PreCommit-PHOENIX-Build/404//artifact/patchprocess/patchJavadocWarnings.txt Console output: https://builds.apache.org/job/PreCommit-PHOENIX-Build/404//console This message is automatically generated. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.8.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931-v2.patch, > PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15338874#comment-15338874 ] Hadoop QA commented on PHOENIX-2931: {color:red}-1 overall{color}. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12811739/PHOENIX-2931-v1.patch against master branch at commit d2b13475032f863313d4b32894ade05d1f1669c5. ATTACHMENT ID: 12811739 {color:green}+1 @author{color}. The patch does not contain any @author tags. {color:red}-1 tests included{color}. The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch. {color:green}+1 javac{color}. The applied patch does not increase the total number of javac compiler warnings. {color:red}-1 javadoc{color}. The javadoc tool appears to have generated 34 warning messages. {color:red}-1 release audit{color}. The applied patch generated 7 release audit warnings (more than the master's current 0 warnings). {color:red}-1 lineLengths{color}. The patch introduces the following lines longer than 100: +$[optional_sql_file] \nExample: 1. sqlline.py 2. sqlline.py localhost:2181:/hbase 3. sqlline.py \ +usageError("Connection string to HBase must be supplied before input files", options); {color:red}-1 core tests{color}. The patch failed these unit tests: org.apache.phoenix.jdbc.PhoenixEmbeddedDriverTest Test results: https://builds.apache.org/job/PreCommit-PHOENIX-Build/401//testReport/ Release audit warnings: https://builds.apache.org/job/PreCommit-PHOENIX-Build/401//artifact/patchprocess/patchReleaseAuditWarnings.txt Javadoc warnings: https://builds.apache.org/job/PreCommit-PHOENIX-Build/401//artifact/patchprocess/patchJavadocWarnings.txt Console output: https://builds.apache.org/job/PreCommit-PHOENIX-Build/401//console This message is automatically generated. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Fix For: 4.8.0 > > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15334811#comment-15334811 ] Alicia Ying Shu commented on PHOENIX-2931: -- There are 2 options for the solution. One is checking the connection string in Python. If not found, get it from hbase-site.xml. The other one is checking it in driver and adding the connection string if not supplied. I had played both. In my previous patch, had used the 1st approach given that it could be slightly faster and fail fast. Some internal discussion/review [~enis] suggested changing one place was better among [~sergey.soldatov] [~elserj]. Uploaded a version on 2nd approach (v1 patch). Also will preserve the order of connection string. It would be always before input files if supplied. Thanks all for the discussion and review! > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931-v1.patch, PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15311232#comment-15311232 ] Alicia Ying Shu commented on PHOENIX-2931: -- I have revised the patch to get defaults from hbase-site.xml without adding "-connection" option to see how it would work out since we would not make "-connection" required anyway. I tested it locally and would get a cluster to test it in a broad range as well. If it works out, we do not need change any existing behavior. Users just get a new option to not input Zookeeper connection string if they choose to do so. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15309004#comment-15309004 ] Enis Soztutar commented on PHOENIX-2931: Thinking about this, there is no surefire way to check the first argument to see whether it is the connection string. If it contains ":", we can assume it is a connection string, otherwise, we can just check whether it is a file by checking file exists. Or we can create a smaller compatibility issue, and only assume a connection string if it contains ":", otherwise we just assume it is a file. This will break in cases, where only the hostname is provided without the port or zk-root node, but it maybe fine for Phoenix-5.0. This is a very critical improvement in user-friendliness, I think we should have this one way or the other. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15308344#comment-15308344 ] Josh Elser commented on PHOENIX-2931: - You're completely right. SGTM! > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15305664#comment-15305664 ] Alicia Ying Shu commented on PHOENIX-2931: -- >If the user doesn't provide -connection, we could try adding the default >connection string from hbase-site.xml only if the first positional argument >points to a file (or there are no positional arguments). We can do this checking w/o adding "-connection". If for new usages we would like to add "-connection", should document it and would not make it required (so as to backwards compatible). > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15305114#comment-15305114 ] Sergey Soldatov commented on PHOENIX-2931: -- +1 > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15305113#comment-15305113 ] Josh Elser commented on PHOENIX-2931: - bq. But be aware that currently there is no requirement to use "-connnection" for either sqlline.py or psql.py. If users did not use it, we may wrongly replace their quorum with the one in hbase-site.xml. This solution is not backward compatible. Is it acceptable? If the user doesn't provide {{\-connection}}, we could try adding the default connection string from hbase-site.xml only if the first positional argument points to a file (or there are no positional arguments). That would be pretty good for compatibility, I believe. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15302804#comment-15302804 ] Alicia Ying Shu commented on PHOENIX-2931: -- [~jamestaylor] [~elserj] [~sergey.soldatov] Thanks for the discussion! Let me step back a little bit to explain why we had suggested using a keyword "default" or position-based checking existence of a file. The main reason is that we had hoped to avoid adding any directive that changes current behavior. If allow adding a directive such as "-connection", the solution becomes simple. We would require all sqlline.py and psql.py usages to add "-connection" if they would like to provide zookeeper quorum. If we did not find this directive, we would add zookeeper quorum from hbase-site.xml. But be aware that currently there is no requirement to use "-connnection" for either sqlline.py or psql.py. If users did not use it, we may wrongly replace their quorum with the one in hbase-site.xml. This solution is not backward compatible. Is it acceptable? > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15297493#comment-15297493 ] James Taylor commented on PHOENIX-2931: --- That seems more clear if we don't rely on position. Maybe some use {{--connection}} instead of {{--zookeepers}} as we have more info potentially in the string. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15297460#comment-15297460 ] Josh Elser commented on PHOENIX-2931: - As an initial observation, the scripts struggle with finding out Hadoop and HBase configuration values (aside: maybe this is a sign to try to centralize on something in Bigtop to push downstream packagers to also use?). I think Alicia and I have tried to tackle a couple of these types of improvements in the recent past. I think using some "standard" environment variables have at least pushed us in a good direction (e.g. set "HBASE_CONF_DIR" to point at a specific config). That said, I think better argument parsing is a logical follow-on. Positional-based argument parsing kind of has this ambiguity that I think is turning your nose up, James (but don't let me put words in your mouth). Would something like this be an improvement over what Alicia suggested? {{./sqlline.py --zookeepers zk1,zk2,zk3:2181:/hbase-whatever --file input.sql}} I think Sergey did a decent job at outlining how we could make this backwards compatible too. Let me do the same for my own sake :) 1. {{sqlline.py arg}}, if the argument is a file, extract ZooKeepers from the HBase configuration, else throw an error 2. {{sqlline.py arg arg}}, if the second argument isn't a file, throw an error (standard parsing now) 3. {{sqlline.py}}, extract ZooKeepers from the HBase configuration (lets the shell handle any redirected input) IMO, if we're going to make a change to how argument parsing works for clarity's sake, why not do it in such a way that doesn't rely on positional arguments to prevent us from hitting this problem in another $x months? > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15297433#comment-15297433 ] Alicia Ying Shu commented on PHOENIX-2931: -- What if users use ".txt", ".doc", etc. ? > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15297429#comment-15297429 ] James Taylor commented on PHOENIX-2931: --- Not sure. This sounds messy. Do you have any ideas, [~elserj]? > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15297428#comment-15297428 ] Sergey Soldatov commented on PHOENIX-2931: -- [~jamestaylor] Actually it's only sounds complicated. We have 2 (in case of psql 3) params. If only 1 provided, we can check whether it's a file on the file system and if it's not, we consider it as a connection uri. I can't see any difference between those two approaches. In both cases they may fail with the message 'Unable to connect to testfile'. But in my case we do not introduce any file name conventions. Not sure, but for example not all my test files have an .sql ext. Nor our certification suite (just checked - all files are .txt :) ) There are a couple others possible solutions like introduce a switch for the file (something like {{sqlline -f/--file sqlfile}}) or force user to use stdin ( {{sqlline Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15297419#comment-15297419 ] Alicia Ying Shu commented on PHOENIX-2931: -- What about if users use other extensions such as ".txt", ".csv", ".tsv", etc > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15297386#comment-15297386 ] James Taylor commented on PHOENIX-2931: --- Sounds complicated and hard to maintain. Weird things may happen. What's wrong with just checking if the argument ends in ".sql"? > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15297338#comment-15297338 ] Alicia Ying Shu commented on PHOENIX-2931: -- [~jamestaylor] Discussed this offline with [~sergey.soldatov] regarding to how to find the connection string. For psql.py, if there is any parameter without directive ('-' or '--'), will check whether it exists on file system. If not, assume it is a connection string, we are done. In this case, if it was a file and because it did not exit, the connection would fail anyway. If it exists on file system, found a file and continue looking for connection string. If not finding any, construct the connection string from hbase-site.xml. If find another string, we are done. Similar logic apply to sqlline.py as well. We can lift the requirement that connection string must be present as the 1st parameter when establishing a connection. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15294691#comment-15294691 ] Sergey Soldatov commented on PHOENIX-2931: -- Actually it's not. {{/hbase-unsecure}} is set by Ambari . Default value is {{/hbase}}. Here is the HBase code: {{noformat}} /** Parameter name for the root dir in ZK for this cluster */ public static final String ZOOKEEPER_ZNODE_PARENT = "zookeeper.znode.parent"; public static final String DEFAULT_ZOOKEEPER_ZNODE_PARENT = "/hbase"; {{noformat}} > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15294687#comment-15294687 ] Alicia Ying Shu commented on PHOENIX-2931: -- We can use zookeeper.znode.parent property. If it is not set, should we use /hbase-unsecure as default? Normally zookeeper.znode.parent should be set for secure environment. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15294684#comment-15294684 ] Alicia Ying Shu commented on PHOENIX-2931: -- We can use ".sql" extension to determine for sqlline.py. However, psql.py can have multiple command line parameters and zookeeper quorum is not necessary the first parameter. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15294597#comment-15294597 ] James Taylor commented on PHOENIX-2931: --- Agree with [~sergey.soldatov]. I think the code should work like that today - if the zookeeper quorum is absent, it should fallback to what ever is in hbase-site.xml. The script just needs to know that the first argument is the sql file. Perhaps we can just determine based on the ".sql" extension? > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15294586#comment-15294586 ] Sergey Soldatov commented on PHOENIX-2931: -- [~aliciashu] instead of hardcoding {{/hbase-unsecure}} you need to get {{zookeeper.znode.parent}} property from hbase-site.xml. And if it's not set, than use the default value {{/hbase}} Not sure about whether keyword {{default}} is useful. I would suggest to do as most of other DB clients do. If first argument is missing than use the values from the hbase conf. But it will raise an another question how to understand whether single parameter is a url or sql file. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15294544#comment-15294544 ] Alicia Ying Shu commented on PHOENIX-2931: -- Uploaded a patch. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15294540#comment-15294540 ] Alicia Ying Shu commented on PHOENIX-2931: -- [~jamestaylor] Please provide your opinion on this. Thanks. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > Attachments: PHOENIX-2931.patch > > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15294413#comment-15294413 ] Alicia Ying Shu commented on PHOENIX-2931: -- Users should set env HBASE_CONF_DIR, where hbase-site.xml is under this dir. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (PHOENIX-2931) Phoenix client asks users to provide configs in cli that are present on the machine in hbase conf
[ https://issues.apache.org/jira/browse/PHOENIX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15294410#comment-15294410 ] Alicia Ying Shu commented on PHOENIX-2931: -- Users can specify: >sqlline.py default Then sqlline will be started using zookeeper quorum+port from hbase configs in unsecured mode. > Phoenix client asks users to provide configs in cli that are present on the > machine in hbase conf > - > > Key: PHOENIX-2931 > URL: https://issues.apache.org/jira/browse/PHOENIX-2931 > Project: Phoenix > Issue Type: Bug >Reporter: Alicia Ying Shu >Assignee: Alicia Ying Shu >Priority: Minor > > Users had complaints on running commands like > {code} > phoenix-sqlline > pre-prod-poc-2.novalocal,pre-prod-poc-10.novalocal,pre-prod-poc-1.novalocal:/hbase-unsecure > service-logs.sql > {code} > However the zookeeper quorum and the port are available in hbase configs. > Phoenix should read these configs from the system instead of having the user > supply them every time. > What we can do is to introduce a keyword "default". If it is specified, > default zookeeper quorum and port will be taken from hbase configs. > Otherwise, users can specify their own. -- This message was sent by Atlassian JIRA (v6.3.4#6332)