У меня есть работающий кластер cassandra с tarball-установкой apache Cassandra 3.7 в режиме одного центра обработки данных.
Проблема CQLSH: когда я описываю семейство столбцов, я вижу, что имена столбцов отображаются правильно, но когда я делаю выбор в таблице, я вижу, что все имена столбцов имеют префикс 'u':
cassandra@cqlsh> describe cassandra_test.employee;
CREATE TABLE cassandra_test.employee (
employee_id text PRIMARY KEY,
employee_grp_cd text,
employee mbrp_id text )
WITH 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', 'max threshold': '32', emin_threshold': '4'}
AND compression = fichunk_length_in_kb1: '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'l
AND crc_check_chance = 1.0
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_indexinterval = 128
AND read_repair_chance = 0.0
AND speculative_retry = '99PERCENTILE';
cassandra@cqlsh> select * from cassandra_test.employee;
u'employee_id' | u'employee_grp_cd' | u'employee_mbrp_id'
---------------+--------------------+----------------------
(0 rows)
Failed to format value u'employee_id' : 'unicode' object has no attribute 'formatter'
Failed to format value u'employee_grp_cd' : 'unicode' object has no attribute 'formatter' 1 more decoding errors suppressed. cassandra@cqlsh> 0
1 more decoding errors suppressed.
Когда я вставляю записи и делаю выбор, вставленные значения также имеют префикс 'u'. Я сделал несколько попыток, и каждая связанная ссылка, похоже, указывает на проблему с python.
Моя текущая версия Python: Python 2.7.11 :: Anaconda 4.0.0 (64-разрядная версия), и я сделал pip install cassandra-driver
, чтобы установить все недостающие зависимости для драйвера Cassandra. Это не решило проблему.
Любая помощь высоко ценится. Я потратил немало времени, чтобы выяснить, как это исправить, и надеюсь, что смогу получить ответ здесь :)
cqlsh
с этой средой выполнения Python. Это немного сбивает с толку, потому что обычно эту ошибку можно увидеть с Python ‹ 2.6, ноcqlsh
в этом случае не запустится. Можешь попробоватьcqlsh --debug -e "select * from cassandra_test.employee;"
? - person Adam Holmberg   schedule 08.03.2017