카산드라를 테스트하기위한 테스트 프로그램을 작성했으며 데이터를 읽는 데 문제가있었습니다. 카산드라가 때때로 다른 열쇠를 가져가는 것 같습니다. 대신왜 카산드라는 바이트 키 (Lazyboy 포함)로 이상하게 작동합니까?
[email protected]:/mnt/hgfs/TestMX# python test.py
TestItem: {'test': 'foo'}
TestItem: {'test': 'foo'}
:
from lazyboy import *
from lazyboy.key import Key
import uuid
import random
class TestItemKey(Key):
def __init__(self, key=None):
Key.__init__(self, "TestMX", "TestCF", key)
class TestItem(record.Record):
def __init__(self, *args, **kwargs):
record.Record.__init__(self, *args, **kwargs)
self.key = TestItemKey(uuid.uuid1().bytes)
connection.add_pool('TestMX', ['localhost:9160'])
t1 = TestItem({'test':'foo'})
t1.key = TestItemKey(uuid.UUID('3cead15a-a54e-11df-87a2-000c298d2724').bytes)
t2 = TestItem({'test':'bar'})
t2.key = TestItemKey(uuid.UUID('3cebc15a-a54e-11df-87a2-000c298d2724').bytes)
t1.save()
t2.save()
print TestItem().load(t1.key.clone())
print TestItem().load(t2.key.clone())
다음
이 스크립트의 출력 (선택된 UUID가이 사람 일으키는 문제의 예입니다) : 여기
내 테스트 프로그램입니다 예상 결과 :[email protected]:/mnt/hgfs/TestMX# python test.py
TestItem: {'test': 'foo'}
TestItem: {'test': 'bar'}
스크립트가 보통 때때로되지 않은 다른 randomely-선택의 UUID와 잘 작동하지만, 617,451,515,
주 ...
저는 Lazyboy 대신 Pycassa로 시도했는데 정확한 결과와 함께 추가 할 것입니다. – Pierre
t1.key와 t2.key가 같거나 뭔가 근본적인 것이 누락 되었습니까? – Schildmeijer
그들은 매우 가깝지만 같은 것은 아닙니다. 첫 번째는 '3cead ...', 두 번째는 '3cebc ...'입니다. – Pierre