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)

Reply via email to