You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Brandon Williams (Jira)" <ji...@apache.org> on 2021/01/04 21:00:00 UTC
[jira] [Comment Edited] (CASSANDRA-16372) Import from csv of empty
strings in list fails with a ParseError: Empty values are not allowed,
given up without retries
[ https://issues.apache.org/jira/browse/CASSANDRA-16372?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17258492#comment-17258492 ]
Brandon Williams edited comment on CASSANDRA-16372 at 1/4/21, 8:59 PM:
-----------------------------------------------------------------------
Also note that the summary at the end is completely wrong and does not count the skip.
was (Author: brandon.williams):
Repros against 3.11 head. Also note that the summary at the end is completely wrong and does not count the skip.
> Import from csv of empty strings in list fails with a ParseError: Empty values are not allowed, given up without retries
> -------------------------------------------------------------------------------------------------------------------------
>
> Key: CASSANDRA-16372
> URL: https://issues.apache.org/jira/browse/CASSANDRA-16372
> Project: Cassandra
> Issue Type: Bug
> Components: Tool/cqlsh
> Reporter: Ostico
> Priority: Normal
> Fix For: 3.11.10, 4.0-rc
>
>
>
> Cqlsh fail to import an empty string which is present in a list data type.
> {color:#ff0000}_In those conditions, simple csv backups can discard rows and data can be corrupted._{color}
>
> *Conditions*
>
> {code:java}
> # cqlsh
> Connected to Test Cluster at 127.0.0.1:9042.
> [cqlsh 5.0.1 | Cassandra 3.11.6 | CQL spec 3.4.4 | Native protocol v4]
> Use HELP for help.
> CREATE TABLE test.test_1 (
> uid uuid PRIMARY KEY,
> texts list<text>
> );
> insert into test.test_1 ( uid, texts ) VALUES( 833fee3f-d4f9-418b-9387-84ac2cda5cb7, ['But if you now try to wash your hands,', ''] );
> {code}
>
> Now exporting and and re-importing data fails:
>
> {code:java}
> cqlsh> select * from test.test_1;
> uid | texts
> --------------------------------------+------------------------------------------------
> 833fee3f-d4f9-418b-9387-84ac2cda5cb7 | ['But if you now try to wash your hands,', '']
> cqlsh> COPY test.test_1 (uid, texts) TO 'ctm.csv';
> Using 7 child processesStarting copy of test.test_1 with columns [uid, texts].
> Processed: 1 rows; Rate: 9 rows/s; Avg. rate: 9 rows/s 1 rows exported to 1 files in 0.148 seconds.
> cqlsh> truncate table test.test_1;
> cqlsh> COPY test.test_1 (uid, texts) FROM 'ctm.csv';
> Using 7 child processes
> Starting copy of test.test_1 with columns [uid, texts].
> Failed to import 1 rows: ParseError - Failed to parse ['But if you now try to wash your hands,', ''] : Empty values are not allowed, given up without retries
> Failed to process 1 rows; failed rows written to import_test_test_1.err
> Processed: 1 rows; Rate: 2 rows/s; Avg. rate: 2 rows/s
> 1 rows imported from 1 files in 0.415 seconds (0 skipped).
> cqlsh> select * from test.test_1;
> uid | pid
> -----+-----
> {code}
>
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org