cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nicolae Namolovan (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (CASSANDRA-13364) Cqlsh COPY fails importing Map<String,List<String>>, ParseError unhashable type list
Date Wed, 29 Mar 2017 08:12:41 GMT

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

Nicolae Namolovan edited comment on CASSANDRA-13364 at 3/29/17 8:11 AM:
------------------------------------------------------------------------

I see. Thanks for the fix 👍 I've just checked that the tuple type in python preserves the
order, and it does.


was (Author: nicolaen):
I see. Thanks for the fix 👍 I just checked that the tuple type in python preserves the
order, and it does.

> Cqlsh COPY fails importing Map<String,List<String>>, ParseError unhashable
type list
> ------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-13364
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13364
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Tools
>            Reporter: Nicolae Namolovan
>            Assignee: Stefania
>              Labels: cqlsh
>             Fix For: 2.1.x, 2.2.x, 3.0.x, 3.11.x
>
>
> When importing data with the _COPY_ command into a column family that has a _map<text,
frozen<list<text>>>_ field, I get a _unhashable type: 'list'_ error. Here is
how to reproduce:
> {code}
> CREATE TABLE table1 (
>     col1 int PRIMARY KEY,
>     col2map map<text, frozen<list<text>>>
> );
> insert into table1 (col1, col2map) values (1, {'key': ['value1']});
> cqlsh:ks> copy table1 to 'table1.csv';
> table1.csv file content:
> 1,{'key': ['value1']}
> cqlsh:ks> copy table1 from 'table1.csv';
> ...
> Failed to import 1 rows: ParseError - Failed to parse {'key': ['value1']} : unhashable
type: 'list',  given up without retries
> Failed to process 1 rows; failed rows written to kv_table1.err
> Processed: 1 rows; Rate:       2 rows/s; Avg. rate:       2 rows/s
> 1 rows imported from 1 files in 0.420 seconds (0 skipped).
> {code}
> But it works fine for Map<String, Set<String>>.
> {code}
> CREATE TABLE table2 (
>     col1 int PRIMARY KEY,
>     col2map map<text, frozen<set<text>>>
> );
> insert into table2 (col1, col2map) values (1, {'key': {'value1'}});
> cqlsh:ks> copy table2 to 'table2.csv';
> table2.csv file content:
> 1,{'key': {'value1'}}
> cqlsh:ks> copy table2 from 'table2.csv';
> Processed: 1 rows; Rate:       2 rows/s; Avg. rate:       2 rows/s
> 1 rows imported from 1 files in 0.417 seconds (0 skipped).
> {code}
> The exception seems to arrive in _convert_map_ function in _ImportConversion_ class inside
_copyutil.py_.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message