cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stefania (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-12379) CQLSH completion test broken by #12236
Date Fri, 05 Aug 2016 04:47:20 GMT

    [ https://issues.apache.org/jira/browse/CASSANDRA-12379?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15408868#comment-15408868
] 

Stefania commented on CASSANDRA-12379:
--------------------------------------

The test is complaining that it doesn't find 'cdc' amongst valid completion options to the
CREATE TABLE or CREATE COLUMNFAMILY statements. These options are hard-coded in the test.
It's just a matter of back-porting this Ninja commit, which is already on 3.9 and trunk:

{code} 
commit 584eae3910b303f755f3965403d744e588300482
Author: Tyler Hobbs <tylerlhobbs@gmail.com>
Date:   Tue Jul 19 14:40:55 2016 -0500

    Ninja: update cqlsh completion tests for CASSANDRA-8844
    
    In CASSANDRA-8844, a new 'cdc' table option was added.  The python
    driver added this as a recognized option, which caused it to show up in
    cqlsh autocomplete suggestions.  However, the cqlsh tests were not
    updated to match this.
    
    This should fix the following failing tests:
     - test_complete_in_create_table
     - test_complete_in_create_columnfamily
{code}

Note that the description of the commit is slightly incorrect, it is not the driver but cqlsh
itself that determines the valid completion options, see {{cfamProperty}} in cql3handling.py.
This is unrelated to CASSANDRA-12236 or the cdc flag in cassandra.yaml, it is just something
that was forgotten when CASSANDRA-8844 was committed.

Is a {{cherry-pick}} plus {{merge -s ours}} the correct way to backport this commit to the
3.8 branch [~slebresne]?

For completeness sake, I also add that in order to run these tests there is already a cassandra.yaml
parameter that must be changed: {{enable_user_defined_functions}} must be true. Also, there
mustn't be any user keyspaces that exist, and Cassandra must be launched manually. Then, the
tests should be run by typing "nosetests" in pylib/cqlshlib/test. Finally, these tests won't
work at all in 2.1 because the driver API has changed and it doesn't match the API of the
driver embedded into cqlsh 2.1. Perhaps we ought to document this somewhere.


> CQLSH completion test broken by #12236
> --------------------------------------
>
>                 Key: CASSANDRA-12379
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-12379
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Sylvain Lebresne
>            Assignee: Stefania
>
> The commit of CASSANDRA-12236 appears to have broken [cqlsh completion tests|http://cassci.datastax.com/job/cassandra-3.8_cqlsh_tests/6/cython=yes,label=ctool-lab/testReport/junit/cqlshlib.test.test_cqlsh_completion/TestCqlshCompletion/test_complete_in_create_columnfamily/].
For the error message I suspect this may have to do with something like the test comparing
the completion output to what DESCRIBE shows and the later now doesn't include the {{cdc}}
option by default.
> Anyway, I'm not really familiar with cqlsh completion nor it's test so I'm not sure what's
the best option. I don't think we want to remove {{cdc}} from completion so I suspect we want
to either special case the test somehow (no clue how to do that), or make the test run with
cdc enabled so it doesn't complain (which I think mostly apply a change to the CI environment
since it seems the tests themselves don't spin up the cluster).
> Anyway, pushing that fix to someone else as I'm not competent here and I have't even
be able to run those cqlsh test so far (getting stuck at the test telling me that "No appropriate
python interpreter found", even though I totally have an appropriate interpreter and cqlsh
works perfectly if I execute it directly). 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message