cassandra 3.X асинхронная запись с последующим чтением, не получая строки, но командная строка возвращается только один раз - драйвер Python - PullRequest
0 голосов
/ 27 февраля 2019

Я столкнулся с проблемой асинхронной записи и чтения с предложением где.Но если я выполняю синхронизацию, то все в порядке.

Я установил время сеанса для большого интервала, но не повезло.Тем не менее я попытаюсь.

1. Командная строка Python - это один глобальный объект сеанса как для чтения, так и для записи.

Случай 1: выбор * из test.dummytable;# Это подготовительное утверждение, как в сценарии и под одним объектом сеанса

>>> CQLStrcnt="select * from test.dummytbl;
>>> nRows=session.execute(CQLStrcnt)
for rows in nRows:
...     print rows

1-й раз: # Примечание - Вывести все строки

Row (key = u'key8557 ', col1 = u'a', col2 = u'b ', msg = [u'Bye', u'and ', u'Этот фрагмент кода работает быстрее, но выбор не повторяет набор строк']) Row (key = u'key7597 ', col1 = u'a ', col2 = u'b', msg = [u'Bye ', u'and', u 'Этот фрагмент кода работает быстрее, но выбор не повторяет набор строк']) Row (key =u'key11352 ', col1 = u'a', col2 = u'b ', msg = [u'Bye', u'and ', u'Эта часть кода работает быстрее, но выбор не повторяет набор строк'])Row (key = u'key6802 ', col1 = u'a', col2 = u'b ', msg = [u'Bye', u'and ', u'Этот фрагмент кода работает быстрее, но выбор не возвращает строкуset ']) ......

2-й раз: # Примечание - Выход None и беззвучно выходит

>>>>>for rows in nRows:
...     print rows

Случай 2: select * from test.dummytbl where key='key11961';

>>> CQLStrcnt="select * from test.dummytbl where key='key11961';
nRows=session.execute(CQLStrcnt)
for rows in nRows:
...     print rows

1-й раз: # Примечание - Вывести определенную строку строки (key = u'key11961 ', col1 = u'a', col2 = u'b ', msg = [u'Bye', u'and ', u'Thisфрагмент кода работает быстрее, но выбор не возвращает набор строк '])

2-й раз: # Примечание - вывод Nодин и молча выходит

>>>>> for rows in nRows:
...     print rows
Python Script: он молча выходит

................. .................

`prepare = session.prepare (" "" INSERT INTO dummytbl (key, col1, col2, msg) ЗНАЧЕНИЯ (?,?,?,?) "" ")

log.info("Setting consitency for at least one respons ...... on batch-prepare")
batch=BatchStatement(consistency_level=ConsistencyLevel.ONE)

pStatment=""
for i in range(15000):
    batch.add(prepared,("key%d" % i,'a','b',['Bye','and','This piece of code is faster but select does not retur row set']) )

pStatment=session.execute_async(batch)

`

................. .................

CQLStrcnt="select * from test.dummytbl;
nRows=session.execute(CQLStrcnt)
for rows in nRows:
print rows

Нужна помощь по этому парню.

...