아래 코드를 사용하여 타임 스탬프가있는 Google Spanner 테이블에서 읽으려고합니다. , 종료 RPC의 < _Rendezvous (StatusCode.DEADLINE_EXCEEDED :스패너가 타임 스탬프로 읽지 못했습니다.
grpc._channel._Rendezvous : 나는 "스냅 샷"호출에 타임 스탬프를 설정하면
import datetime as dt from google.cloud.spanner.client import Client proj = 'my_project' inst = 'my_instance' db = 'my_database' datetime_now = dt.datetime.now() with Client(proj).instance(inst).database(db).snapshot(read_timestamp=datetime_now) as snapshot: # this fails #with Client(proj).instance(inst).database(db).snapshot() as snapshot: # this works result = snapshot.execute_sql('some SQL query') for row in result: print row
,이 오류 메시지가 아래에 반환 마감일을 초과했습니다.)>
그러나 "[...]. snapshot()"을 호출하면 테이블이 올바르게 읽혀집니다.
내 스크립트 또는 설치 문제로이 오류가 있습니까?
편집 : 그냥 파이썬 스패너 API의 최신 버전 아니 었 주목. 0.26에서 0.28로 업데이트 한 후에는 오류를 제기하기보다는 스크립트가 아무 것도 반환하지 않고 영원히 계속된다는 것을 제외하고는 똑같은 일이 발생합니다.
시계 동기화가 어렵습니다. 'read_timestamp' 대신에'max_staleness'를 사용할 것을 권합니다. 자세한 내용은 여기를 클릭하십시오. https://googlecloudplatform.github.io/google-cloud-python/stable/spanner/database-api.html#google.cloud.spanner.database.Database.snapshot –
감사합니다. . –