Andrew Spitzer created CASSANDRA-7095:
-----------------------------------------

             Summary: Cqlsh reads floats and doubles with added non-trivial 
precision
                 Key: CASSANDRA-7095
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7095
             Project: Cassandra
          Issue Type: Bug
          Components: Tools
         Environment: Ubuntu 12.04.3
Python 2.7.3
            Reporter: Andrew Spitzer


I found that on Cqlsh v. 4.1.1 and Cassandra 2.0.6.28 when I inserted value 
into float or double column, "select" returned a slightly different value

If cqlsh returns with only a low level precision this does not show
{code}
cqlsh> create KEYSPACE test WITH replication = {'class': 'SimpleStrategy', 
'replication_factor':1};
cqlsh> use test ;
cqlsh:test> create table testing (a int PRIMARY KEY , b float);
cqlsh:test> INSERT INTO testing (a, b ) VALUES (  1, 2.0002);
cqlsh:test> select * FROM testing ;

 a | b
---+--------
 1 | 2.0002

{code}

But if precision is increased, for example, 20 digits:
{code}
cqlsh> SELECT * FROM test.testing ;

 a | b
---+-----------------------
 1 | 2.0002000331878662109
{code}

Using sstable2json, one sees that this issue is with cqlsh, the actual data is  
the value inserted:
{code}
sstable2json /var/lib/cassandra/data/test/testing/test-testing-jb-1-Data.db 
[
{"key": "00000001","columns": [["","",1398459775180000], 
["b","2.0002",1398459775180000]]}
]
{code}



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to