cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sylvain Lebresne (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-6185) Can't update int column to blob type.
Date Mon, 14 Oct 2013 09:19:44 GMT

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

Sylvain Lebresne commented on CASSANDRA-6185:
---------------------------------------------

bq. or is this actually a regression?

Kind of. In CASSANDRA-5882, we decided on purpose to stop allowing type changes that were
not making sense. In doing so, we've been too restrictive, disallowing some type changes that
stricly speaking make sense, which you could say is a restriction (of CASSANDRA-5882).

I'll note that the patch really only change code related to altering type, which is hardly
mission critical, so I don't think there is too much risk in pushing it in 1.2. But personally
I don't really care either way.


> Can't update int column to blob type.
> -------------------------------------
>
>                 Key: CASSANDRA-6185
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6185
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Nick Bailey
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>             Fix For: 2.0.2
>
>         Attachments: 6185.txt
>
>
> Patch for dtests:
> {noformat}
> diff --git a/cql_tests.py b/cql_tests.py
> index 11461e4..405c998 100644
> --- a/cql_tests.py
> +++ b/cql_tests.py
> @@ -1547,35 +1547,35 @@ class TestCQL(Tester):
>              CREATE TABLE test (
>                  k text,
>                  c text,
> -                v text,
> +                v int,
>                  PRIMARY KEY (k, c)
>              )
>          """)
> -        req = "INSERT INTO test (k, c, v) VALUES ('%s', '%s', '%s')"
> +        req = "INSERT INTO test (k, c, v) VALUES ('%s', '%s', %d)"
>          # using utf8 character so that we can see the transition to BytesType
> -        cursor.execute(req % ('ɸ', 'ɸ', 'ɸ'))
> +        cursor.execute(req % ('ɸ', 'ɸ', 1))
>          cursor.execute("SELECT * FROM test")
>          cursor.execute("SELECT * FROM test")
>          res = cursor.fetchall()
> -        assert res == [[u'ɸ', u'ɸ', u'ɸ']], res
> +        assert res == [[u'ɸ', u'ɸ', 1]], res
>          cursor.execute("ALTER TABLE test ALTER v TYPE blob")
>          cursor.execute("SELECT * FROM test")
>          res = cursor.fetchall()
>          # the last should not be utf8 but a raw string
> -        assert res == [[u'ɸ', u'ɸ', 'ɸ']], res
> +        assert res == [[u'ɸ', u'ɸ', '\x00\x00\x00\x01']], res
>          cursor.execute("ALTER TABLE test ALTER k TYPE blob")
>          cursor.execute("SELECT * FROM test")
>          res = cursor.fetchall()
> -        assert res == [['ɸ', u'ɸ', 'ɸ']], res
> +        assert res == [['ɸ', u'ɸ', '\x00\x00\x00\x01']], res
>          cursor.execute("ALTER TABLE test ALTER c TYPE blob")
>          cursor.execute("SELECT * FROM test")
>          res = cursor.fetchall()
> -        assert res == [['ɸ', 'ɸ', 'ɸ']], res
> +        assert res == [['ɸ', 'ɸ', '\x00\x00\x00\x01']], res
>      @since('1.2')
>      def composite_row_key_test(self):
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Mime
View raw message