[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13096287#comment-13096287 ] Eric Evans commented on CASSANDRA-3010: --- {quote} Another argument for non-python cqlsh is that cqlsh given from datastax wouldn't even start on windows due to the "readline" pypi package not being available for windows. {quote} readline's inclusion should be conditional on the platform (and/or availability of that module) then. That's something that should happen either way. See CASSANDRA-3131. > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich >Priority: Minor > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13096010#comment-13096010 ] Jonathan Ellis commented on CASSANDRA-3010: --- Good point. There is pyreadline for windows [1] but it looks a little raw. [2] [1] https://launchpad.net/pyreadline [2] https://answers.launchpad.net/pyreadline/+question/140906 > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich >Priority: Minor > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13096003#comment-13096003 ] Saulius Menkevicius commented on CASSANDRA-3010: Another argument for non-python cqlsh is that cqlsh given from datastax wouldn't even start on windows due to the "readline" pypi package not being available for windows. D:\python-ve\Scripts>cqlsh.bat Traceback (most recent call last): File "cqlsh", line 24, in import readline ImportError: No module named readline D:\python-ve\Scripts>pip install readline Downloading/unpacking readline Downloading readline-6.2.1.tar.gz (2.3Mb): 2.3Mb downloaded Running setup.py egg_info for package readline error: this module is not meant to work on Windows Complete output from command python setup.py egg_info: error: this module is not meant to work on Windows Command python setup.py egg_info failed with error code 1 > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich >Priority: Minor > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13090310#comment-13090310 ] Jonathan Ellis commented on CASSANDRA-3010: --- There's actually a more meaningful reason why avoiding extra dependencies is a good thing: the most popular dev platform remains Windows, where dependency management remains firmly in the dark ages. It's kind of a black eye for the new-user experience if Joe Windows tries to follow the README and try some sample CQL, but it doesn't work until he goes and installs Python first. > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13082634#comment-13082634 ] Jonathan Ellis commented on CASSANDRA-3010: --- I didn't say it's a *good* argument. :) But - I don't want even bad arguments to hurt adoption - Extending cqlsh to handle the metadata introspection that the cli does, would be about as much work as creating a new cql shell in Java with the existing introspection code from the cli, so if we do this now it doesn't cost us much if anything overall > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13082632#comment-13082632 ] Jonathan Ellis commented on CASSANDRA-3010: --- The argument is, "our infrastructure team doesn't mind installing Java tools because we already need the JVM for Cassandra et al, but they pitched a fit about having to install Python prerequisites." > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13082625#comment-13082625 ] Gary Dusbabek commented on CASSANDRA-3010: -- What is the argument against CQLSH? It should be easy enough to augment with introspection, etc. > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13082480#comment-13082480 ] Jonathan Ellis commented on CASSANDRA-3010: --- "There should be one--and preferably only one--obvious way to do it." This makes it easier to be sure there aren't subtle differences between DESC and \d, as a user, as well as sharing scripts within and across teams. That is why you don't see anyone else taking the "let's just add all the dialects" approach. > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13082466#comment-13082466 ] Jeremy Hanna commented on CASSANDRA-3010: - bq. we can support all of those notations using synonyms in the ANTLR grammar bq. The drawbacks here outweigh the positives, IMO. I agree that it would be good to have one as an inspiration. However, adding synonyms for common variations of the same command without any expectation of compatibility seems reasonable/trivial. Are there other drawbacks besides the expectation of compatibility? > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13082441#comment-13082441 ] Jonathan Ellis commented on CASSANDRA-3010: --- bq. we can support all of those notations using synonyms in the ANTLR grammar The drawbacks here outweigh the positives, IMO. Let's just pick one for "inspiration," but not set the expectation that we're trying to actually provide any real compatibility. > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13082402#comment-13082402 ] Jonathan Ellis commented on CASSANDRA-3010: --- bq. Is this syntax going to be available to clients of CQL queries at run time, or is this just a CLI grammar addition? The latter. (Which matches every other language + db shell combination I have seen.) bq. I believe the functionality of the "describe" needs to be available at runtime. Agreed, but not by adding extra syntax to CQL itself (CASSANDRA-2477). bq. By "cli", do you mean "cqlsh"? If not, how will a CQL shell avoid breaking scripts that use the cli's syntax? That was my way of saying "we should make a new tool, and leave the existing cli alone for backwards compatibility." > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13082383#comment-13082383 ] Pavel Yaskevich commented on CASSANDRA-3010: bq. By "cli", do you mean "cqlsh"? If not, how will a CQL shell avoid breaking scripts that use the cli's syntax? I guess Jonathan meant CQL instead of CLI in there?... > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13082381#comment-13082381 ] Eric Evans commented on CASSANDRA-3010: --- bq. does not break existing cli scripts By "cli", do you mean "cqlsh"? If not, how will a CQL shell avoid breaking scripts that use the cli's syntax? > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13082333#comment-13082333 ] Rick Shaw commented on CASSANDRA-3010: -- Is this syntax going to be available to clients of CQL queries at run time, or is this just a CLI grammar addition? I believe the functionality of the "describe" needs to be available at runtime. +1 on the full spelling of "describe" in any case. > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13081982#comment-13081982 ] Pavel Yaskevich commented on CASSANDRA-3010: I don't think that we should choose anything because we can support all of those notations using synonyms in the ANTLR grammar. That would be hard from the begging to include all of the possible synonyms but grammar will be designed in the way which will allow to easy add new synonyms as we go. > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13081977#comment-13081977 ] Jeremy Hanna commented on CASSANDRA-3010: - If I had to choose one, it would be nice to be more descriptive (describe versus \d). However, it would be really nice to have a basic concept of synonyms. For example mysql's cli supports both describe and desc. Building that type of functionality in from the start shouldn't be too onerous. > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13081974#comment-13081974 ] Jonathan Ellis commented on CASSANDRA-3010: --- I.e., do we do "\d CF" (postgresql) or "describe CF" (mysql) or "desc CF" (oracle)? > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-3010) Java CQL command-line shell
[ https://issues.apache.org/jira/browse/CASSANDRA-3010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13081973#comment-13081973 ] Jonathan Ellis commented on CASSANDRA-3010: --- We should also pick a SQL command line to imitate for the introspection stuff. Might as well get that degree of familiarity as well since there is no reason not to. > Java CQL command-line shell > --- > > Key: CASSANDRA-3010 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3010 > Project: Cassandra > Issue Type: New Feature > Components: Tools >Reporter: Jonathan Ellis >Assignee: Pavel Yaskevich > Fix For: 1.0 > > > We need a "real" CQL shell that: > - does not require installing additional environments > - includes "show keyspaces" and other introspection tools > - does not break existing cli scripts > I.e., it needs to be java, but it should be a new tool instead of replacing > the existing cli. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira