cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert Stupp (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CASSANDRA-11633) cqlsh COPY FROM fails with []{} chars in UDT/tuple fields/values
Date Fri, 22 Apr 2016 11:02:12 GMT
Robert Stupp created CASSANDRA-11633:
----------------------------------------

             Summary: cqlsh COPY FROM fails with []{} chars in UDT/tuple fields/values
                 Key: CASSANDRA-11633
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11633
             Project: Cassandra
          Issue Type: Bug
            Reporter: Robert Stupp
            Assignee: Robert Stupp
            Priority: Minor


Assuming you have a table with a UDT and the import CSV line looks like this:

{code}
ff92ee2f-2aa1-4008-bba7-5600112233b9,"{udt_field: 'N[24-26', other_field: '24', more_data:
'}",,some,more,data,follows
{code}

cqlsh COPY FROM raises {{IndexError: tuple index out of range}} with a traceback like this:
{code}
  File "/Users/snazy/devel/cassandra/trunk/bin/../pylib/cqlshlib/copyutil.py", line 2271,
in make_prepared_batch_statement
    statement._statements_and_parameters = [(True, query.query_id, query.bind(r).values) for
r in batch['rows']]
  File "/Users/snazy/devel/cassandra/trunk/bin/../lib/cassandra-driver-internal-only-3.0.0-6af642d.zip/cassandra-driver-3.0.0-6af642d/cassandra/query.py",
line 411, in bind
    return BoundStatement(self).bind(values)
  File "/Users/snazy/devel/cassandra/trunk/bin/../lib/cassandra-driver-internal-only-3.0.0-6af642d.zip/cassandra-driver-3.0.0-6af642d/cassandra/query.py",
line 531, in bind
    self.values.append(col_spec.type.serialize(value, proto_version))
  File "/Users/snazy/devel/cassandra/trunk/bin/../lib/cassandra-driver-internal-only-3.0.0-6af642d.zip/cassandra-driver-3.0.0-6af642d/cassandra/cqltypes.py",
line 686, in serialize
    return cls.serialize_safe(val, protocol_version)
  File "/Users/snazy/devel/cassandra/trunk/bin/../lib/cassandra-driver-internal-only-3.0.0-6af642d.zip/cassandra-driver-3.0.0-6af642d/cassandra/cqltypes.py",
line 906, in serialize_safe
    item = val[i]
{code}

Reason is in {{ImportConversion._get_converter.split}} that accidentally recognizes square
and curly brackets in quoted strings. Attached patch should fix this issue.



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

Mime
View raw message