counter_inc
メソッドが動作しない理由はわかりませんが、エミュレータは開発実インスタンスを指しています。Bigtable GoogleハッピーベースのPython KeyErrorがcounter_incを実行しようとしています
スニペット:
from google.cloud import bigtable
from google.cloud import happybase
client = bigtable.Client(project='robbie-ai', admin=True)
instance = client.instance('visio-bt-staging')
connection = happybase.Connection(instance=instance)
connection.create_table('commons_TestBTModelsTable', {'family': None, 'counters': None})
table = connection.table('commons_TestBTModelsTable')
table.put('row-key1', {'family:surname': 'Trump'})
print("Getting row 'row-key1': {}".format(table.row(b'row-key1')))
table.counter_inc(b'row1', b'counters:qual1')
私はtable.counter_inc(b'row1', 'counters:qual1')
を行う場合と全く同じです。
スクリプトとして実行:
[email protected]:/app# python scripts/counters.py
Getting row 'row-key1': {b'family:surname': b'Trump'}
Traceback (most recent call last):
File "scripts/counters.py", line 28, in <module>
table.counter_inc(b'row1', b'counters:qual1')
File "/usr/local/lib/python3.5/dist-packages/google/cloud/happybase/table.py", line 591, in counter_inc
column_cells = modified_cells[column_family_id][column_qualifier]
KeyError: 'qual1'
それはバグですか、このスニペットは問題がありますか?あなたは、分割から得た1がSTRにデコードしている間に決定的にバグ