You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Stefania (JIRA)" <ji...@apache.org> on 2016/02/29 02:09:18 UTC

[jira] [Created] (CASSANDRA-11274) cqlsh: interpret CQL type for formatting blobs

Stefania created CASSANDRA-11274:
------------------------------------

             Summary: cqlsh: interpret CQL type for formatting blobs
                 Key: CASSANDRA-11274
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11274
             Project: Cassandra
          Issue Type: Improvement
          Components: Tools
            Reporter: Stefania
            Assignee: Stefania
             Fix For: 3.x


During the development of CASSANDRA-11053 we have added changes to the cqlsh formatting code so that we can format {{blob}} types correctly even if they are represented as {{str}} rather than {{bytearray}}.

At the moment we ensure {{blob}} are of type {{bytearray}} via the following trick:

{code}
cassandra.cqltypes.BytesType.deserialize = staticmethod(lambda byts, protocol_version: bytearray(byts))
{code}

After CASSANDRA-11053 is committed there will be a similar trick to override the fast serializers implemented in cython. This trick was not known initially, which is why the code to interpret CQL types was written.

Decoding the CQL type is safer in that it decouples cqlsh formatting from the types returned by the driver deserializers but it is also unnecessary for CASSANDRA-11053 performance goals and risky for older releases. 

Therefore this ticket delivers this functionality but only on trunk.




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