cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Arunkumar M (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (CASSANDRA-11534) cqlsh fails to format collections when using aliases
Date Thu, 18 Aug 2016 07:30:23 GMT

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

Arunkumar M edited comment on CASSANDRA-11534 at 8/18/16 7:29 AM:
------------------------------------------------------------------

This is because while formatting the row values the corresponding "cql_types" (ex: list[text],
text) are None for all the aliases.

In the line /bin/cqlsh.py#L1339
 cql_types = [CqlType(table_meta.columns[c].cql_type, ks_meta)
                           if c in table_meta.columns else None for c in column_names]
formatted_values = [map(self.myformat_value, row.values(), cql_types) for row in rows]


"table_meta.columns" contains the actual column names but "column_names" from result query
contains the aliases so the cql_types list contains None for the aliases.

Related ticket: https://issues.apache.org/jira/browse/CASSANDRA-11274


was (Author: arunkumar):
This is because while formatting the row values the corresponding "cql_types" (ex: list[text],
text) are None for all the aliases.

In the line /bin/cqlsh.py#L1339
 cql_types = [CqlType(table_meta.columns[c].cql_type, ks_meta)
                         if c in table_meta.columns else None for c in column_names]

"table_meta.columns" contains the actual column names but "column_names" from result query
contains the aliases so the cql_types list contains None for the aliases.

Related ticket: https://issues.apache.org/jira/browse/CASSANDRA-11274

> cqlsh fails to format collections when using aliases
> ----------------------------------------------------
>
>                 Key: CASSANDRA-11534
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11534
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Robert Stupp
>            Priority: Minor
>
> Given is a simple table. Selecting the columns without an alias works fine. However,
if the map is selected using an alias, cqlsh fails to format the value.
> {code}
> create keyspace foo WITH replication = {'class': 'SimpleStrategy', 'replication_factor':
1};
> CREATE TABLE foo.foo (id int primary key, m map<int, text>);
> insert into foo.foo (id, m) VALUES ( 1, {1: 'one', 2: 'two', 3:'three'});
> insert into foo.foo (id, m) VALUES ( 2, {1: '1one', 2: '2two', 3:'3three'});
> cqlsh> select id, m from foo.foo;
>  id | m
> ----+-------------------------------------
>   1 |    {1: 'one', 2: 'two', 3: 'three'}
>   2 | {1: '1one', 2: '2two', 3: '3three'}
> (2 rows)
> cqlsh> select id, m as "weofjkewopf" from foo.foo;
>  id | weofjkewopf
> ----+-----------------------------------------------------------------------
>   1 |    OrderedMapSerializedKey([(1, u'one'), (2, u'two'), (3, u'three')])
>   2 | OrderedMapSerializedKey([(1, u'1one'), (2, u'2two'), (3, u'3three')])
> (2 rows)
> Failed to format value OrderedMapSerializedKey([(1, u'one'), (2, u'two'), (3, u'three')])
: 'NoneType' object has no attribute 'sub_types'
> Failed to format value OrderedMapSerializedKey([(1, u'1one'), (2, u'2two'), (3, u'3three')])
: 'NoneType' object has no attribute 'sub_types'
> {code}



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

Mime
View raw message