Hi me again - sorry i've just read that bytestype will expect hex input so my question now is how to create a column that will accept non-validated text as as input? I think I can maybe get round this by forcing UTF8Encoding regardless if the string is already identified as UTF8 or not however it seems like im missing some fundamental knowledge about casandra validation?
Cheers Sam From: hodgson_...@hotmail.com To: user@cassandra.apache.org Subject: Secondary Index Validation Type Parse Error Date: Sun, 18 Mar 2012 13:02:10 +0000 Hi All, Getting the following parse error when trying to create a CF with a secondary index using the bytestype attribute, the index is for a column called 'subject': java.lang.RuntimeException: org.apache.cassandra.db.marshal.MarshalException: cannot parse 'subject' as hex bytes Im doing all my validation in php however im unable to validate some UTF8 sources accurately (using mb_detect_encoding) - Cass picks up on bits of non-UTF8 compatible text that the php doesnt so its throwing exceptions. Figured id set everything to bytestype to try and effectively turn off validation in Cass? Im using the following to try and build the CF: create column family subjects with column_type = 'Standard' and comparator = 'BytesType' and default_validation_class = 'BytesType' and key_validation_class = 'BytesType' and rows_cached = 200000.0 and row_cache_save_period = 0 and row_cache_keys_to_save = 2147483647 and keys_cached = 200000.0 and key_cache_save_period = 14400 and read_repair_chance = 1.0 and gc_grace = 864000 and min_compaction_threshold = 4 and max_compaction_threshold = 32 and replicate_on_write = true and row_cache_provider = 'SerializingCacheProvider' and compaction_strategy = 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy' and column_metadata=[{column_name: subject, validation_class: BytesType, index_type: KEYS}]; Any help is greatly appreciated! :) Cheers Sam