Il mio scripting è python e cassandra è data stax community edition.pycassa TypeError: A str o unicode, impossibile inserire cassandra insert
TypeError: A str or unicode value was expected, but int was received instead (3902503)
questo è l'errore che sto ottenendo durante il tentativo di inserire in una famiglia di colonne cassandra.
il codice è simile:
for x in feed:
cf.insert(uuid.uuid4(), x)
x è un semplice array sotto forma di "{chiave: valore}"
Il log degli errori suggerisce:
Traceback (most recent call last):
File "C:\Users\me\Desktop\pro1\src\pro1.py", line 73, in <module>
str("swf"): str("aws")
File "c:\Python27\lib\site-packages\pycassa\columnfamily.py", line 969, in insert
mut_list = self._make_mutation_list(columns, timestamp, ttl)
File "c:\Python27\lib\site-packages\pycassa\columnfamily.py", line 504, in _make_mutation_list
columns.iteritems())
File "c:\Python27\lib\site-packages\pycassa\columnfamily.py", line 503, in <lambda>
return map(lambda (c, v): Mutation(self._make_cosc(_pack_name(c), _pack_value(v, c), timestamp, ttl)),
File "c:\Python27\lib\site-packages\pycassa\columnfamily.py", line 462, in _pack_value
return packer(value)
File "c:\Python27\lib\site-packages\pycassa\marshal.py", line 231, in pack_bytes
% (v.__class__.__name__, str(v)))
TypeError: A str or unicode value was expected, but int was received instead (3902503)
Sembra essere qualcosa di molto piccolo mi manca qui ... beh ecco perché sono venuto qui per chiedere esperti!
tuo traceback non corrisponde il tuo esempio di codice; Vedo una riga parziale di 'str (" swf "): str (" aws ")'. –
Sono d'accordo, cf.insert() contiene swf, titolo e descrizione. Poiché l'errore riconduce a "swf", ho pensato che ci fosse qualcosa di sbagliato in questo. – yuvrajm
Hai ricontrollato il tuo valore? Chiaramente qualcosa contiene un intero, non una stringa. –