Skip to content

Commit 21df16d

Browse files
authored
impl(spanner): add a TODO concerning the resume_token protocol (googleapis#8526)
1 parent 29b002e commit 21df16d

1 file changed

Lines changed: 8 additions & 0 deletions

File tree

google/cloud/spanner/internal/partial_result_set_source.cc

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,14 @@ StatusOr<spanner::Row> PartialResultSetSource::NextRow() {
4545
return spanner::Row();
4646
}
4747

48+
// TODO(#8523): This assumes that we can yield a row as soon as we have
49+
// all of its columns, which would not be the case if we (1) want to be
50+
// able to resume interrupted streams, and (2) do not yet have a resume
51+
// token that is "past" the row. That is, we should not yield a row that
52+
// might be replayed. Given that we want to support resumption, for now
53+
// we assume we always have a resume token that is "past" any completed
54+
// row, but that needs to be verified.
55+
4856
while (buffer_.empty() || buffer_.size() < columns_->size()) {
4957
auto status = ReadFromStream();
5058
if (!status.ok()) {

0 commit comments

Comments
 (0)