2017-05-18 4 views
0

Je tablefonction toTimestamp ne fonctionne pas dans l'instruction select cassandra

cqlsh> DESC relation.students; 

CREATE TABLE relation.students (
    student_id uuid, 
    created_at timeuuid, 
    name text, 
    PRIMARY KEY (student_id, created_at) 
) WITH CLUSTERING ORDER BY (created_at DESC) 
    AND bloom_filter_fp_chance = 0.01 
    AND caching = '{"keys":"ALL", "rows_per_partition":"NONE"}' 
    AND comment = '' 
    AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy'} 
    AND compression = {'sstable_compression': 'org.apache.cassandra.io.compress.LZ4Compressor'} 
    AND dclocal_read_repair_chance = 0.1 
    AND default_time_to_live = 0 
    AND gc_grace_seconds = 864000 
    AND max_index_interval = 2048 
    AND memtable_flush_period_in_ms = 0 
    AND min_index_interval = 128 
    AND read_repair_chance = 0.0 
    AND speculative_retry = '99.0PERCENTILE'; 
CREATE INDEX index_students_student_id ON relation.students (student_id); 

Quand je vérifie timeuuid functions, il a la fonction toTimestamp, lorsque je tente d'utiliser cela, il donne l'erreur.

cqlsh> select student_id, name, toTimestamp(created_at) from relation.students where student_id=c2e160e6-27bb-4e25-91ca-e33dc7538d25; 
InvalidRequest: code=2200 [Invalid query] message="Unknown function 'toTimestamp'" 

J'utilise la version 2.1

cqlsh> select peer, release_version from system.peers; 

peer  | release_version 
-------------+----------------- 
    127.0.0.1 |  2.1.14.1272 

Répondre

1

Dans Cassandra 2.2 introduit toTimestamp
Vérifiez la Cassandra Release News

Vous pouvez également créer votre propre fonction. Cheeck UDF. UDF également introduit dans Cassandra 2.2

Si vous utilisez Cassandra inférieur à 2.2, vous ne pouvez pas utiliser cette fonction.

+0

Merci Ashraful, je vais voir si je peux mettre à jour cassandra. – Nilesh