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

Paulo Motta commented on CASSANDRA-10854:
-----------------------------------------

With the current approach if you try to insert an empty {{int}} value, the 
message will vary:
* {{Failed to import 4 rows: ValueError - invalid literal for int() with base 
10: '' -  given up after 1 attempts}} will be print if {{WITH NULL}} is set.
* {{Failed to import 4 rows: ValueError - Cannot insert null value for primary 
key column 'bla'. If you want to insert empty strings, consider using the WITH 
NULL=<marker> option for COPY. -  given up after 1 attempts}} will be print if 
{{WITH NULL}} is not set.

So it would be nice to unify those. And I think we can also get rid of the  
{{If you want to insert empty strings, consider using the WITH NULL=<marker> 
option for COPY}} message, since even if it's a text, we cannot have nulls in 
the primary keys so this might confuse users.

I'd vote for just having the message {{Failed to import 1 rows: ValueError - 
Cannot insert null value for primary key column 'bla2'}}, regardless of type 
and if nullval is set.

> cqlsh COPY FROM csv having line with more than one consecutive  ',' delimiter 
>  is throwing 'list index out of range'
> --------------------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-10854
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10854
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Tools
>         Environment: cqlsh 5.0.1 | Cassandra 2.1.11.969 | DSE 4.8.3 | CQL 
> spec 3.2.1 
>            Reporter: Puspendu Banerjee
>            Assignee: Stefania
>            Priority: Minor
>
> cqlsh COPY FROM csv having line with more than one consecutive  ',' delimiter 
>  is throwing 'list index out of range'
> Steps to re-produce:
> {code}
> CREATE TABLE tracks_by_album (
>   album_title TEXT,
>   album_year INT,
>   performer TEXT STATIC,
>   album_genre TEXT STATIC,
>   track_number INT,
>   track_title TEXT,
>   PRIMARY KEY ((album_title, album_year), track_number)
> );
> {code}
> Create a file: tracks_by_album.csv having following 2 lines :
> {code}
> album,year,performer,genre,number,title
> a,2015,b c d,e f g,,
> {code}
> {code}
> cqlsh> COPY music.tracks_by_album
>      (album_title, album_year, performer, album_genre, track_number, 
> track_title)
> FROM '~/tracks_by_album.csv'
> WITH HEADER = 'true';
> Error :
> Starting copy of music.tracks_by_album with columns ['album_title', 
> 'album_year', 'performer', 'album_genre', 'track_number', 'track_title'].
> list index out of range
> Aborting import at record #1. Previously inserted records are still present, 
> and some records after that may be present as well.
> {code}



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

Reply via email to